Commit graph

157 commits

Author SHA1 Message Date
fa4cd218ab Switch assembler to new parser 2019-11-21 18:27:27 +00:00
ee5c2762d6 Fix weeding of things taking up memory
This fixes how instructions and other things that take up space in memory are
parsed. I just forgot to mark the respective memory locations as occupied after
filling them.
2019-11-21 18:25:42 +00:00
396f07cdf1 Make register names case insensitive 2019-11-21 18:25:33 +00:00
393b253d28 Remove spurious undefined 2019-11-21 16:30:51 +00:00
bde92704f1 Finish weeding assembly 2019-11-21 16:20:28 +00:00
702f58e2a4 Weed assembly statements
There's still an undefined in Assembly.hs. To get rid of it, I'll need to adjust
how I weed labels. Once that's finished, the rest should be fairly straightforward.
2019-11-21 15:12:21 +00:00
f3b39f78f4 Parse assembly statements
This commit begins the rewrite of the assembly parser to use the new (not yet
written down) syntax.
2019-11-20 20:46:34 +00:00
7def23284d Fix labels not being applied when they should 2019-11-20 20:46:12 +00:00
e93ff1fc74 Fix number parsing 2019-11-20 20:44:45 +00:00
42d52055d1 Extract flag parser 2019-11-20 18:19:25 +00:00
602e8b5b14 Add a few more parsers for numbers 2019-11-20 17:16:00 +00:00
f8c5d2766c Fix formatting errors
Decimal numbers now look nicer, and --no-sparse works properly again.
2019-11-19 17:14:00 +00:00
a7ef16bc4e Do more state formatting
Registers can now be displayed above the memory content.
2019-11-19 16:50:37 +00:00
ee7639c1c7 Fix formatting of numbers into blocks 2019-11-19 16:03:56 +00:00
75e102ed7d Improve command-line option parsing 2019-11-19 11:45:24 +00:00
0d18329354 Add help for formatting options 2019-11-19 10:59:30 +00:00
8bfce48a7f Format mima state
Also, use the new formatter in mima-run (and while we're at it, clean up flag
file loading and prepare for symbol file loading).
2019-11-19 10:24:53 +00:00
45ec7d1708 Rename AllFlags to RawFlags
I just like this new name better
2019-11-19 10:24:23 +00:00
4707e929ef Switch to Mima.Format formatting 2019-11-19 08:02:58 +00:00
81fee29490 Extract some label-related stuff 2019-11-19 07:59:49 +00:00
23bd495521 Format more numbers 2019-11-18 14:08:46 +00:00
75304e8027 Format symbol file 2019-11-18 09:59:48 +00:00
ac03e6346f Add example benchmark file 2019-11-18 09:33:16 +00:00
5a486b59c2 Fix flag file parsing 2019-11-18 09:33:10 +00:00
5b172ad57f Format flag file 2019-11-18 09:22:35 +00:00
f3c7cdf8b3 Reorganize things in preparation for formatting 2019-11-18 09:22:21 +00:00
bc2594bf69 Load .mima-symbol file 2019-11-15 21:30:05 +00:00
d6db284c22 Improve address range parsing error messages 2019-11-15 19:10:07 +00:00
6dbaadda6a Update README program help 2019-11-15 00:01:51 +00:00
9adcc80373 Prepare for weeding 2019-11-14 23:47:06 +00:00
c91d3f23e9 Rename Mima.Parser to Mima.Parse 2019-11-14 23:46:48 +00:00
4b4c0605b5 Update resolver 2019-11-14 23:41:00 +00:00
f75c3368bb Improve error message on MiMa abort 2019-11-13 15:22:49 +00:00
02e23e7d4a Automatically discover .mima-flags files 2019-11-13 15:22:35 +00:00
b554d80aa9 Introduce Run monad
A monad for nice, pure exceptions. I want to avoid working with IO
exceptions as much as possible.
2019-11-13 09:28:53 +00:00
1b8680004e Create utility function for loading and parsing files 2019-11-13 07:58:41 +00:00
f1d097094d Parse .mima-flag files 2019-11-13 07:53:10 +00:00
c887e57dbd Rename wonkily-named function 2019-11-12 21:23:23 +00:00
b569cee71f Fix typo 2019-11-12 12:17:42 +00:00
9caa8298fc Add support for flags in execution 2019-11-12 12:17:26 +00:00
86f8b723b5 Clear up a few details 2019-11-11 16:35:55 +00:00
8e98bc5dbb Specify more file formats 2019-11-11 14:31:08 +00:00
6002c9fb13 Update comments 2019-11-11 11:19:43 +00:00
b0d68ed8d6 Add readme for examples 2019-11-10 21:57:11 +00:00
a2f723b0ce Add fibonacci number example
Recursive function calls with stack frames FTW! :D
2019-11-10 21:56:36 +00:00
39f2a3f7e1 Add missing instructions 2019-11-10 21:08:36 +00:00
19aca3dfd1 Update example files 2019-11-10 18:34:52 +00:00
957f65c380 Implement new specification 2019-11-10 18:17:21 +00:00
75821abb2c Move programs section to the top 2019-11-10 17:01:29 +00:00
ea8fc9ed5c Change specification
Changes:
- ADC was moved to a small opcode (D)
- LDVR was renamed to LDRS and moved to FA
- STVR was renamed to STRS and moved to FB
- LDRF (FC) and STRF (FD) were added
- Slightly altered document structure
- Added TOC
2019-11-10 16:55:54 +00:00