Commit graph pcjs/modules
Author SHA1 Message Date
Jeff Parsons
d4d3448fd5 Cleaned up how components print messages and how the Computer component overrides their notice/print/println methods (in preparation for new Computer overrides) 2017-06-28 10:53:44 -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
743511d5db Fixed recent problems introduced with my switch to addEventListener 2017-06-27 17:39:20 -07:00
Jeff Parsons
2cb0be42f0 Setting the stage for a resource status update mechanism 2017-06-27 16:01:00 -07:00
Jeff Parsons
754a4a4027 Machine states now save/restore the CPU's running state 2017-06-27 14:08:16 -07:00
Jeff Parsons
60aaeaa3bf More attempts to clean-up and reduce spurious alerts 2017-06-27 10:39:21 -07:00
Jeff Parsons
c20fe69872 More attempts to clean-up and reduce spurious alerts 2017-06-27 10:32:30 -07:00
Jeff Parsons
7aa689c745 Let's try to tone down the alerts when 'resume' is set to AUTO (1) 2017-06-27 09:54:59 -07:00
Jeff Parsons
7ca8fa18a1 Changed the onclick handlers for Keyboard CLICKCODES to let updateFocus() scroll the canvas into view as needed, because (at least on iOS) the code that tries prevent the page from scrolling has an annoying "jerking" side-effect; also fixed the old Node web server code that would install onclick handlers for disk images, triggering automatic conversion of JSON to IMG files 2017-06-26 11:05:01 -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
74617db812 Added DiskDump option to create mountable albeit unbootable disks: --forceBPB 2017-06-26 00:10:47 -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
7457e4e44f Changed the default page "exit" event handler from "onunload" to "pagehide" for iOS; hopefully, auto-resume machines will work better on mobile devices with that change 2017-06-25 08:32:27 -07:00
Jeff Parsons
a9b6feb377 Added more demo links on the home page, switched nearly all machines over to the complete diskette library (instead of just a few samples), added the ability to autoMount disketttes by name OR by path, and updated the Dual Display IBM PC with a newer version of DOS along with details on toggling the active display 2017-06-24 10:39:26 -07:00
Jeff Parsons
0b803b23f1 The computer's 'resume' property can now be passed in as a machine property, allowing pages to set and/or override it 2017-06-23 14:21:03 -07:00
Jeff Parsons
503cda40f7 Fixed machine array demos, by permitting machine IDs with hyphenated numeric suffixes to use a machine state file created with an unhyphenated machine ID, and added a demo of Windows 1.0 (the "Premiere Edition") 2017-06-23 14:00:27 -07:00
Jeff Parsons
113201fdb4 Added a cleaner solution for string replacement woes (ie, use Str.replace() instead of applying replace(/\$/g, "$$$$") to replacement strings) 2017-06-23 11:56:14 -07:00
Jeff Parsons
9ad03d66b3 parseAutoType() now leaves unrecognized $-sequences alone, instead of complaining about them 2017-06-23 10:23:07 -07:00
Jeff Parsons
5a22c9c59b Added more documentation regarding a REALLY annoying feature of JavaScript's string replace() method 2017-06-23 10:03:27 -07:00
Jeff Parsons
991e924d01 Added support for special autoType sequences (eg, $date and $time, which generate current date and time strings accepted by the PC-DOS date and time prompts) 2017-06-23 09:39:40 -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
a16f0586f4 More alert suppression changes 2017-06-22 16:36:51 -07:00
Jeff Parsons
11c6380eba Changed the alert style for restore failures 2017-06-22 16:06:19 -07:00
Jeff Parsons
1ce03810d3 Added support for (attempting to) suppress alerts that are meaningless if the user has aborted a machine by exiting the page before it was done loading 2017-06-22 15:53:34 -07:00
Jeff Parsons
9626fed7c2 Got rid of more app-specific demo machines (eg, DONKEY and WIN101); demos like that are more properly located in either the /apps or /disks folders (not /devices) 2017-06-22 12:03:52 -07:00
Jeff Parsons
80d2c3a334 Updated the manifest for the PC-DOS 1.00 disk (and shrank the JSON-encoded image a bit) 2017-06-21 19:20:54 -07:00
Jeff Parsons
6d527d2e46 Fixed size calculation in DiskDump's updateManifest() 2017-06-21 18:23:19 -07:00
Jeff Parsons
0b6cf80c88 Added buildManifestInfo() to populate disk manifests with file information when the files are available locally 2017-06-21 18:04:56 -07:00
Jeff Parsons
921fe75d7d autoType sequences no longer require double backslashes 2017-06-21 10:48:31 -07:00
Jeff Parsons
27b5e68e94 Added directory listings to PCSIG08 shareware README 2017-06-20 15:56:29 -07:00
Jeff Parsons
3d8b29223b The Disk component needed improved handling of disk images containing sectors with no 'data' or 'byte' arrays, the Disk restore code needed to stop complaining about disk mismatches when there was no previous disk, and Disk notice() and println() calls (including those made on its behalf; eg, from assert() calls) needed to be passed through to the controller that called it. Also, since the PC-DOS 1.x disk images were changed recently to include BPBs, machines that use those disks and have a machine state file needed their state file updated (eg, the DONKEY.BAS demo). 2017-06-20 10:24:07 -07:00
Jeff Parsons
96e3c4a060 Shareware diskette images added 2017-06-19 23:39:22 -07:00
Jeff Parsons
4e0d3d46da Fixed root directory check to ensure we don't select a disk format with too few root directory entries 2017-06-19 18:12:33 -07:00
Jeff Parsons
fb57561660 Fixed disk size calculation, ensuring that the disk size we select for a collection of files will actually work (including cluster overhead) 2017-06-19 16:06:58 -07:00
Jeff Parsons
187e09dd48 Automatically set the debugger property if an XML file in a "debugger" folder is selected (a convenience feature) 2017-06-19 09:00:03 -07:00
Jeff Parsons
5e0e5b7256 Updated the VisiCalc demo with an autoType sequence, a fresh disk image, new state file, and reference cards; also, updated autoType support to cancel autoType if a saved machine state is loaded 2017-06-19 08:48:10 -07:00
Jeff Parsons
6d019e7d9d Fixed autoMount overrides (formerly, machines that wanted to override the diskette autoMount settings for a machine would set "autoMount: ''", but that was a sledgehammer solution, especially when the goal was merely to prevent a diskette from being loaded in drive A; the preferred solution now is to set "autoMount: A: None", allowing the rest of the machine's autoMount settings, if any, to remain intact) 2017-06-17 21:30:03 -07:00
Jeff Parsons
cb43a6b360 Fixed cancellation of key injection whenever a soft key is pressed 2017-06-17 17:43:43 -07:00
Jeff Parsons
dbc21c3d85 autoType sequences must continue using double-backslashes for escaped characters 2017-06-17 11:23:38 -07:00
Jeff Parsons
fd3348f907 Added an autoType sequence to the RatBas demo 2017-06-17 10:56:22 -07:00
Jeff Parsons
b2d6e254ac DiskDump updates 2017-06-17 09:54:32 -07:00
Jeff Parsons
8f8082d170 Stop keyboard injection as soon as any real keyboard activity is detected 2017-06-15 16:48:12 -07:00
Jeff Parsons
f6fc85e225 New blog post: Adventures in Archiving 2017-06-15 14:39:08 -07:00
Jeff Parsons
37eab35953 Updated DiskDump comments 2017-06-15 09:19:47 -07:00
Jeff Parsons
af4750eefc Fixed autoType support in the PCx86 Keyboard component 2017-06-14 23:43:09 -07:00
Jeff Parsons
205df032fa Changed "keys" to "autoType" 2017-06-14 16:20:21 -07:00
Jeff Parsons
f8eeed79bf Changed the "Adventures in Math (1983)" demo to boot PC-DOS 1.0 -- which in turn required a 160Kb disk image for the game 2017-06-14 16:02:03 -07:00
Jeff Parsons
54fd1fad2a Fixed disk images produced by DiskDump when copying BAS files (they must be treated as binary files) 2017-06-14 11:18:57 -07:00
Jeff Parsons
b00b56212e Fixed optimized DiskDump output 2017-06-14 10:29:28 -07:00