1
0
Fork 0
mirror of https://github.com/notwa/lips synced 2024-11-14 09:09:02 -08:00
lips/TODO
2017-01-04 01:33:26 -08:00

41 lines
1.4 KiB
Text

what i should probably do is add 'hooks' just before newlines have been yielded
so you can look at the previous line and say hey it's an include
let's start lexing that instead
unify/optimize ascii/asciiz/byte/halfword/word into BIN directives
also lex strings to binary strings, why not
;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)
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)