about summary refs log tree commit diff stats
path: root/subx/apps
Commit message (Collapse)AuthorAgeFilesLines
* 4889 - playing with kinda-safe pointersKartik Agaram2018-12-292-0/+211
|
* 4888Kartik Agaram2018-12-298-82/+82
| | | | We only can't use rm32=5 when mod=0. Totally fine when it's mod=1.
* 4886Kartik Agaram2018-12-283-5/+5
|
* 4883 - rudimentary memory allocatorKartik Agaram2018-12-284-0/+0
|
* 4881Kartik Agaram2018-12-281-1/+1
|
* 4879Kartik Agaram2018-12-287-22/+22
|
* 4865Kartik Agaram2018-12-104-0/+0
| | | | More mnemonic register usage in write-stream.
* 4864Kartik Agaram2018-12-104-0/+0
| | | | Our first buffer overflow!
* 4862Kartik Agaram2018-12-091-2/+1
|
* 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
|
* 4856Kartik Agaram2018-12-061-0/+0
| | | | Fix CI.
* 4854Kartik Agaram2018-12-062-0/+184
|
* 4853Kartik Agaram2018-12-061-5/+6
|
* 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-064-14/+14
|
* 4846Kartik Agaram2018-12-065-66/+327
| | | | | | | | | | | | | | 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)
* 4841Kartik Agaram2018-12-043-0/+0
| | | | New helper: print an error message, then a numeric byte, then abort.
* 4840Kartik Agaram2018-12-045-2/+2
| | | | New helper: printing a string to a buffered file.
* 4838Kartik Agaram2018-12-043-0/+0
| | | | 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.
* 4834Kartik Agaram2018-12-043-0/+0
| | | | Fix CI since 4827.
* 4833Kartik Agaram2018-12-043-0/+0
|
* 4832Kartik Agaram2018-12-042-0/+6
| | | | | | 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.
* 4828 - writing to buffered-fileKartik Agaram2018-12-033-0/+0
| | | | | 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-033-0/+0
| | | | | | | | | 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
|
* 4822Kartik Agaram2018-12-033-0/+0
| | | | | | | Fix CI. It's kind of a hassle (and wasteful) that I need to redefine 'main' in every single layer.
* 4821Kartik Agaram2018-12-025-82/+0
|
* 4819Kartik Agaram2018-12-023-5/+5
|
* 4818Kartik Agaram2018-12-022-12/+13
|
* 4815Kartik Agaram2018-12-022-8/+18
|
* 4813Kartik Agaram2018-12-012-2/+2
|
* 4812Kartik Agaram2018-11-303-4/+4
|
* 4810Kartik Agaram2018-11-302-0/+0
|
* 4808 - clean up comments in all subx filesKartik Agaram2018-11-303-189/+183
|
* 4803Kartik Agaram2018-11-301-128/+128
|
* 4802Kartik Agaram2018-11-303-261/+261
| | | | | | | | | | | | | | | | Some automated commenting cleanup. Still needs more careful manual scanning. sed -i 's/^# 1-3/# . 1-3/' *.subx */*.subx sed -i 's/^# op/# . op/' *.subx */*.subx sed -i 's/# vim/# . . vim/' *.subx */*.subx sed -i 's/^ # push args/ # . . push args/' *.subx */*.subx sed -i 's/^ # discard args/ # . . discard args/' *.subx */*.subx sed -i 's/^ # call/ # . . call/' *.subx */*.subx sed -i 's/^ # prolog/ # . prolog/' *.subx */*.subx sed -i 's/^ # epilog/ # . epilog/' *.subx */*.subx sed -i 's/^ # save registers/ # . save registers/' *.subx */*.subx sed -i 's/^ # restore registers/ # . restore registers/' *.subx */*.subx sed -i 's/ operand / register /' *.subx */*.subx
* 4801Kartik Agaram2018-11-303-1060/+1060
| | | | Reindent all SubX code to make some room for the new comment style.
* 4800Kartik Agaram2018-11-302-10/+11
|
* 4799Kartik Agaram2018-11-301-4/+4
|
* 4797Kartik Agaram2018-11-302-2/+2
|
* 4796Kartik Agaram2018-11-301-146/+146
|