about summary refs log tree commit diff stats
path: root/subx
Commit message (Collapse)AuthorAgeFilesLines
* 4861Kartik Agaram2018-12-092-42/+42
|
* 4860 - stage 1 of SubX compiler in SubX is done!Kartik Agaram2018-12-092-9/+66
| | | | | | | | | I'm imagining 3 core stages total: 1. convert text hex bytes -> binary (✓) 2. pack and reorder operands 3. compute label addresses (Not including extras like error-checking.)
* 4859Kartik Agaram2018-12-091-8/+8
|
* 4858 - debugging tipsKartik Agaram2018-12-081-0/+103
|
* 4857Kartik Agaram2018-12-062-29/+14
| | | | | | Clean up the debugging flow, and go over help messages for inconsistencies. They predate the new Readme, which takes some time to describe the x86 instruction set.
* 4856Kartik Agaram2018-12-061-0/+0
| | | | Fix CI.
* 4854Kartik Agaram2018-12-062-0/+184
|
* 4853Kartik Agaram2018-12-061-5/+6
|
* 4852Kartik Agaram2018-12-061-0/+10
|
* 4851Kartik Agaram2018-12-062-21/+187
| | | | | | | Bugfix in scenarios where scan-next-byte needs to abort. I'm starting to have trouble keeping strings, streams and buffered-files straight.
* 4850Kartik Agaram2018-12-062-1/+137
|
* 4849Kartik Agaram2018-12-062-1/+90
|
* 4848Kartik Agaram2018-12-062-7/+6
|
* 4847Kartik Agaram2018-12-0611-23/+23
|
* 4846Kartik Agaram2018-12-067-68/+331
| | | | | | | | | | | | | | Clean up a few things: a) Call scan-next-byte in hex.subx with the right number of args. Turns out tests continue to work fine if they never use the other args. b) Tear down a test for 'stop' in the right order. Not important since we have no EBP to restore. But can still be misleading. c) Have 'check-ints-equal' return nothing. Handy for it to not mess up EAX. I never use the result anyway, and the name also is imperative suggesting callers won't expect a return value.
* 4845Kartik Agaram2018-12-061-3/+0
|
* 4844Kartik Agaram2018-12-063-0/+0
|
* 4845Kartik Agaram2018-12-062-0/+823
| | | | Making progress on hex1 (http://web.archive.org/web/20061108010907/http://www.rano.org/bcompiler.html)
* 4843Kartik Agaram2018-12-051-4/+4
| | | | Colorize function names containing special characters like '?'.
* 4842Kartik Agaram2018-12-053-5/+21
|
* 4841Kartik Agaram2018-12-044-0/+94
| | | | New helper: print an error message, then a numeric byte, then abort.
* 4840Kartik Agaram2018-12-047-6/+227
| | | | New helper: printing a string to a buffered file.
* 4839Kartik Agaram2018-12-041-2/+2
|
* 4838Kartik Agaram2018-12-044-10/+10
| | | | Better to use EDI as a mnemonic for 'destination'.
* 4837Kartik Agaram2018-12-044-2/+2
| | | | Let's standardize to use opcode 39 rather than 3b by default.
* 4836Kartik Agaram2018-12-041-1/+1
|
* 4835Kartik Agaram2018-12-041-1/+1
|
* 4834Kartik Agaram2018-12-044-9/+0
| | | | Fix CI since 4827.
* 4833Kartik Agaram2018-12-043-0/+0
|
* 4832Kartik Agaram2018-12-0411-1/+18
| | | | | | Let's start adding ':end' labels in all functions, just because it helps us visualize where function calls end in traces, thanks to the '--map' commandline argument.
* 4831Kartik Agaram2018-12-042-0/+4
|
* 4830Kartik Agaram2018-12-035-4/+460
| | | | | | New helper: printing a byte in textual (hex) form. This required adding instructions for bitwise shift operations.
* 4829Kartik Agaram2018-12-031-3/+3
| | | | | Showing the error bit pattern explicitly makes it more clear that it's not possible to generate as a non-error value.
* 4828 - writing to buffered-fileKartik Agaram2018-12-035-3/+162
| | | | | This is likely a sub-optimal interface, but I'm trying not to agonize. The whole point of Mu is to permit radical changes at any point in time.
* 4827Kartik Agaram2018-12-034-4/+4
| | | | | | | | | I was 'returning' a phantom value from 'write' when the underlying '_write' returns nothing. In general, returning counts of bytes written is not so useful for error checking when my primitives abstract away from that. We'll come back to error signalling later.
* 4826Kartik Agaram2018-12-032-2/+2
|
* 4825Kartik Agaram2018-12-031-15/+15
|
* 4824Kartik Agaram2018-12-033-16/+16
|
* 4823Kartik Agaram2018-12-031-4/+2
|
* 4822Kartik Agaram2018-12-034-0/+7
| | | | | | | Fix CI. It's kind of a hassle (and wasteful) that I need to redefine 'main' in every single layer.
* 4821Kartik Agaram2018-12-026-82/+47
|
* 4820Kartik Agaram2018-12-021-1/+1
|
* 4819Kartik Agaram2018-12-028-17/+17
|
* 4818Kartik Agaram2018-12-0210-43/+44
|
* 4817Kartik Agaram2018-12-022-7/+7
|
* 4816Kartik Agaram2018-12-021-0/+11
|
* 4815Kartik Agaram2018-12-022-8/+18
|
* 4813Kartik Agaram2018-12-012-2/+2
|
* 4812Kartik Agaram2018-11-303-4/+4
|
* 4811Kartik Agaram2018-11-301-2/+3
|