Commit graph pcjs/modules/pcx86/lib/video.js
Author SHA1 Message Date
Jeff Parsons
601a6fa4a0 Added PCx86 support for autoType as a URL parameter 2017-09-25 11:21:37 -07:00
Jeff Parsons
33cabfc348 Found a work-around for preventing browsers from "easing" (aka de-zippering) the sound from an oscillator when its frequency is altered; also attempted to provide a mechanism for starting the audio in response to a user-generated (eg, touchstart) event, in an effort to enable PC speaker sounds on an iPad, but iOS devices are a real pain in the butt.... 2017-08-12 12:15:24 -07:00
Jeff Parsons
aac9a13328 Added 'diagnostics' (0, 1, or 2) and 'randomize' (0 or 1) PCx86 machine parameters to control diagnostic message display/prompting and video screen randomization, respectively 2017-08-09 11:42:38 -07:00
Jeff Parsons
2fc2872386 Fixed a few lingering code inspection warnings and typos 2017-08-08 17:30:28 -07:00
Jeff Parsons
e5a9b01dde Updated addTimer() interface to include an ID; cleaned up how the CPU tracks the base speed, current speed, and target speed 2017-08-07 13:58:41 -07:00
Jeff Parsons
f71b4d648c Updated more PCx86 components to use the CPU's timer functions to do callbacks 2017-08-05 11:01:28 -07:00
Jeff Parsons
13b0c23b0a Cleaned up PC8080 cross-browser full-screen support (matches PCx86 now) 2017-08-03 08:42:29 -07:00
Jeff Parsons
a3c252bf99 Cleaned up browser support for full-screen and pointer-locking in the Video component, and reduced the default scale factor for mouse movement events from 1.0 to 0.5, since modern screens are generally much higher resolution 2017-08-02 10:37:45 -07:00
Jeff
d8cdebae3b Fixed full-screen support (it was broken in the commit that enabled flicker support), and more tweaks to the stack limit checks in the pushWord() and popWord() functions 2017-07-20 20:00:31 -07:00
Jeff Parsons
88ab0cd106 Added new blog post: Flickery Fakery 2017-07-15 10:48:06 -07:00
Jeff Parsons
1760ae4ff9 Fixed a regression in EGA/VGA video page calculations (introduced by the other recent paging-related fixes) 2017-07-14 17:47:03 -07:00
Jeff Parsons
aa93903c1a Screen buffer wrap-around support (and some retrace tweaks) for the FlickerFree utility 2017-07-14 11:57:39 -07:00
Jeff Parsons
9e149dda6a Added support for a new "flicker" PCx86 Video property that simulates good old-fashioned CGA flicker -- don't leave home without it! 2017-07-12 16:22:26 -07:00
Jeff Parsons
51f8440e9b More diagnostic output improvements 2017-06-28 17:51:15 -07:00
Jeff Parsons
ea82dfec93 A machine's screen can now be used to display initialization (diagnostic) messages, up until the Computer component is ready to power/start the CPU, at which point control of the screen reverts to the Video component 2017-06-28 16:24:33 -07:00
Jeff Parsons
6f9bfa1950 Trying to do a better job of properly typing DOM objects 2017-06-28 09:41:01 -07:00
Jeff Parsons
2cb0be42f0 Setting the stage for a resource status update mechanism 2017-06-27 16:01:00 -07:00
Jeff Parsons
60aaeaa3bf More attempts to clean-up and reduce spurious alerts 2017-06-27 10:39:21 -07:00
Jeff Parsons
ed75397b83 Fixed an old annoying bug where a restored video card wouldn't properly display a blinking cursor; originally, I assumed it was a CRTC register restoration bug, but actually, some supporting variables (eg, cBlinks) were not getting initialized in both the reset() and restore() code paths. This is also a good time to remember that when an uninitialized array from some hardware state gets serialized and deserialized to/from JSON, the array is restored as a series of "null" values, not as "undefined" values, so it's best for any code checking for undefined values to use "== null" rather than "=== undefined". 2017-06-26 08:56:17 -07:00
Jeff Parsons
8d5c618b78 Updated page on COMPAQ DOS 1.11 2017-06-26 07:33:03 -07:00
Jeff Parsons
22a577e3ec Fixed KEYGRID support, so Rogue should be much more playable now on an iPad using the touchscreen 2017-06-25 10:18:08 -07:00
Jeff Parsons
0bd1be0df9 When a 'state' file is passed as a URL parameter, that's supposed to override a machine's 'resume' setting, but if a 'state' file is passed as EITHER a computer parameter (the original XML-based method) OR as a machine parameter (a newer method that allows a web page to override certain XML settings), that is NOT supposed to override the 'resume' setting. This restores the ability of the DONKEY.BAS demo to BOTH define a state file AND allow the machine to be suspended and resumed. Additionally, a new-ish Video card property (offStartAddr), which was originally added for the EGA/VGA, was not properly initialized for other cards, so when we restored the display of a suspended machine with a CGA, nothing would be displayed, due to lots of NaN buffer address calculations. 2017-06-22 17:45:36 -07:00
Jeff Parsons
822ab39cbe Unforked the shared modules -- ES6 is now the default 2017-01-31 13:50:55 -08:00
Jeff Parsons
323a42be37 Converted the rest of the PCjs machines to ES6 2017-01-31 11:44:33 -08:00
Jeff Parsons
3c376df42c Added iOS work-around for preventing unintentional page zooms when returning focus from a soft-key control to the normal keyboard control 2017-01-29 22:17:57 -08:00
Jeff Parsons
f87161f5d6 v1.32.0: The New Year Release 2016-12-30 15:56:01 -08:00
Jeff Parsons
d930b31c53 Some minor changes to make it easier to load a machine in the Node environment 2016-12-27 22:05:59 -08:00
Jeff Parsons
342f976e42 Fixed soft key processing for PC8080 (to fix an issue with the Epiphany browser on the elementary OS involving the VT100 SET-UP button) 2016-12-05 12:26:32 -08:00
Jeff Parsons
b1f8fca2d9 Re-enabled source maps, at least for the PDP-11 emulators (for now) 2016-10-14 09:30:17 -07:00
Jeff
e24d507aa2 Removed useless version numbers and dates from .js file headers 2016-10-06 16:22:24 -07:00
Jeff
dfe367f53d New improved I/O handler functions for the PDP-11 2016-09-21 12:44:25 -07:00
Jeff Parsons
e5c5a8e6be Some more Debugger factoring 2016-09-14 21:11:57 -07:00
Jeff Parsons
a8bb0c7841 First stab at factoring some common Debugger functionality into a shared component 2016-09-14 15:36:38 -07:00
Jeff Parsons
3bd02c7e19 Bumped version to 1.30 in honor of the PDP11 module that's being integrated, along with my first attempt to use a newer version of the Closure Compiler (ie, the JavaScript version), as well as giving Gulp a try -- although Gulp leaves just as bad a taste in my mouth as Grunt did 2016-09-13 15:33:17 -07:00
Jeff Parsons
183053a5ff Some pesky TABs slipped into my JavaScript (apologies to Richard at Pied Piper) 2016-08-22 09:45:45 -07:00
Jeff Parsons
c08d399d3f Moved Message categories into messages.js, and include defines.js as appropriate 2016-08-19 16:35:09 -07:00
Jeff Parsons
0e4ad76b94 Cross-machine serial port connections are only half-working (need to defer initConnection() until all machines on the page have initialized their bus) 2016-08-18 11:30:22 -07:00
Jeff Parsons
b25a9268a1 Added round LEDs to the UI (initially just for the VT100) 2016-08-02 11:02:00 -07:00
Jeff Parsons
a1e999e0c4 More PCjs/PCx86 disambiguation 2016-05-17 00:04:51 -07:00
Jeff Parsons
288f28055d Starting work on disambiguating PCjs the emulator from PCjs the project/website; the emulator will become PCx86 2016-05-16 20:55:32 -07:00
Renamed from modules/pcjs/lib/video.js (Browse further)