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
n loewen
c0f11f2b03
assembler - Finish WIP - Refactor extensively / Add a 'set the initial address to assemble at' feature / Add a feature that collects debug info that could be passed as output when running in debug mode
2023-08-22 13:03:52 +01:00
n loewen
a766fd867c
assembler - WIP - Continue refactoring everything, in support of 'set the initial IP to assemble to' feature, etc. (Everything is probably broken... but it's much closer)
2023-08-21 19:44:16 +01:00
n loewen
12273a6389
assembler - WIP - Continue refactoring everything, in support of 'set the initial IP to assemble to' feature, etc. (Everything is probably broken... but it's much closer)
2023-08-21 19:37:32 +01:00
n loewen
f0e8664ab8
assembler - WIP - Continue refactoring everything, in support of 'set the initial IP to assemble to' feature, etc. (Everything is broken...)
2023-08-21 18:34:15 +01:00
n loewen
4481fc10d4
assembler - WIP - Start adding a 'set the initial IP to assembler to' feature + Start adding a 'return debug data as well as machine code' feature
2023-08-21 16:08:58 +01:00
n loewen
a52336db07
(docs) readme - Fix keypad section, updating keypad address and removing pointer-to-keypad
2023-08-21 14:47:56 +01:00
n loewen
00ddf2c8fe
(docs) todos - Add entry about re-ordering flags register
2023-08-21 14:46:43 +01:00
n loewen
d48ead819f
(docs) readme - Change memory map + Add section on CPU start-up
...
Memory map:
- Change to a 5x5 display
- Remove pointer to keypad (I can't see why you would want to relocate it)
- Add placeholder for bank-switching flag
- Remove `$30` as initial value of IP - that's covered (differently) by the new CPU start-up section
2023-08-21 14:46:25 +01:00
n loewen
97f1d02912
tests - Fix fill-display program: use new assembly syntax
2023-08-21 14:40:58 +01:00
n loewen
eaa0597552
Merge branch '5x5-display'
2023-08-21 14:38:02 +01:00
n loewen
efab770460
(notes) 2023-08-21 - Add section brainstorming a revised memory-map + initial Instruction Pointer
2023-08-21 14:34:20 +01:00