Commit graph

2,716 commits

Author SHA1 Message Date
Jeff Parsons
3d36682396 Cleaned up endBurst() and changed yieldCPU() to stop ending bursts prematurely (it only sets the new yield flag now) 2017-08-14 10:36:10 -07:00
Jeff Parsons
1226392d9f Work-around to make sound for iOS devices a little more robust without having to do anything iOS-specific 2017-08-12 15:08:30 -07:00
Jeff Parsons
9807bd9f15 Still not sure if all web browsers conform with the latest Web Audio properties and methods 2017-08-12 12:55:53 -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
d8e329b12c Using some things I learned from @stevekinney today, I've tweaked the PC speaker code to no longer stop() and destroy oscillators every time the speaker is toggled off; instead, the ChipSet component now uses one oscillator for the life of the machine (created the first time the PC makes a sound) and simply zeros/sets the gain as needed. We still have the "easing" issue to deal with (whenever the PC the makes sudden changes to the frequency) and I still can't use dot names for any of the AudioContext properties (until I either update the Closure Compiler or manually add an externs file for the AudioContext interfaces). 2017-08-11 20:05:48 -07:00
Jeff Parsons
cce8f6a48d Added dBASE III copy-protection notes 2017-08-11 13:30:19 -07:00
Jeff Parsons
f168e19c8c Added dBASE III copy-protection notes 2017-08-11 13:28:54 -07:00
Jeff Parsons
00a8b50c57 Updated README to reflect that WordStar has been moved to Other... 2017-08-11 09:39:10 -07:00
Jeff Parsons
abc4f7de6f Updated README to reflect that WordStar has been moved to Other... 2017-08-09 23:31:22 -07:00
Jeff Parsons
8214446363 Added dBASE II and dBASE III disks to the project 2017-08-09 23:11:18 -07:00
Jeff Parsons
d5390393ab Updated disk READMEs 2017-08-09 18:34:59 -07:00
Jeff Parsons
29be56667d Added more versions of Microsoft Mouse software (includes: v2.0, v4.0, v5.00, v6.b4, v6.14, v6.24) 2017-08-09 16:11:35 -07:00
Jeff Parsons
8523800d8c When a key is required to dismiss a PCx86 machine diagnostics screen, make sure that key isn't also passed on to the machine 2017-08-09 12:44:54 -07:00
Jeff Parsons
f5957fcfdb Fixed typo 2017-08-09 11:45:39 -07:00
Jeff Parsons
dcc6880717 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:43:27 -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
7f973a03b9 Smoothed out PCx86 dynamic CPU speed recalculation by no longer truncating the current cycle multiplier 2017-08-08 19:25:08 -07:00
Jeff Parsons
591d6b85d5 Found another way to fix bogus ".call" inspection warnings 2017-08-08 18:02:04 -07:00
Jeff Parsons
2fc2872386 Fixed a few lingering code inspection warnings and typos 2017-08-08 17:30:28 -07:00
Jeff Parsons
f6fe72f43f Cleaned up the SerialPort header a bit 2017-08-08 17:12:20 -07:00
Jeff Parsons
225bb00d48 Updated the website to version 1.36.1 (the first version of PCx86 with new improved CPU-driven timer services) 2017-08-07 19:47:30 -07:00
Jeff Parsons
eb79d0e87e Working on version 1.36.1 v1.36.1 2017-08-07 19:33:26 -07:00
Jeff Parsons
1d50200df8 Changed X86CPU.reset() to not stop the CPU on a RESET (you can still force HALT after RESET by simply halting the machine manually before clicking RESET); moreover, by not calling stopCPU() in the X86CPU.reset() handler, we avoid problems in the CPU's speed recalculation logic (for example, if you repeatedly clicked RESET on a running machine, speed variables would get out of sync) 2017-08-07 19:22:22 -07:00
Jeff Parsons
bf5e1faf67 Changed X86CPU.reset() to not stop the CPU on a RESET (you can still force HALT after RESET by simply halting the machine manually before clicking RESET); moreover, by not calling stopCPU() in the X86CPU.reset() handler, we avoid problems in the CPU's speed recalculation logic (for example, if you repeatedly clicked RESET on a running machine, speed variables would get out of sync) 2017-08-07 19:21:15 -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
c397937a87 Eliminated an outdated TODO 2017-08-03 08:18:35 -07:00
Jeff Parsons
7fbc84195b Updated TopView READMEs 2017-08-03 08:11:05 -07:00
Jeff Parsons
d0052eb7cd Minor PCx86 Debugger-related improvements 2017-08-02 19:02:23 -07:00
Jeff Parsons
aefe2b4b5b Improved logging of strings with embedded carriage returns 2017-08-02 10:58:21 -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 Parsons
55cf71ccae Laid the groundwork for bring PCx86 up-to-date with timer functionality matching PC8080 and PDPjs (new timer services added) 2017-08-01 14:27:26 -07:00
Jeff Parsons
072b8fa2df Laid the groundwork for bring PCx86 up-to-date with timer functionality matching PC8080 and PDPjs (new timer services added) 2017-08-01 14:26:52 -07:00
Jeff Parsons
d8804faba0 Fixed soft keyboard controls for both iOS and non-iOS browsers, and updated the TopView 1.01 page 2017-07-25 18:50:14 -07:00
Jeff Parsons
299948fa1f Changed scripts to machineScripts (for clarity) 2017-07-25 13:46:38 -07:00
Jeff Parsons
30df38738c Added support for automatic scripts (ie, autoScript) 2017-07-25 12:52:36 -07:00
Jeff Parsons
1b987df6e2 Added more scripting support to PCx86 (eg, for loading disks, typing keys, and waiting for both to finish) 2017-07-25 10:30:29 -07:00
Jeff Parsons
f391d7b4b5 Updated the Infocom machine config to disable CGA flicker (less realistic but also less annoying) 2017-07-24 21:12:25 -07:00
Jeff Parsons
fbb07ae682 Added the *scaleMouse* property so that host mouse coordinates can undergo an optional scaling transformation (default is 1.0) 2017-07-24 21:11:25 -07:00
Jeff
fe74e12e40 Added the *scaleMouse* property so that host mouse coordinates can undergo an optional scaling transformation (default is 1.0) 2017-07-24 18:47:10 -07:00
Jeff
c2d14f0d33 Added TopView 1.10 disk image 2017-07-24 10:24:45 -07:00
Jeff
e0827c536f Updated PC Magazine Utilities diskettes 2017-07-23 18:57:34 -07:00
Jeff
4fab49eca9 Updated PC Magazine Utilities diskettes 2017-07-23 17:53:09 -07:00
Jeff
2da0f5904d Added PC Magazine Utilities diskettes 2017-07-23 17:46:50 -07:00
Jeff
3def72cbfe Updated the SPEEDUP blog post with PC Magazine's followup article 2017-07-23 16:04:39 -07:00
Jeff
6a3f7f4a5d Added support for segment wrap-around in 8086/8088 real-mode (all stack operations, instruction fetches, and operand accesses should wrap now); real-mode wrap-around on newer processors should trigger a GP fault instead 2017-07-23 14:59:26 -07:00
Jeff
d7dd746e2c New blog post (RetroReview: SPEEDUP) 2017-07-22 23:23:33 -07:00
Jeff
16df78e654 New blog post (RetroReview: SPEEDUP) 2017-07-22 23:21:00 -07:00
Jeff
a6668e34bb Fixed serial port transmitter interrupts, and added a new blog post (RetroReview: SPEEDUP) 2017-07-22 23:09:26 -07:00