n loewen
|
ac0fccf2e9
|
tests - finish WIP - Make a 'move a pixel with the keypad' program
|
2023-08-26 14:56:01 +01:00 |
n loewen
|
86d0b57c7a
|
cpu - Fix: Make sure that the 'reached cycle limit' message displays in all output modes
|
2023-08-26 14:48:37 +01:00 |
n loewen
|
9f68bd3027
|
tests - WIP - Create 'move pixel with keypad' program
|
2023-08-26 14:35:49 +01:00 |
n loewen
|
b290eb1568
|
cpu - Refactor CPU flags -- stop using a bitmask to make them easier to handle
|
2023-08-26 14:34:02 +01:00 |
n loewen
|
ddab8f42c4
|
cpu / display - Fix/Refactor: Fix CPU status display so that it doesn't crash when JMPing to an address that isn't in the assembly source. Refactor CPU status display to streamline.
|
2023-08-26 14:29:43 +01:00 |
n loewen
|
edad9ecbb8
|
cpu - Fix: Quit the process when the CPU halts
|
2023-08-26 13:26:26 +01:00 |
n loewen
|
41632b0a0f
|
cpu - Change debug printout formatting
|
2023-08-26 13:25:09 +01:00 |
n loewen
|
d0b620f1ad
|
cpu - Fix incorrect flag numbering
|
2023-08-26 13:24:49 +01:00 |
n loewen
|
7cfad439f8
|
run-cpu / cpu - Change command-line interface to use more standard flags (--debug --step --pretty)
|
2023-08-26 12:57:27 +01:00 |
n loewen
|
4bb394f039
|
assembler - Fix: Count lines with only whitespace as blank
|
2023-08-26 11:35:12 +01:00 |
n loewen
|
1ce6757838
|
run-assembler - Remove unused import
|
2023-08-26 11:09:55 +01:00 |
n loewen
|
dea1a445f6
|
logging - Fix memory printing function so that it works for arrays that start or end on odd address numbers
|
2023-08-26 11:07:38 +01:00 |
n loewen
|
902b218547
|
(tests) - draw-xy - Change selected pixel to (3, 3)
|
2023-08-25 11:06:34 +01:00 |
n loewen
|
0a3d474c43
|
issues - Move 'issues' directory out of 'notes' directory
|
2023-08-24 20:57:36 +01:00 |
n loewen
|
98c17cf925
|
display - Fix: Pretty display was displaying the wrong pixels
|
2023-08-24 17:06:09 +01:00 |
n loewen
|
f612e7582a
|
tests - Create routine for plotting a pixel at an (x, y) coordinate
|
2023-08-24 17:03:51 +01:00 |
n loewen
|
897749b108
|
cpu - Add feature: Quit after cycle limit reached
|
2023-08-24 16:35:21 +01:00 |
n loewen
|
2802623c4c
|
assembler - Change error handling: Just quit, don't throw a JS error
|
2023-08-24 16:33:33 +01:00 |
n loewen
|
1bf2144a67
|
assembler - Fix 'Too many arguments' error so that it works for normal lines as well as lines with `*` (which might include an optional 2nd arg)
|
2023-08-24 16:32:29 +01:00 |
n loewen
|
d30050a292
|
cpu - Add feature: 'Invalid opcode' error message
|
2023-08-24 16:31:11 +01:00 |
n loewen
|
dbe630eb5e
|
cpu - Fix debugging output on JMP / Add previous IP to state + add functions that abstract setting and incrementing the IP
|
2023-08-24 16:30:28 +01:00 |
n loewen
|
d56eb34a44
|
assembler - Add feature: throw useful error on references to undefined constants
|
2023-08-24 16:01:56 +01:00 |
n loewen
|
d6b55db381
|
assembler - Add feature: allow use of `*` with a numeric offset
|
2023-08-24 15:26:37 +01:00 |
n loewen
|
dc78518b73
|
assembler - Fix test for argument-less operations / Remove unnecessary variable
|
2023-08-24 15:16:12 +01:00 |
n loewen
|
51bc13fe5b
|
cpu - Change END to increment IP, to make debugging printout work when the only line in the program is an END
|
2023-08-24 15:13:49 +01:00 |
n loewen
|
0fca21dfab
|
assembler - Change to better catch lines that are missing operands, and provide a useful error message
|
2023-08-24 15:00:33 +01:00 |
n loewen
|
9268b2c59a
|
assembler - Fix: Make preparse start counting lines at 1, so that they match the numbers in your text editor
|
2023-08-24 14:42:45 +01:00 |
n loewen
|
621afa0553
|
(issues) todo - Add "Abandoned" section and re-insert 'return pure machine code from assembler' in there
|
2023-08-24 13:19:58 +01:00 |
n loewen
|
527d70fcdf
|
(issues) todo - Remove 'return pure machine code from assembler' entry
|
2023-08-24 13:18:39 +01:00 |
n loewen
|
1dc535a71e
|
assembler/cpu - Add feature: Pass debug info from assembler to cpu, so that cpu can print source line
|
2023-08-24 13:16:01 +01:00 |
n loewen
|
f0632b0969
|
(issues) todos - Change entry to point to "execute JMP FF on startup" issue
|
2023-08-24 12:17:42 +01:00 |
n loewen
|
68ae53a245
|
(issues) issues - Add "execute JMP FF on startup" issue
|
2023-08-24 12:17:24 +01:00 |
n loewen
|
aafeeb572b
|
(issues) issues - Create 'issues' file for extended commentary on select tasks
|
2023-08-24 11:04:38 +01:00 |
n loewen
|
7074f0c5f5
|
(issues) todo - Reformat todo list
|
2023-08-24 11:04:05 +01:00 |
n loewen
|
be8b1ef272
|
Remove 'scratch.js' file
|
2023-08-24 10:44:56 +01:00 |
n loewen
|
6e1a3faff2
|
(notes) issues - Create/Move: Create 'issues' directory / Move 'todo.md' to issues dir
|
2023-08-24 10:43:46 +01:00 |
n loewen
|
2ad6d46b5d
|
(docs) readme - Change memory map to include initial IP + not-yet-implemented ROM with pointer-to-initial-IP
|
2023-08-24 08:18:45 +01:00 |
n loewen
|
6fc6e727d0
|
(notes) 2023-08-24 - Create note with brainstorming re: a more accurate start-up process (and memory/peripheral setup) + a todo list
|
2023-08-24 08:17:38 +01:00 |
n loewen
|
f2e43888b5
|
assembler / machine config - Remove/Change: Remove pointer-to-keypad / Change initial IP
|
2023-08-24 08:16:56 +01:00 |
n loewen
|
78ac43bead
|
assembler - Fix bug where the assembler attempted to handle indirect references to constants twice / Remove unused "assemble with optional args" function / Tidy up debugging printouts
|
2023-08-23 21:23:45 +01:00 |
n loewen
|
ee1e899108
|
(tests) fill-display - Fix typo / Change constant names to increase clarity and make it easier to update if the flag IDs change again
|
2023-08-23 21:22:16 +01:00 |
n loewen
|
14770db506
|
(notes) todo - Add reminder to update CPU startup process / Remove old entries
|
2023-08-23 15:34:00 +01:00 |
n loewen
|
91853cd7e3
|
(notes) todo - Remove completed flag re-ordering task
|
2023-08-23 15:30:53 +01:00 |
n loewen
|
5f29c7c3eb
|
cpu - Change flags from NZOC to ONZC
|
2023-08-23 15:30:06 +01:00 |
n loewen
|
e1cc491e28
|
(docs) readme - Remove old table of instructions missed during previous change
|
2023-08-23 15:26:11 +01:00 |
n loewen
|
ae3743926c
|
(docs) readme - Change title: replace "paper computer" with "imaginary computer"
|
2023-08-23 15:15:43 +01:00 |
n loewen
|
944a0932f6
|
readme/notes - finish WIP - Change instruction set back to the original, but keep the improvements to the documentation
|
2023-08-23 15:12:33 +01:00 |
n loewen
|
af52d4f373
|
(notes) - 2023-08-23 - Add a caveat about the current plan for the new ISA (requires 8-bit addressing)
|
2023-08-23 14:47:38 +01:00 |
n loewen
|
1d35f659ee
|
readme - WIP - Change "Instruction Set" section to describe a new, revised architecture
|
2023-08-23 14:45:14 +01:00 |
n loewen
|
c8d30e524a
|
(notes) 2023-08-23 - Create dev note, thinking about re-arranging the ISA
|
2023-08-23 14:43:12 +01:00 |