filled-in gaps in garbage collector implementation

This commit is contained in:
FeralChild64 committed 2020-07-12 20:08:13 +02:00
1 parent dd642b908e
commit ac7fff95e5
2 files changed
+85 -11

No files matched your search

+60 -3
View File
@@ -59,7 +59,26 @@ cmd_let_assign_integer:
lda VALTYP
bmi_16 do_TYPE_MISMATCH_error
// XXX finish the implementation
#if CONFIG_MEMORY_MODEL_60K
// XXX
// XXX: implement this
// XXX
#elif CONFIG_MEMORY_MODEL_46K || CONFIG_MEMORY_MODEL_50K
// XXX consider optimized version without multiple JSRs
// XXX
// XXX: implement this
// XXX
#else // CONFIG_MEMORY_MODEL_38K
// XXX
// XXX: implement this
// XXX
#endif
jmp do_NOT_IMPLEMENTED_error
@@ -68,7 +87,26 @@ cmd_let_assign_float:
lda VALTYP
bmi_16 do_TYPE_MISMATCH_error
// XXX finish the implementation
#if CONFIG_MEMORY_MODEL_60K
// XXX
// XXX: implement this
// XXX
#elif CONFIG_MEMORY_MODEL_46K || CONFIG_MEMORY_MODEL_50K
// XXX consider optimized version without multiple JSRs
// XXX
// XXX: implement this
// XXX
#else // CONFIG_MEMORY_MODEL_38K
// XXX
// XXX: implement this
// XXX
#endif
jmp do_NOT_IMPLEMENTED_error
@@ -79,6 +117,25 @@ cmd_let_assign_string:
lda VALTYP
bpl_16 do_TYPE_MISMATCH_error
// XXX finish the implementation
#if CONFIG_MEMORY_MODEL_60K
// XXX
// XXX: implement this
// XXX
#elif CONFIG_MEMORY_MODEL_46K || CONFIG_MEMORY_MODEL_50K
// XXX consider optimized version without multiple JSRs
// XXX
// XXX: implement this
// XXX
#else // CONFIG_MEMORY_MODEL_38K
// XXX
// XXX: implement this
// XXX
#endif
jmp do_NOT_IMPLEMENTED_error
+25 -8
View File
@@ -213,22 +213,39 @@ varstr_garbage_collect_check_bptr:
ldy #$01
#if CONFIG_MEMORY_MODEL_60K
// XXX
// XXX: implement this
// XXX
ldx #<OLDTXT
jsr peek_under_roms
clc
adc INDEX+0
php
jsr poke_under_roms
iny
jsr peek_under_roms
plp
adc INDEX+1
jsr poke_under_roms
#elif CONFIG_MEMORY_MODEL_46K || CONFIG_MEMORY_MODEL_50K
// XXX consider optimized version without multiple JSRs
// XXX
// XXX: implement this
// XXX
jsr peek_under_roms_via_OLDTXT
clc
adc INDEX+0
sta (OLDTXT),y
iny
php
jsr peek_under_roms_via_OLDTXT
plp
adc INDEX+1
sta (OLDTXT),y
#else // CONFIG_MEMORY_MODEL_38K
clc
lda (OLDTXT),y
clc
adc INDEX+0
sta (OLDTXT),y
iny