lips/TODO

42 lines
1.3 KiB
Plaintext

unify/optimize ascii/asciiz/byte/halfword/word into BIN directives
also lex strings to binary strings, why not
more useful string escapes e.g. \x
;pseudo-instr for offsets not within 0x8000 range?
addiu at, t0, 0x7FFF
sb t1, 0x62FE(at)
;versus
sb t1, r0+0xE2FD(t0)
directive aliases, are these right?
DB = 'BYTE',
DH = 'HALFWORD',
DW = 'WORD',
add basic command-line interface (patch.lua)
add a gameshark writer
improve writer performance (just copypaste what you did in patch.lua)
allow generation of shared object files (zelda overlays specifically)
-> http://wiki.cloudmodding.com/oot/Overlays#Relocation_Entry_Format
macros:
add 'em
implement push/pop/jpop as macros
be able to point to specific args of push/pop using variables
procrastinating the heck over:
lex expressions in Lexer instead of its own separate lexer
write tests for everything (try to focus on code paths and edge cases)
make breaking changes to syntax for the sake of macros, expressions etc.
(and keep a branch with the old syntax for good measure, feature-frozen)
low priority:
improve parser terminology
add delay slot warnings
externally document more stuff like syntax
add file-reading directives (e.g. for automatic hook injection macros)