Commit Graph

  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • *
  • 8c174a7 (HEAD -> master) Environment will now accept ':' as temp labels and handle their values accordingly. As soon as a new var is defined, all temp labels are cleared. by Bryan Miller 2019-10-21 13:26:43 -0400
  • fc75246 Parser now treats ':' punctuations at the beginning of a line as a 'temp label' definition. Temp labels can be referenced by ':<num>' where <num> is the index number (zero-based) of the temp label. by Bryan Miller 2019-10-21 13:25:38 -0400
  • 221d157 Tokenizer now accepts ':' as a 'punc' token. by Bryan Miller 2019-10-21 13:23:47 -0400
  • ba2545f Environment can now emit on initial variable/label value assignment. by Bryan Miller 2019-10-17 12:54:09 -0400
  • 825b7f5 Parser no longer has 'prog'. Now just uses 'block'. by Bryan Miller 2019-10-17 10:59:17 -0400
  • a77ac05 Renamed the compiler to assembler. by Bryan Miller 2019-10-16 08:47:53 -0400
  • f1528e3 Environment class can now have a 'special' variable for the Program Counter defined (using the PCLabel property). by Bryan Miller 2019-10-15 13:42:09 -0400
  • da3a8b8 Parser can now have it's Program Counter Label (PCLabel) defined. Defaults to '__PC__'. The symbole '*' is no longer used. by Bryan Miller 2019-10-15 13:09:01 -0400
  • b326279 Number of parser fixes. OpCode parser now properly parses Indirect op codes. by Bryan Miller 2019-10-15 12:52:14 -0400
  • e8c2462 Removed stray console.log() command. by Bryan Miller 2019-10-15 12:51:38 -0400
  • 7e92c65 Added compiler environment class. by Bryan Miller 2019-10-04 11:06:58 -0400
  • 6c72355 MOS/6502/tpl.js contains objects and functions used by Tokenizer and Parser to allow them to codify 6502 assembly. by Bryan Miller 2019-10-03 13:36:21 -0400
  • 54d3283 Parser functional and turned into a class. Tokenizer now has a tokenize() method. Both Parser and Tokenizer have been moved from MOS/6502/assembler into the compiler folder. Both Parser and Tokenizer have op code identification generalized out... which should allow Parser and Tokenizer to be used for more than one CPU type. by Bryan Miller 2019-10-03 13:35:11 -0400
  • 58201c6 Parse coming along by Bryan Miller 2019-10-02 13:46:08 -0400
  • 4e64570 More buildout of the parser by Bryan Miller 2019-10-01 14:00:03 -0400
  • 908ba88 Tokenizer will now only accept multi-line strings if the newline is preceeded by a backspace. by Bryan Miller 2019-10-01 13:59:50 -0400
  • aa79ab6 More 6502 assembly parser work. by Bryan Miller 2019-09-30 12:58:17 -0400
  • f02c5c4 Working on the parser. :-/ by Bryan Miller 2019-09-27 11:04:14 -0400
  • c5c72ee Tokenizer now outputs opcodes as their own token. by Bryan Miller 2019-09-27 11:03:48 -0400
  • da0816d Started work on parser. by Bryan Miller 2019-09-26 14:05:21 -0400
  • 9a3cb51 Tokenizer finished. by Bryan Miller 2019-09-26 14:05:06 -0400
  • 198ef7d Started work on a new assembler for the 6502 cpu. Something cleaner! by Bryan Miller 2019-09-25 14:05:17 -0400
  • 92e960d Modified memory/MMC to allow 'writePassthrough' (enabled by default) which will pass any write attempt to a writable chunk of memory within the same bank if one is available. Updated tests as needed. by Bryan Miller 2019-09-24 11:53:12 -0400
  • 5237ac8 Added module index file for src/MOS. by Bryan Miller 2019-09-24 10:18:27 -0400
  • 2784031 Broke up the src/memory/memory.js file into rom, ram, and shadow. Updated src/memory/index.js and tests as needed. by Bryan Miller 2019-09-24 10:14:43 -0400
  • 37709db Moved all MOS-based chips into a single MOS directory. Modified test names to match. Updated all affected files to reflect new path and file name changes. by Bryan Miller 2019-09-24 10:01:14 -0400
  • 3533336 IO moved from common to root. Adjusted modules to use the new IO path. by Bryan Miller 2019-09-24 09:48:49 -0400
  • 887c5ad MOS6502/cpu has the method .hardReset(). Improvements to ALU function, especially in BCD math. Tests enhanced and added test for ADC Immediate BCD mode. by Bryan Miller 2019-09-23 13:57:58 -0400
  • fd49d3d MOS6502.cpu increasing of program counter slightly modified, fixed some minor bugs. MOS6502.cpu tests updated to be cleaner and clearer and include from flag testing in the existing ADC/SBC tests. by Bryan Miller 2019-09-19 13:37:16 -0400
  • 65ad33f Started adjusting MOS6502.cpu tests to use the MOS6502.assembler to 'compile' the assembly being tested. by Bryan Miller 2019-09-18 19:04:28 -0400
  • 55bde60 Enhanced ALU with BCD mode and fixed ADC/SBC flag results. by Bryan Miller 2019-09-18 19:03:30 -0400
  • c5014d9 Added file to force test execution order. by Bryan Miller 2019-09-13 13:48:47 -0400
  • 1309eca Clock tests updated for new features. by Bryan Miller 2019-09-13 13:42:32 -0400
  • e7a447a Clock can now handle 'layers'. Every added layer reduces call speed of grouped components by <hz>/<# layers>. by Bryan Miller 2019-09-13 13:42:09 -0400
  • e65b597 Clock moved from common to the root src path. Renamed some tests. Combined utils.bcd and utils.bitman tests into a unified utils test. Utils path can now be imported like a module. by Bryan Miller 2019-09-13 10:52:22 -0400
  • fce7c0e MOSCIA Tests now contain all Timer B tests! by Bryan Miller 2019-09-12 13:43:00 -0400
  • fa33745 MOSCIA Fixed typo and CNT is no longer automatically set to zero at the end of a phi2 tick. by Bryan Miller 2019-09-12 13:42:38 -0400
  • 2bf4923 MOSCIA More Timer A Tests. by Bryan Miller 2019-09-11 13:59:09 -0400
  • d137381 Clock test allows slight variance for amount of real time passage. by Bryan Miller 2019-09-11 07:07:48 -0400
  • f411ce2 Continued MOSCIA tests. by Bryan Miller 2019-09-10 16:38:58 -0400
  • 0d26e36 Fixed issues with interrupts. Fixed bugs in TimerA. by Bryan Miller 2019-09-10 16:38:22 -0400
  • a7b0ba2 MOSCIA TOD and other tests added. Breaks due to interrupt issues. by Bryan Miller 2019-09-10 14:10:19 -0400
  • de34b64 Fixed TOD issues. Working on interrupt issues. by Bryan Miller 2019-09-10 14:09:47 -0400
  • d667ca6 Testing the ability to trigger events for PDA and PDB as well as DD* masking. by Bryan Miller 2019-09-06 13:57:09 -0400
  • 4772ddf Tweaks to MOSCIA by Bryan Miller 2019-09-06 13:56:35 -0400
  • 4e28ffb RAM, ROM, and Shadow memory now use the new IO class. Dropped the Listener helper class. by Bryan Miller 2019-09-06 08:44:49 -0400
  • 59978a5 Renamed wireable.js to io.js to match exported class name. Fixed bug by Bryan Miller 2019-09-06 08:42:45 -0400
  • 07593c8 Created class that can handle specialty IO events. by Bryan Miller 2019-09-05 15:53:52 -0400
  • 124d9d4 Clock test improved to allow for a +/-1% variation in cycles. by Bryan Miller 2019-09-05 08:04:09 -0400
  • 5bb38e2 Started adding tests for MOS CIA by Bryan Miller 2019-09-04 13:43:19 -0400
  • 8020104 Bug fixes to MOS CIA Serialization. by Bryan Miller 2019-09-04 13:42:49 -0400
  • d3b1742 MOS CIA can now be reset. Serial communication implemented. by Bryan Miller 2019-09-04 10:52:08 -0400
  • 9abb5bc MOS CIA Interrupt control/mask mechanics in place. by Bryan Miller 2019-09-04 09:32:25 -0400
  • e13f5b0 CIA Timers A/B coded. by Bryan Miller 2019-09-03 13:10:31 -0400
  • f7ed007 Rework of the CIA TOD registers. by Bryan Miller 2019-09-03 10:21:30 -0400
  • f8ef85f Tweaks to MOSCIA by Bryan Miller 2019-08-29 13:25:01 -0400
  • c1f1f23 Memory now has a peek() and poke() method; like read() and write() respectively, but will not trigger listeners. by Bryan Miller 2019-08-29 13:24:11 -0400
  • 613d11b MOSCIA will now uses utils/bcd and TOD clock should work... untested. by Bryan Miller 2019-08-28 16:04:01 -0400
  • d443ff4 More work on utils/bcd and added unit tests. by Bryan Miller 2019-08-28 16:03:09 -0400
  • a162b4a Started working a BCD helper, and an implementation of the MOS CIA chip. by Bryan Miller 2019-08-28 14:05:50 -0400
  • ecd453d Moved MOS6502 out of the chip directory. Adjusted tests accordingly. by Bryan Miller 2019-08-28 09:26:30 -0400
  • fcdf419 Added some tests for the Clock class. by Bryan Miller 2019-08-27 14:04:32 -0400
  • a9ba4f1 Minor tweaks to Clock by Bryan Miller 2019-08-27 14:04:19 -0400
  • b12f868 Finished MMC memory tests. by Bryan Miller 2019-08-26 13:41:52 -0400
  • 2e5ad38 Bug fixes by Bryan Miller 2019-08-26 13:41:34 -0400
  • 4c9f047 Fixed the .address property behaviour by Bryan Miller 2019-08-26 13:21:45 -0400
  • dda1c22 Fixed a couple bugs. Removed mmSwitchRegister(). Added switchBank() by Bryan Miller 2019-08-26 11:39:09 -0400
  • 5ba52a5 Added another couple tests to the memory test set. by Bryan Miller 2019-08-21 13:54:51 -0400
  • 30f9504 Rewrote .load() method. by Bryan Miller 2019-08-21 13:54:30 -0400
  • 10a62b4 Minor test addition by Bryan Miller 2019-08-20 15:53:00 -0400
  • 9d773f6 Added pages property to memory. Bringing MMC more inline with IMem interface. by Bryan Miller 2019-08-20 15:52:36 -0400
  • 495c5b6 Memory module bug fixes. Memory test added. by Bryan Miller 2019-08-20 14:01:02 -0400
  • beab016 Rewrote memory classes and put them in their own folder. Updated MOS6502/cpu and relavent tests. by Bryan Miller 2019-08-19 14:02:17 -0400
  • f005dda Finished all opcodes in assembler by Bryan Miller 2019-08-16 09:36:47 -0400
  • c2f0652 Several more opcodes tested. by Bryan Miller 2019-08-15 16:11:19 -0400
  • 8744d3c Fixed bug with LDX Absolute,Y by Bryan Miller 2019-08-15 16:11:01 -0400
  • c722a48 Large number of 6502 assembler tests written. by Bryan Miller 2019-08-15 13:42:02 -0400
  • bed8ec0 Fixed a typo by Bryan Miller 2019-08-15 13:41:41 -0400
  • 5781e76 Added interrupt handlers (by way of psuedo hijacking BRK) and make reset a property. Updated tests accordingly. by Bryan Miller 2019-08-14 13:06:00 -0400
  • e92b54d Finished coding all opcodes. by Bryan Miller 2019-08-14 10:41:24 -0400
  • baed6e6 Added dedicated StackPush() and StackPop() methods. Fixed BRK and JSR opcodes. Wrote RTS and RTI opcodes. by Bryan Miller 2019-08-14 10:36:29 -0400
  • 9265cb2 Added the ROL and ROR opcodes. by Bryan Miller 2019-08-13 17:33:27 -0400
  • 3e17915 More opcodes finished. by Bryan Miller 2019-08-13 13:46:47 -0400
  • 440c543 Added more MOS6502/cpu tests. File dummy updated with unofficial tests. by Bryan Miller 2019-08-12 20:34:47 -0400
  • 145fb53 Added LDA opcode. Tweaking ALU() by Bryan Miller 2019-08-12 20:34:10 -0400
  • 50526cd MATHC() broken into ADC() and SBC() once again. ProccessOp() handles memory and value access in the various mode types and returns true when the process who generate an outcome. by Bryan Miller 2019-08-12 18:50:06 -0400
  • b94470c Testing file for MOS6502/cpu by Bryan Miller 2019-08-12 13:55:38 -0400
  • b31404b Fixed conflict with BIT (using BITM for the utility file). Method reset() should now match basic 6502 reset mechanics. by Bryan Miller 2019-08-12 13:55:16 -0400
  • a8ad08b Method rename and two new methods added to Bank class. by Bryan Miller 2019-08-12 13:50:50 -0400
  • b9802d8 ADC() method turned into the MATHC() method which can be used for both the ADC and SBC op codes. CPU.clk() updated accordingly. by Bryan Miller 2019-08-12 09:02:35 -0400
  • fa1b9f9 ALU() method modified to directly use and set the cpu.__AR value. ADC() Adjusted according to the new ALU() changes. by Bryan Miller 2019-08-12 08:58:21 -0400
  • 52e5111 Added ALU and the ADC op code. by Bryan Miller 2019-08-09 13:45:54 -0400
  • 004d99d Can now get the direct bit value with the new .val() method. by Bryan Miller 2019-08-09 13:45:35 -0400
  • 30132b1 Fixed the order of the status register flags and initialized the status register to 32 (bit 5 on). by Bryan Miller 2019-08-09 08:24:35 -0400
  • 0ab6bb5 Branching fixed. Added Register, Flag, and Stack commands. by Bryan Miller 2019-08-08 18:06:06 -0400
  • 2433ed5 Branches coded. by Bryan Miller 2019-08-08 13:55:01 -0400
  • 58e181f MOS6502 CPU buildout. by Bryan Miller 2019-08-08 11:48:17 -0400
  • 7f25738 Tokenizer handles strings. Directives use handlers. Updated tests. by Bryan Miller 2019-08-07 17:25:12 -0400
  • 3daef52 MOS6502 moved into src/chip/MOS6502 and broken into two different files. Tests have been flattened. by Bryan Miller 2019-08-07 13:53:38 -0400
  • fdee76c Reorganization of source files. by Bryan Miller 2019-08-07 11:27:21 -0400