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
5ebc079ecd
Add stack frames example
2019-11-10 16:10:21 +00:00
16a666d5c7
Update mima-run help
2019-11-10 16:10:02 +00:00
143a3e9a45
Parse comments at beginning of file correctly
2019-11-10 14:34:29 +00:00
5e9c50d618
Allow digits in label names
...
Also, only allow a-zA-Z as the first character of label names.
2019-11-10 14:32:55 +00:00
6ac5bfc9e7
Add example for nested CALLs with stack
2019-11-10 11:37:55 +00:00
cd5ff1e105
Fix parsing of LDVR/STVR
2019-11-10 11:33:29 +00:00
4a67848627
Add CALL/RET example
2019-11-10 11:22:16 +00:00
fde6fc29ec
Fix parser not allowing comments in some places
2019-11-10 11:21:35 +00:00
2fd6aadc62
Update readme and add example
2019-11-10 11:03:13 +00:00
6c7b47a18d
Add mima-asm program
2019-11-10 10:58:40 +00:00
bd8bd20224
Parse register contents at beginning of file
2019-11-10 10:28:04 +00:00
dc990a2e7a
Parse instructions with labels
2019-11-09 23:41:39 +00:00
21e72420dd
Add more conversions
2019-11-09 23:37:22 +00:00
803c826395
Parse instructions with labels
2019-11-09 19:24:50 +00:00
9258aa4f4d
Clean up application file structure
2019-11-08 19:28:59 +00:00
4f5817c032
Fix topBit always returning False
2019-11-08 18:46:07 +00:00
112a49a7b7
Use OddWords library
2019-11-08 18:33:08 +00:00
63a32ff01a
Prepare reimplementing Mima.Word
2019-11-08 17:55:42 +00:00
e029a5f7e3
Remove package version restrictions
...
This is what the stack resolver is for, if I understand correctly. See
also the version number description in the readme at
https://github.com/commercialhaskell/lts-haskell
2019-11-08 17:55:00 +00:00
63350d5dd9
Load and save specification file format
2019-11-07 22:18:32 +00:00
890b35eadd
Modify color scheme
2019-11-07 20:55:53 +00:00
a0caa3b59c
Add syntax highlighting
...
This commit also cleans up the printing code, which is now longer but
easier to work with.
2019-11-07 20:23:31 +00:00
f3a3432c9c
Clean up string formatting
2019-11-07 20:23:19 +00:00
510ecaa51d
Clean up unused files
2019-11-07 18:40:05 +00:00
af70c1a02c
Print memory dump again
2019-11-07 16:46:21 +00:00
ef06f7b309
Reimplement all opcodes
2019-11-07 13:37:26 +00:00
dd7c9d44a6
Add all opcodes to the instruction representation
2019-11-07 10:49:51 +00:00
75b06c3a9f
Rename opcode-related things
2019-11-07 10:45:17 +00:00
2d76ff4f93
Rename "short" to "small" and "long" to "large"
2019-11-07 10:21:30 +00:00
6e0678d9b4
Make README more readable
2019-11-07 09:59:07 +00:00
3eb9430208
Change low-level data types
...
This commit reorganizes and restructures the low level data types,
like the MimaWord, in preparation for implementing the new MiMa
specification.
2019-11-07 09:48:29 +00:00