Commit Graph

64 Commits

Author SHA1 Message Date
Greg Hewgill
8827db4f6a command line options: --rom, --ram, --quiet 2011-08-15 22:47:16 +12:00
James Tauber
b9033a459a moved speaker buffer playing into the Speaker class 2011-08-15 02:30:28 -04:00
James Tauber
4dd414dea8 implemented speaker; not a bad hack :-) 2011-08-15 02:22:58 -04:00
James Tauber
be91422317 refactored memory access so cycle can be passed in 2011-08-15 00:21:20 -04:00
James Tauber
a92dcfecd3 implemented cycle calculation (except for page boundary crossing) 2011-08-14 23:50:34 -04:00
James Tauber
fcb1d585a0 added test_run to run CPU over a fragment of memory with no UI event handling (for automated testings) 2011-08-14 17:21:03 -04:00
James Tauber
bdc7b3a1e2 improved coloured for better whites 2011-08-14 03:52:56 -04:00
James Tauber
96ad7be994 fixed missing self 2011-08-13 09:49:14 -04:00
James Tauber
f3e0cef441 refactored memory so RAM just subclasses ROM, adding write_byte 2011-08-13 09:47:18 -04:00
James Tauber
6b163f1c2d whitespace nits 2011-08-13 09:43:55 -04:00
James Tauber
4c333ec125 added load_file to RAM 2011-08-13 09:41:45 -04:00
James Tauber
1be14989ca implemented HIRES colour 2011-08-13 09:11:46 -04:00
Greg Hewgill
5a8bf9a516 use pregenerated character bitmaps for text mode 2011-08-14 00:16:42 +12:00
James Tauber
e37c4dcbcd added HIRES graphics support based on code from ghewgill: 5aa8ca2caa 2011-08-13 07:52:17 -04:00
James Tauber
8f3b640393 always draw the spaces between scanlines 2011-08-13 07:24:23 -04:00
James Tauber
2f71ca9029 in mixed mode, assume monitor is colour 2011-08-13 07:22:10 -04:00
James Tauber
38736cf243 refactored update_text and update_lores into a single method 2011-08-13 07:06:11 -04:00
James Tauber
9e92bbba97 display full width of characters 2011-08-13 06:37:47 -04:00
James Tauber
588f913eb2 character heights are really 8 not 9 2011-08-13 06:36:21 -04:00
James Tauber
7cc9e8bdad implemented LORES graphics 2011-08-13 06:33:12 -04:00
James Tauber
4267732d7f make display optional (for testing) 2011-08-13 04:02:43 -04:00
James Tauber
d11aff5416 Merge branch 'master' into pygame 2011-08-13 04:00:56 -04:00
James Tauber
2e34927e7c got tests working again after memory refactor 2011-08-13 04:00:40 -04:00
James Tauber
9220ec85db ported to pygame and added bit-accurate characters 2011-08-13 03:52:07 -04:00
James Tauber
02714dff55 if writing to text screen row group 3 just skip instead of throwing exception 2011-08-07 07:03:50 -04:00
James Tauber
6525a27511 don't treat indices as signed in indexed addressing modes (ht: ghewgill) 2011-08-07 06:42:47 -04:00
James Tauber
4177ae0b25 consistent whitespace 2011-08-07 06:29:15 -04:00
James Tauber
772cdad470 Merge pull request #4 from ghewgill/master
add disassembler
2011-08-07 03:22:40 -07:00
James Tauber
c42c5044fc split memory handling into separate classes for RAM, ROM and Soft Switches 2011-08-07 06:19:49 -04:00
Greg Hewgill
267d0c8e06 add disassembler, enable for dump mode 2011-08-07 21:52:26 +12:00
Greg Hewgill
56e82f7cb6 don't allow writes to ROM area (this caused the ][+ ROM to hang on boot) 2011-08-07 21:31:01 +12:00
Greg Hewgill
c9dcee2f08 fix typos for zero_page_y_mode in instruction dispatch table 2011-08-07 20:30:44 +12:00
Greg Hewgill
1925846c3c fix dump() function so it works (when uncommented) 2011-08-07 19:32:39 +12:00
Greg Hewgill
dde4a83f85 fix typo in instruction table 2011-08-07 19:10:30 +12:00
Greg Hewgill
e961d7e00d simplify calculating signed values in adc and sbc 2011-08-07 18:33:42 +12:00
Greg Hewgill
5a8b25b771 only need to allocate 64k of memory 2011-08-07 18:17:24 +12:00
James Tauber
ce179a470f if curses can't write a character to the screen, just skip it; fixes #1 2011-08-07 01:34:10 -04:00
James Tauber
44099ae4f2 improved implementation of indirect bug across page boundaries including indexed indirects as well 2011-08-07 01:22:48 -04:00
James Tauber
c101868549 fixed error in BVS 2011-08-07 00:39:17 -04:00
James Tauber
36355def33 whitespace nit 2011-08-07 00:37:49 -04:00
James Tauber
f521fba883 properly use 0 and 1 not False and True for flags 2011-08-07 00:30:12 -04:00
James Tauber
777266f8e1 implemented non-accumulator version of ROR 2011-08-07 00:24:25 -04:00
James Tauber
8f10724a7f fixed inverse use of carry in SBC 2011-08-06 23:53:47 -04:00
James Tauber
6e709fcc4c turns out PLA DOES affect NZ after all 2011-08-06 23:36:04 -04:00
James Tauber
b413e9ac64 renamed load to load_file, added a load to load memory from byte list and refactored loading code 2011-08-06 23:11:52 -04:00
James Tauber
309f8277e1 emulate indirect mode bug in 6502 2011-08-06 23:02:52 -04:00
James Tauber
84bdef67cd reimplemented CMP, CPX and CPY based on 2006/2007 code 2011-08-06 22:39:11 -04:00
James Tauber
6fb2d79cda reimplemented ADC and SBC based on 2006/2007 code 2011-08-06 22:35:45 -04:00
James Tauber
32120dffef apparently PLA does not affect NZ flags 2011-08-06 22:12:11 -04:00
James Tauber
3a20c009d9 little BIT of simplication 2011-08-06 22:05:15 -04:00