3b757cc
Add a rst() function. by
2015-05-21 21:00:31 -0400
8111a3e
Finish adding reg() to instructions.yml. by
2015-05-21 20:56:17 -0400
e12b7ee
Replace step with reg/cond, which are smarter; replace 'cond' with 'if'. by
2015-05-21 20:40:00 -0400
02cedd4
Finish adding step() to instructions.yml. by
2015-05-21 19:53:22 -0400
9b611e1
Support step() with bit() and pseudo-cases. by
2015-05-21 18:37:13 -0400
c3ab17f
Add a step() function to reduce repetition in instructions.yml. by
2015-05-21 17:06:55 -0400
8f18c3a
Remove a lot of code duplication. by
2015-05-21 16:35:12 -0400
d483afe
Merge branch 'feature/asm_instructions' by
2015-05-20 03:38:04 -0400
764211a
Implement RRD, RST, SBC, SUB, and XOR. by
2015-05-20 03:34:50 -0400
a8de15d
Implement RL, RLC, RR, RRC, SLA, SRA, SRL, and SL1/SLL/SLS. by
2015-05-20 03:17:40 -0400
071cad0
Support instructions with args and no args; implement RET. by
2015-05-20 02:54:40 -0400
f341148
Implement POP, PUSH, RES, and SET. by
2015-05-20 02:40:40 -0400
5fab99e
Implement JP, JR, OR, OUT. by
2015-05-20 02:25:08 -0400
b545954
Support ports in update script; implement EX/IM/IN. by
2015-05-19 03:11:34 -0400
5e9b890
Support relative addressing in update script; implement CP/DEC/DJNZ. by
2015-05-19 02:51:56 -0400
980383f
Don't check INST_NARGS unless inst has optional arguments. by
2015-05-18 05:05:12 -0400
4bc8339
Implement CALL; bugfix for condition 'Z'. by
2015-05-18 04:56:01 -0400
308af44
Don't check immediate's is_label if it's not a U16. by
2015-05-18 04:45:19 -0400
631bd33
Implement BIT instruction. by
2015-05-18 04:41:06 -0400
d1a0b97
Fix indexed mode offset byte position. by
2015-05-18 04:28:03 -0400
5c6f1c2
Implement AND; cleanup for unconditional subcases. by
2015-05-18 04:12:54 -0400
17f08df
Fix behavior when combining indirect_hl_or_indexed and indirect. by
2015-05-18 01:39:25 -0400
eba6350
Fix duplicate prefixes. by
2015-05-18 01:16:27 -0400
9642dfb
Implement LD instruction; most remaining ASM instruction functionality. by
2015-05-18 00:55:34 -0400
de3cbf7
Fix argparse_immediate() masks for large numbers. by
2015-05-18 00:54:36 -0400
981c4d4
Disable ASan; bugfix for immediate masks. by
2015-05-17 04:00:57 -0400
76f2783
Implement new masking system for ASM instructions; bugfixes. by
2015-05-17 00:21:22 -0400
352296d
Implement inc; make update script save updates; bugfix. by
2015-05-16 23:38:50 -0400
b8b9072
Implement no-arg instructions and 'add'. by
2015-05-16 23:28:20 -0400
e987653
Add more features to update_asm_instructions.py. by
2015-05-16 23:07:43 -0400
5f71035
More work on asm instructions. by
2015-05-16 19:17:25 -0400
0548e5d
More work on update_asm_instructions.py by
2015-05-16 16:57:38 -0400
ade92ae
Starting work on new ASM instructions system. by
2015-05-15 17:25:29 -0400
3d968c1
Add more to load instruction. by
2015-05-10 00:57:54 -0500
2e2e5d6
Split off some of instructions into inst_support; fix z80 errors. by
2015-05-10 00:16:40 -0500
a00dda6
Implement all ld a,<src> instructions. by
2015-05-09 18:38:16 -0500
08d9faa
Support indirect labels; stub out LD instruction. by
2015-05-08 23:38:51 -0500
8babffb
Implement most (all) of the no-argument instructions. by
2015-05-08 23:03:18 -0500
13b7b29
Replace OOM checks with light wrappers around allocation functions. by
2015-05-08 21:50:22 -0500
cfebed6
Stub out all assembler instructions. by
2015-05-08 00:58:09 -0500
b6bea00
Alphabetize instructions; add ADC. by
2015-05-08 00:50:02 -0500
1c35adf
Finish implementing .define/.undef directives. by
2015-05-07 22:22:18 -0500
1d6f832
Make crater be quiet when assembling/disassembling is successful. by
2015-05-06 02:53:25 -0500
197ce39
Do define substitution in argparsers; fix hashtables. by
2015-05-06 02:32:06 -0500
fdd8bb9
Pass argparse args as a struct to make keeping track of deftabs easier. by
2015-05-06 00:42:14 -0500
2b5b7d8
Add hash_table_remove(); pass callback func in constructor. by
2015-05-05 23:15:02 -0500
7745a9c
Refactor; abstract out HashTable; start support for .DEFINEs. by
2015-05-05 22:32:58 -0500
1453220
Support parsing labels; add checks for label length. by
2015-05-04 13:17:47 -0500
baa1c6f
Implement indexed addressing, plus some bugfixes. by
2015-05-03 19:36:21 -0500
83f4ab3
Implement parsing indirect args; fix immediates. by
2015-05-03 00:47:53 -0500
ab3acc4
Add add and reti instructions. by
2015-05-02 23:20:28 -0500
ae2fd5b
Implement parsing of immediates; bugfix. by
2015-05-02 22:20:34 -0500
8bbca15
Parse condition codes. by
2015-05-02 19:04:49 -0500
de7aaf9
Add some additional macros to clean up inst parsers. by
2015-05-02 14:54:55 -0500
1830304
More work on instruction parser. by
2015-05-02 14:50:06 -0500
2b300a2
Properly lower-case labels; ensure labels are not registers. by
2015-04-30 00:36:56 -0500
a13c3bb
Implement an insane(LY AWESOME) system for instruction parsing. by
2015-04-29 02:14:42 -0500
7765457
Use nicer array initializer for Z80 ops. by
2015-04-29 00:38:06 -0500
4f791ee
More on instruction parsing, including mnemonic handling. by
2015-04-28 23:33:38 -0500
295f6eb
Implement space directive; allow commas in .byte. by
2015-04-28 20:03:38 -0500
2ac961d
Add some credits. by
2015-04-28 19:29:03 -0500
9f1c30e
Disallow SMS ROMs for now. by
2015-04-28 18:09:06 -0500
d9e1020
Typedef rather than macro for func ptr. by
2015-04-28 10:43:33 -0500
ae17f5b
Finish parse_data(). by
2015-04-27 23:35:52 -0500
4d7dc57
Implement rom_product() and third-party lookups. by
2015-04-27 21:45:00 -0500
d47ce57
Stub out rom_product(); minor tweak. by
2015-04-27 20:51:06 -0500
a839e85
Use a max depth for includes rather than trying to detect recursion. by
2015-04-27 20:27:36 -0500
05c63c3
Implement serialize_binary() and header writing. by
2015-04-27 19:29:50 -0500
82f2d97
Implement parse_bytes(), bugfixes, improve error messages. by
2015-04-27 14:43:14 -0500
1383d57
Remove NULL checks before free(). by
2015-04-27 13:51:24 -0500
a2e42e9
Implement block-crossing check. by
2015-04-27 13:25:36 -0500
bfba6cd
Make ASMInstruction's bytes an array. by
2015-04-27 12:33:20 -0500
dbec3fe
Makefile improvement; remove optimizer; minor tweaks. by
2015-04-26 20:14:14 -0500
9c895af
Use nice initializer syntax for error strings rather than comments. by
2015-04-25 04:41:28 -0500
0903955
Properly implement slots in the tokenizer. by
2015-04-25 04:36:46 -0500
b8ad055
Refactor out tokenizer; start implementing paging knowledge. by
2015-04-24 19:15:59 -0500
9397107
Fix MMU mirroring algo, support reading 48 KB ROMs. by
2015-04-24 13:17:16 -0500
a7a3055
More robust labels, implement symbol resolution. by
2015-04-24 02:04:32 -0500
65c93cf
Finish resolve_defaults(). by
2015-04-23 22:34:40 -0500
fe86957
Fix adding entries to overlap table; refactor. by
2015-04-23 22:08:47 -0500
c46f104
Layout checking logic. by
2015-04-23 12:56:12 -0500
2c4e26d
Implement hashing for symbol table. by
2015-04-23 01:46:42 -0500
c37375e
Implement label reading, symtab operations (except hashing). by
2015-04-23 01:37:59 -0500
bd37eb4
Move string parsing to parse_util; some refactoring. by
2015-04-22 15:53:27 -0500
f916d26
Doc updates; .s -> .asm. by
2015-04-22 12:39:56 -0500
0999915
Fully support labels on the same line as other instructions. by
2015-04-21 01:20:45 -0500
52858aa
Remove .align directive; add ASMData type. by
2015-04-20 21:15:37 -0500
da537ff
Phase one of tokenizer and data directives. by
2015-04-20 19:34:18 -0500
05e0cbb
Implement most of resolve_defaults(); fix for declsize default behavior. by
2015-04-18 23:25:40 -0500
d7aac27
Finish preprocessor. by
2015-04-18 22:45:42 -0500
0fe98bd
Support string arguments to .rom_size, .rom_declsize. by
2015-04-18 22:03:24 -0500
2cb9b25
Implement parsing .rom_size directive. by
2015-04-18 20:53:33 -0500
971af84
Refactor directive macros to hide 'arg'; misc tweaks. by
2015-04-18 20:27:52 -0500
b174ddd
Implement parsing header size directive. by
2015-04-18 19:46:08 -0500
eebb905
Rework the preprocessor system using insanity. by
2015-04-18 02:34:30 -0500
40066b0
Implement header offset check; fix error handling. by
2015-04-17 23:39:56 -0500
633351c
Finish region info parsing. by
2015-04-17 19:27:46 -0500
4fcd856
Refactor preprocess() again; start on region directive. by
2015-04-17 18:58:55 -0500
174a8c2
Implement ROM version; reading 8- and 16-bit ints. by
2015-04-17 13:45:23 -0500
dd8b99a
Split out parse_util, directives. by
2015-04-17 13:33:08 -0500