Commit Graph

43 Commits

Author SHA1 Message Date
Kelvin Sherlock 77ec62a091 at 2.6mhz, 9600baud, I was experiencing lost characters during line scroll or screen clear. To compensate, replace modem polling with asynchronous/interrupt-based code. Up to 256 bytes of modem data can be buffered.
Also, enable modem, vt100 as default

Also, erase screen before switching to 80-column mode to prevent unsightly flashes.
2021-10-24 20:13:06 -04:00
Kelvin Sherlock 5a1f0f6ffc finish cda box. 2021-10-23 14:53:35 -04:00
Kelvin Sherlock 26ceb7aa50 start of a CDA to control vt100 parameters. 2021-10-23 12:25:20 -04:00
Kelvin Sherlock 42d38bfa77 typo. 2021-10-23 12:24:36 -04:00
Kelvin Sherlock f13947a9c2 reformat scc magic constants 2021-10-17 19:33:28 -04:00
Kelvin Sherlock 892aed32f4 commentary. 2021-10-17 16:51:41 -04:00
Kelvin Sherlock 31394e84c4 backspace in column 0 was falling through to tab. 2021-10-03 16:09:39 -04:00
Kelvin Sherlock 6c8da61822 ^G beep support. uses ensoniq to match the vt100 beep. 2021-10-03 16:09:20 -04:00
Kelvin Sherlock 8d0f3b6496 use iigs equates 2021-10-03 16:08:23 -04:00
Kelvin Sherlock 2ae6964664 clobbering the screen holes is bad. The slot 4 mouse code stores config data in the screen holes. on ROM 1, ESC#8 (fill screen with 'E') would cause the slot 4 mouse to enable ADB mouse interrupts, which causes ProDOS to eventually error out with 255 unclaimed interrupts. 2021-09-27 17:55:10 -04:00
Kelvin Sherlock 2a8a409194 inverse support 2021-09-27 17:53:13 -04:00
Kelvin Sherlock 11d62bb333 disable cursor blink when CDA is active. 2021-09-26 19:46:10 -04:00
Kelvin Sherlock 39429e4e09 saved cursor 2021-09-26 19:45:44 -04:00
Kelvin Sherlock 9343302f9b status report (untested and incomplete) 2021-09-26 19:44:51 -04:00
Kelvin Sherlock dbf4e07b95 save restore cursor 2021-09-26 19:44:12 -04:00
Kelvin Sherlock 74d0ee7f07 based on testing, will not advance to column 80 unless DECAWM is set. 2021-09-25 21:28:12 -04:00
Kelvin Sherlock 45aea0293f arrows, screen erasing, region fixes 2021-09-25 21:27:48 -04:00
Kelvin Sherlock 7fbd54e791 csi wasn't resetting state at the end. 2021-09-25 13:57:27 -04:00
Kelvin Sherlock 121673badb bug fixes. 2021-09-25 11:05:06 -04:00
Kelvin Sherlock 63cac578bd vt52 might be more or less complete now. 2021-09-24 21:52:42 -04:00
Kelvin Sherlock 73722a2c02 enable cursor, some fixes 2021-09-23 23:43:25 -04:00
Kelvin Sherlock 1b2ac595d7 fixes 2021-09-23 17:16:10 -04:00
Kelvin Sherlock e9e969a56b tab/keypad fixes 2021-09-21 23:40:22 -04:00
Kelvin Sherlock 6abf2574e3 fixes. 2021-09-21 22:35:33 -04:00
Kelvin Sherlock dfdf608018 more code 2021-09-20 22:45:02 -04:00
Kelvin Sherlock d97b32a699 --ctrl, --upper, --lower, --digit flags. 2021-09-19 18:49:52 -04:00
Kelvin Sherlock 9c526bd762 more stuff 2021-09-19 18:49:29 -04:00
Kelvin Sherlock 6e0de284e0 more vt100 code
to handle DECAWM mode, bit 7 of x ($80 + 79) indicates a wrap is imminent, as opposed to just being in column 79. backspace, etc will drop back to column 78 (based on testing).
2021-09-17 19:50:56 -04:00
Kelvin Sherlock 42bef68d80 tab logic was off by one at the end. 2021-09-08 23:34:27 -04:00
Kelvin Sherlock 073813c199 more updates. 2021-09-05 17:04:52 -04:00
Kelvin Sherlock 1eaaf3aaaf more csi stuff 2021-09-04 20:27:42 -04:00
Kelvin Sherlock 492a3bfbec adding everything in progress, regardless of state. 2021-09-04 17:52:35 -04:00
Kelvin Sherlock dbda9761c5 full keypad support 2021-04-19 16:46:01 -04:00
Kelvin Sherlock 4823852c6b use 1-sec interrupt to flash the cursor. 2021-04-16 19:00:43 -04:00
Kelvin Sherlock 0285afc299 hook up the modem i/o. 2021-04-15 23:02:43 -04:00
Kelvin Sherlock 3eff019871 modem read/write/init code. 2021-04-14 22:54:07 -04:00
Kelvin Sherlock 874929a085 use the power of external constants to generate a block count. 2021-04-14 22:53:46 -04:00
Kelvin Sherlock f458f27860 cursor WIP 2021-04-06 23:44:25 -04:00
Kelvin Sherlock bbadb81a73 differentiate arrow keys vs control codes
in general, use 8-bit m/x.
2021-04-06 22:44:37 -04:00
Kelvin Sherlock ab12cc184d scroll up/down were reversed. 2021-04-04 22:54:53 -04:00
Kelvin Sherlock 147694ca66 page 1/2 logic was wrong. also update the text pointers when y changes. 2021-04-04 22:50:13 -04:00
Kelvin Sherlock 02acf18c04 move code to $6000 since $0800 interferes w/ text page 2. 2021-04-04 21:42:52 -04:00
Kelvin Sherlock 2efe25fdb9 terminal emulator experiments. 2021-04-04 20:22:43 -04:00