about summary refs log tree commit diff stats
path: root/subx
Commit message (Collapse)AuthorAgeFilesLines
* 4211Kartik K. Agaram2018-02-203-0/+3
| | | | | | | | Just ran into first issue from using the portable /bin/sh rather than a modern shell: https://stackoverflow.com/questions/15744421/read-command-doesnt-wait-for-input Turn on errexit everywhere.
* 4197 - done supporting all indirect addressing modesKartik K. Agaram2018-01-241-0/+44
|
* 4196Kartik K. Agaram2018-01-242-20/+28
|
* 4195Kartik K. Agaram2018-01-243-28/+20
|
* 4194Kartik K. Agaram2018-01-241-2/+80
|
* 4193Kartik K. Agaram2018-01-242-24/+20
|
* 4192Kartik K. Agaram2018-01-241-1/+24
|
* 4191Kartik K. Agaram2018-01-241-1/+15
|
* 4190Kartik K. Agaram2018-01-241-26/+17
|
* 4189Kartik K. Agaram2018-01-245-136/+136
|
* 4188Kartik K. Agaram2018-01-241-5/+11
|
* 4187Kartik K. Agaram2018-01-241-7/+9
|
* 4186Kartik K. Agaram2018-01-241-3/+0
| | | | Fix CI by dropping some accidental copy-pastes.
* 4185Kartik K. Agaram2018-01-247-102/+158
|
* 4184Kartik K. Agaram2018-01-241-1/+13
|
* 4183Kartik K. Agaram2018-01-246-188/+203
|
* 4182 - subx: beginnings of support for indexed addressingKartik K. Agaram2018-01-241-0/+45
|
* 4181Kartik K. Agaram2018-01-214-374/+374
|
* 4180Kartik K. Agaram2018-01-031-2/+7
| | | | Incomplete implementation of `xchg` since commit 4175.
* 4177Kartik K. Agaram2017-12-311-0/+1
| | | | Fix CI.
* 4175Kartik K. Agaram2017-12-301-0/+21
|
* 4174Kartik K. Agaram2017-12-301-0/+72
| | | | Temporary hack to debug Kragen Sitaker's VM.
* 4168Kartik K. Agaram2017-12-301-52/+52
|
* 4162Kartik K. Agaram2017-12-221-25/+0
|
* 4085 - done with first cut of the SubX VMKartik K. Agaram2017-10-182-3/+80
| | | | subx: 'call' and 'return' instructions
* 4084Kartik K. Agaram2017-10-182-25/+24
| | | | | subx: extract helpers for 'push' and 'pop'. We will be using them in 'call' and 'ret' as well.
* 4083Kartik K. Agaram2017-10-182-1/+60
| | | | subx: 'pop'
* 4082Kartik K. Agaram2017-10-182-5/+11
| | | | | subx: correct a 'copy' ('mov') instruction as well to get its operand right from the opcode.
* 4081Kartik K. Agaram2017-10-181-16/+12
|
* 4080Kartik K. Agaram2017-10-181-4/+10
| | | | | | | | subx: correct 'push' register. It gets its operand right from the opcode, not a new modrm byte. Have I misinterpreted any other instructions in this manner (`+rd` in the Intel manual)?
* 4079Kartik K. Agaram2017-10-183-7/+82
| | | | subx: 'pop'
* 4078Kartik K. Agaram2017-10-171-1/+3
|
* 4076Kartik K. Agaram2017-10-161-1/+1
|
* 4075Kartik K. Agaram2017-10-161-3/+4
|
* 4074Kartik K. Agaram2017-10-161-6/+10
|
* 4073Kartik K. Agaram2017-10-161-4/+7
|
* 4071Kartik K. Agaram2017-10-163-46/+510
| | | | | | | | | subx: conditional jump instructions Lots of boilerplate here. This commit really strains my 'copyista' ethic. But I think it's still clearer to see each instruction implemented independently than to try to create a macro or something like that.
* 4070Kartik K. Agaram2017-10-151-0/+11
|
* 4069Kartik K. Agaram2017-10-153-0/+80
| | | | subx: unconditional 'jump'
* 4068Kartik K. Agaram2017-10-151-3/+3
|
* 4067Kartik K. Agaram2017-10-153-3/+92
| | | | subx: 'mov'
* 4066Kartik K. Agaram2017-10-142-2/+2
| | | | | | I spent a while spelunking into the code generated by C compilers before realizing that ignoring the order of arguments for 'cmp' instructions clarifies everything.
* 4065Kartik K. Agaram2017-10-143-0/+228
| | | | | | subx: 'compare' Hopefully I've implemented the 'sense' of comparisons right..
* 4064Kartik K. Agaram2017-10-143-41/+20
|
* 4063Kartik K. Agaram2017-10-141-2/+2
|
* 4062Kartik K. Agaram2017-10-131-0/+4
|
* 4061Kartik K. Agaram2017-10-131-5/+5
|
* 4060 - subx: correct stale ReadmeKartik K. Agaram2017-10-131-7/+1
|
* 4058Kartik K. Agaram2017-10-132-0/+38
|
* 4057Kartik K. Agaram2017-10-133-0/+111
|