Commit Graph

82 Commits

Author SHA1 Message Date
andromeda
34b11aabe5 improve readme a bit 2026-04-04 10:49:40 +02:00
andromeda
767453bd55 save stack in tokenise 2026-04-04 10:26:15 +02:00
andromeda
df8e04ce63 mask smth 2026-04-04 09:50:40 +02:00
andromeda
a8bf6749b8 fix test_evaluate_constant 2026-04-02 23:46:20 +02:00
andromeda
e8c1313ece :p 2026-04-02 23:44:17 +02:00
andromeda
c1463e1fef add pseudo-operator support to an extremely minimal degree 2026-04-02 23:38:10 +02:00
andromeda
57f8f5a118 operator_2_register_label, fix bug in AWAITING_LABEL_TABLE add function 2026-04-02 17:16:34 +02:00
andromeda
793677a2da tweak 2026-04-02 12:39:38 +02:00
andromeda
16f26fd552 no mod r/m flag on 'out' opcode, use r/m<-r as default r<-r 2026-04-02 12:17:47 +02:00
andromeda
91a609040f rework flags in opcode table 2026-04-02 09:40:58 +02:00
andromeda
8f3d6b91f9 make out easier xD 2026-04-02 08:26:37 +02:00
andromeda
18125e6b20 fix fatal bug in data, get prefix down, start work on awaiting_label, add debug function, more 2026-04-02 00:13:47 +02:00
andromeda
395c42dff4 add 8 bit opcode support 2026-03-31 22:20:30 +02:00
andromeda
ad9be1029c start w labels idk 2026-03-31 21:05:41 +02:00
andromeda
0c7418b293 improve readme a bit 2026-03-30 20:14:10 +02:00
andromeda
a0a99e3116 add some operators, stop printing whitespace while tokenising, add frame for pseudo-op support 2026-03-30 20:11:36 +02:00
andromeda
f789d49e8a tokenise labels and constants! Now assembly highkey fails but ok 2026-03-30 16:09:25 +02:00
andromeda
b1e7d2e3d5 check sizes, fix bug with buffer, fix a couple other bugs, add more registers to tokens.registers 2026-03-29 09:36:55 +02:00
andromeda
d51de0cc1d buffer writes, add to example 2026-03-26 21:11:23 +01:00
andromeda
9becdea2b9 minor improvements 2026-03-25 21:37:40 +01:00
andromeda
2960c1b795 clean up some stuff 2026-03-25 21:14:34 +01:00
andromeda
31a438d1ee prettify some printing, tidy loop 2026-03-25 17:48:58 +01:00
andromeda
20162ab02c clean up labels 2026-03-24 22:33:14 +01:00
andromeda
121a0df8e4 improve data structures 2026-03-24 20:49:52 +01:00
andromeda
74fc57cdfc add more stuff to the lookup tables 2026-03-24 11:16:39 +01:00
andromeda
26b6b44caf improve print 2026-03-24 10:05:21 +01:00
andromeda
8b0e4759be update example in readme 2026-03-23 23:54:27 +01:00
andromeda
b607bd13f3 IT SORTA WORKS LESGOOO 2026-03-23 23:37:39 +01:00
andromeda
40be72a5c3 remove superfluety 2026-03-23 22:29:13 +01:00
andromeda
f4f0f50d80 test completeness, couple semantics 2026-03-23 22:27:52 +01:00
andromeda
9233ca421b ;) 2026-03-23 18:11:27 +01:00
andromeda
9a88a859cf remove some stuff it doesn't need 2026-03-23 17:39:26 +01:00
andromeda
75e9c27dda remove superfluous wrapper function 2026-03-23 17:23:09 +01:00
andromeda
b952210561 add hash 2026-03-23 17:00:32 +01:00
andromeda
50e635332c start migration to better parsing of arguments 2026-03-23 16:25:10 +01:00
andromeda
cab89cdd2b a couple semantics 2026-03-22 04:19:51 +01:00
andromeda
55c426631b correctly handle [register]s as operands 2026-03-21 21:42:50 +01:00
andromeda
73ea2bb2b5 add addressing to evaluate_operand 2026-03-20 09:04:50 +01:00
andromeda
a5fd811b3f add trim_trailing_whitespace 2026-03-19 21:58:59 +01:00
andromeda
ad6a79d937 throw error with non-register operands 2026-03-18 20:52:00 +01:00
andromeda
ac0a10fafd finally change .gitignore, correctly handle register operands 2026-03-18 20:45:12 +01:00
andromeda
2e222c304a add evaluate_operand, fix operator tokenising 2026-03-18 20:26:30 +01:00
andromeda
ec88bd7381 rearrange test case 2026-03-18 18:41:48 +01:00
andromeda
d5c2dde221 identify some tokens 2026-03-18 16:53:35 +01:00
andromeda
de60e52c5a range check char length 2026-03-18 16:21:34 +01:00
andromeda
17a0a1a406 yeh only chr consts fn 2026-03-18 16:18:19 +01:00
andromeda
e79a30ba71 add rough char/str parsing 2026-03-17 21:16:17 +01:00
andromeda
0160d2e127 add binary 2026-03-15 22:02:36 +01:00
andromeda
c05adee382 add octal 2026-03-15 21:55:16 +01:00
andromeda
64d3e4f635 remove dead lines 2026-03-15 21:19:30 +01:00