Commit Graph

118 Commits

Author SHA1 Message Date
Brad Grantham
65d8f90cf7 on reset turn floppy off; MAINboard resets all boards; fix #47 2020-12-14 19:48:17 -08:00
Brad Grantham
13ece22f09 only load new track when read 2020-12-13 15:44:22 -08:00
Brad Grantham
7345f28aa1 make head state be per-drive 2020-12-12 10:17:13 -08:00
Brad Grantham
8f04f04543 read tracks from disk on demand 2020-12-12 09:44:44 -08:00
Brad Grantham
b99576c1e0 read sectors from disk instead of reading whole floppy 2020-12-12 08:38:58 -08:00
Brad Grantham
d20991ae8e use a function to nybblize sector 2020-12-11 22:02:52 -08:00
Brad Grantham
ca58c87abf make some consts constexpr and int for warnings 2020-12-10 17:19:39 -08:00
Brad Grantham
2022b375bd more const char*, only issue mode change if there was a change 2020-12-06 20:08:03 -08:00
Brad Grantham
38f64dcd47 disable LK_HACK 2020-12-05 17:31:46 -08:00
Brad Grantham
c81a6a8dce Apply some fixes from Rocinante port
More const on char*s
Remove virtual from MAINboard read and write and just call them directly
Move up regions slightly so they might perform better
2020-12-05 17:19:21 -08:00
Brad Grantham
fd1e15a595 add clock text box 2019-02-18 08:11:22 -08:00
Brad Grantham
e1ea979006 remove old comment 2019-02-10 22:54:53 -08:00
Lawrence Kesteloot
c22645848a Fix usage message. 2018-09-25 18:22:00 -07:00
Brad Grantham
1dc3fe3df8 extract CPU6502 into single header implementation 2018-09-08 17:36:16 -07:00
Brad Grantham
5548039900 make BUS member of CPU6502 instead of parameter of methods 2018-09-08 17:23:38 -07:00
Brad Grantham
5f1a3be90d templatize CPU6502 in anticipation of single-header 2018-09-08 17:18:25 -07:00
Brad Grantham
4e305cb6ad templatize CPU6502 in anticipation of single-header 2018-09-08 17:17:09 -07:00
Brad Grantham
53e8b802c4
Merge pull request #34 from bradgrantham/gif
Merge recording animated GIFs facility from gif branch
2018-08-10 23:47:51 -07:00
Brad Grantham
8e47791e12 Fix BRA imm instruction, add 0xD2 - CMP (zpg)
I thought 0x80 was a weird NOP imm, but it's BRA.

Implement 0xD2 - CMP (zpg)

Move all 65C02 instruction implementations together

Update disassembler for 0xD2 - CMP (zpg)
2018-08-10 23:25:20 -07:00
Brad Grantham
2c437b27da record at 50ms simulation per frame
Change bare "5" to more descriptive "recording_frame_duration_hundredths".

Create APPLE2Einterface events that allow interface to limit main loop speed.

Implement rate limiting on start_record and release limiting on stop_record.

During recording, simulation will not run at clock rate.
2018-08-08 16:18:16 -07:00
Brad Grantham
8567ad7244 make CPU6502::cycles[] class-static 2018-08-08 12:35:38 -07:00
Lawrence Kesteloot
b5918819af Fix off-by-two bug with LK_HACK. 2018-08-07 12:27:46 -07:00
Brad Grantham
49804018cc Asert if cycles[] is not set for insn 2018-08-07 12:21:43 -07:00
Brad Grantham
183aea95fb Add instruction cycle count for ORA (ind) 2018-08-06 00:39:11 -07:00
Brad Grantham
e938af1349 implement STZ zpg and PHX 2018-08-06 00:36:43 -07:00
Lawrence Kesteloot
7d346a06b3 Fix overflow in LK_HACK. 2018-08-06 00:18:40 -07:00
Brad Grantham
3c1017c60b implement STZ abs, fix -debugger 2018-08-06 00:15:58 -07:00
Lawrence Kesteloot
43448014b1 Add ORA (ind) 65C02 instructions. 2018-08-05 23:17:03 -07:00
Brad Grantham
53f231573e ameliorate popping somewhat 2018-08-03 23:58:20 -07:00
Lawrence Kesteloot
dcbea11c33 Pass base address in LK_HACK. 2018-08-03 14:27:00 -07:00
Brad Grantham
37864dea0f mask bus access to 16-bit, add -mute option 2018-08-02 16:49:51 -07:00
Lawrence Kesteloot
bfe64192a3 Parse ld65 map file for symbolic debugging. 2018-08-02 16:07:48 -07:00
Lawrence Kesteloot
14a84bdb6a Add LK hack to disassemble bytes passed at 0xBFFF. 2018-08-02 16:07:48 -07:00
Brad Grantham
4da1e4a2c7 undo enabling of TEXT on startup 2018-08-01 12:00:18 -07:00
Brad Grantham
eaffc29115 fix regular mode changes, disable prints 2018-08-01 11:26:49 -07:00
Brad Grantham
e09d49c323 also send current clock to iterate 2018-08-01 09:29:41 -07:00
Brad Grantham
48be02beb0 add initial support for recording softswitch history by byte clock 2018-08-01 00:42:31 -07:00
Brad Grantham
55bbd69e28 move to per-clock mode setting history within frame
delete set_switches()

Pass history of mode settings to iterate()
2018-07-31 15:33:51 -07:00
Brad Grantham
114af20792 fix hgr scanout addresses, modulo 0x2000 2018-07-31 14:51:51 -07:00
Brad Grantham
9d5d4b4a35 initial floating bus implementation 2018-07-31 14:31:36 -07:00
Brad Grantham
bdcf50f890 implement 0xB2, LDA(zp) 2018-07-31 13:42:09 -07:00
Brad Grantham
992864d5a0 remove debug print for $6000 2018-07-31 12:09:35 -07:00
Brad Grantham
6f92ffa096 add ADC(zpg) 2018-07-31 12:07:42 -07:00
Brad Grantham
ea3930a8f0 change clock to be 14mhz, variable for CPU 2018-07-30 16:01:39 -07:00
Brad Grantham
3bf5f5ed6a Default to TEXT 2018-07-28 12:31:50 -07:00
Brad Grantham
c3adb3abe6 add INC, DEC, and STA (zpg) 2018-07-28 02:50:09 -07:00
Brad Grantham
17488ca7f7 send left-arrow by default when pressing backspace (delete) 2018-07-20 19:37:49 -07:00
Brad Grantham
3dbc37ba35 Port to Linux and fix gcc warnings
Introduce GLEW for GL extension management

Fix warnings about "&" used in logical-AND with precedence likely not matching programmer's intent

Fix a GL shader type incompatibility uint vs int in lores shader

Add Makefile.linux
2018-07-20 16:09:59 -07:00
Brad Grantham
2e7f809bc9 Fix compile errors caused by moving to range for 2017-01-04 22:09:31 -08:00
Brad Grantham
30ec998252 Use range-for on containers 2017-01-03 09:41:38 -08:00