Commit graph pcjs/modules/pc8080/lib
Author SHA1 Message Date
Jeff Parsons
244f0dba32 Cleaned up the run loop, less complicated now, and video updates can drive themselves thanks to the new CPU timer functions 2016-08-23 22:41:45 -07:00
Jeff Parsons
97f8e87ca3 Added some iOS usability improvements (related to soft keys/buttons and annoying focus/zoom changes) 2016-08-23 16:08:48 -07:00
Jeff Parsons
2b24e710d2 Fixed the Computer updateFocus() interface to keep the page stable unless fScroll is explicitly set 2016-08-23 14:59:06 -07:00
Jeff Parsons
c1b34a87ed Immunized cursor blink rate from changes to CPU speed 2016-08-23 12:52:11 -07:00
Jeff Parsons
702b9d36c7 Optimized PC8080's innermost CPU execution loop 2016-08-22 17:17:14 -07:00
Jeff Parsons
bca19fd8ed Added proper clocking of VT100 keyboard UART, allowing us to restore the proper CPU speed (2.7Mhz) and maintain the correct cursor blink rate 2016-08-22 09:14:34 -07:00
Jeff Parsons
6410ae068c Updated information about VT100 factory defaults 2016-08-21 09:56:44 -07:00
Jeff Parsons
6a5e18d493 Working on next release (v1.24.1): first change is enabling smooth scrolling by default 2016-08-19 16:10:48 -07:00
Jeff Parsons
23e78b971c Picked up all the last-minute changes from the gh-pages branch (where I discovered a race condition between machines) 2016-08-19 13:03:30 -07:00
Jeff Parsons
ff46c1d240 Updated receiveData() to always return true in both PCx86 and PC8080, since both machines are buffering all the incoming data anyway (since we still don't have any flow-control interfaces yet) 2016-08-19 08:42:33 -07:00
Jeff Parsons
b52e794997 Added a (temporary) auto-XON hack to the VT100's SerialPort component to prevent ugly buffer overflows when a PC is shoveling the data in too fast (to be replaced later with real flow-control interfaces) 2016-08-18 18:49:01 -07:00
Jeff Parsons
5ed8f13840 A (PC8080) VT100 can now connect to a (PCx86) IBM PC AT; only problem seems to be flow control now.
Also, each PCjs debugger can now be independently accessed from an external debugger (eg, "pcx86('ver')" or "pc8080('ver')"); the global '$' symbol is no longer used for debugger access.
TODO: There are still many places where GLOBALVAR should be replaced with PCX86.GLOBALVAR or PC8080.GLOBALVAR as appropriate (which I've finally started doing in each debugger.js file).
2016-08-18 16:46:34 -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
f0509bc5d1 Successfully running PCx86 and PC8080 machines on the same page now 2016-08-18 10:29:24 -07:00
Jeff Parsons
145ec9d125 Starting on v1.24.0; first change: support for encoding ESC characters in SerialPort test strings (support which perhaps should eventually be moved into getComponentParms() instead) 2016-08-17 19:09:23 -07:00
Jeff Parsons
9d289b54da Dual (connected) terminal configs should be working better, now that both transmitted and received data is clocked according to their respective baud rates 2016-08-17 15:42:02 -07:00
Jeff Parsons
140e1cf094 Adding clocking mechanism for serial data transmission 2016-08-17 14:09:02 -07:00
Jeff Parsons
99023617fd Fixed lost 8080 interrupts, and added new CPU-driven setTimer() functionality 2016-08-17 11:58:01 -07:00
Jeff Parsons
12dad7291c Smooth-scroll fix for edge case where scroll offset has returned to zero BUT buffer contents haven't actually been scrolled yet 2016-08-16 15:40:31 -07:00
Jeff Parsons
81239cdbbe Dual VT100 bi-directional communication is now limping along 2016-08-16 11:34:11 -07:00
Jeff Parsons
cf24023d5d Enabled smooth scrolling, connected SerialPort UART transmitter status to the ChipSet FLAGS buffer (matching how the Keyboard UART transmitter status is connected), enabled binding of terminal I/O to the Control Panel output window (if any), and added simulation of received data at the programmed baud rate (but a better solution has been noted and needs to be implemented) 2016-08-16 09:34:41 -07:00
Jeff Parsons
8cb79257c9 Spiffed up the VT100 demo pages 2016-08-15 15:00:36 -07:00
Jeff Parsons
762ef22545 Added TEST control to exercise the VT100's 8251A UART (um, excuse me, the PUSART -- an awful acronym) 2016-08-15 14:19:06 -07:00
Jeff Parsons
0ffc09083d Don't print Video messages unless enabled (use the Debugger "m video on" command) 2016-08-15 12:11:37 -07:00
Jeff Parsons
aa08c7a94b VT100 supports both 80-column and 132-column modes now 2016-08-15 12:06:30 -07:00
Jeff Parsons
e516070375 Added Video callout to make resolutions adjustments (eg, from 80-column mode to 132-column mode); work in Video component ready to begin 2016-08-15 10:49:04 -07:00
Jeff Parsons
a6376d3e8b Fixed LOCAL/ONLINE LED 2016-08-14 22:05:59 -07:00
Jeff Parsons
8d9d6d4e50 Fixed VT100 KEYMAP 2016-08-14 12:19:06 -07:00
Jeff Parsons
e7324a5c6a VT100 SET-UP screen is accessible now 2016-08-14 10:52:24 -07:00
Jeff Parsons
422c89f93f Updated VT100 keymap 2016-08-09 16:56:03 -07:00
Jeff Parsons
c78317c056 All Keyboard configs need to define KEYMAP, even if it's empty 2016-08-09 12:51:53 -07:00
Jeff Parsons
18b737408e Fixed initialization of bFlagsBuffer for VT100 2016-08-09 10:31:05 -07:00
Jeff Parsons
6afc652d30 Added predefined NVR data for VT100 2016-08-09 10:24:15 -07:00
Jeff Parsons
3ebe23f251 Fix SI1978 video format detection 2016-08-08 18:07:42 -07:00
Jeff Parsons
d31bfb0e6e Added scaffolding for PC8080 SerialPort 2016-08-08 15:25:57 -07:00
Jeff Parsons
f7464dd182 Support for VT100 dot stretching 2016-08-08 11:19:06 -07:00
Jeff Parsons
37593a107d Added VT100 keymap 2016-08-07 09:30:56 -07:00
Jeff Parsons
276c36334e Added Debugger "int" command to manually request interrupts 2016-08-06 13:39:46 -07:00
Jeff Parsons
65ecb282ad More VT100 NVR support 2016-08-05 21:44:27 -07:00
Jeff Parsons
093b19bce3 Added some symbolic info to VT100.json 2016-08-04 15:01:06 -07:00
Jeff Parsons
f3d8aca9c3 Leave the VT100 display test code enabled in all builds for now 2016-08-04 09:46:34 -07:00
Jeff Parsons
c206669589 Added VT100 ROM disassembly 2016-08-03 15:11:59 -07:00
Jeff Parsons
fc72c2f73d Took a better stab at simulating the VT100's LBA7 signal (used by the NVR chip) 2016-08-03 13:33:19 -07:00
Jeff Parsons
e82a1d5b52 VT100 video buffer bias fixed 2016-08-02 18:53:01 -07:00
Jeff Parsons
d8305b3a27 DC011/DC012 notes 2016-08-02 17:09:07 -07:00
Jeff Parsons
5f048a0688 Prevent display updates until DC011 starts generating LBAs (Line Buffer Addresses) 2016-08-02 17:06:13 -07:00
Jeff Parsons
c59678f37d Fixed checkSoftKeysToRelease(), although the iOS soft keyboard still sucks 2016-08-02 15:42:41 -07:00
Jeff Parsons
999828da4e Added LED support to VT100 keyboard 2016-08-02 14:44:31 -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
843d24c627 Scaffolding for VT100 ChipSet 2016-08-02 06:50:25 -07:00