filled-in gaps in garbage collector implementation
This commit is contained in:
1 parent
dd642b908e
commit
ac7fff95e5
2 files changed
+85
-11
No files matched your search
@@ -59,7 +59,26 @@ cmd_let_assign_integer:
|
|||||||
lda VALTYP
|
lda VALTYP
|
||||||
bmi_16 do_TYPE_MISMATCH_error
|
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
|
jmp do_NOT_IMPLEMENTED_error
|
||||||
|
|
||||||
@@ -68,7 +87,26 @@ cmd_let_assign_float:
|
|||||||
lda VALTYP
|
lda VALTYP
|
||||||
bmi_16 do_TYPE_MISMATCH_error
|
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
|
jmp do_NOT_IMPLEMENTED_error
|
||||||
|
|
||||||
@@ -79,6 +117,25 @@ cmd_let_assign_string:
|
|||||||
lda VALTYP
|
lda VALTYP
|
||||||
bpl_16 do_TYPE_MISMATCH_error
|
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
|
jmp do_NOT_IMPLEMENTED_error
|
||||||
@@ -213,22 +213,39 @@ varstr_garbage_collect_check_bptr:
|
|||||||
ldy #$01
|
ldy #$01
|
||||||
|
|
||||||
#if CONFIG_MEMORY_MODEL_60K
|
#if CONFIG_MEMORY_MODEL_60K
|
||||||
|
|
||||||
// XXX
|
ldx #<OLDTXT
|
||||||
// XXX: implement this
|
jsr peek_under_roms
|
||||||
// XXX
|
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
|
#elif CONFIG_MEMORY_MODEL_46K || CONFIG_MEMORY_MODEL_50K
|
||||||
// XXX consider optimized version without multiple JSRs
|
// XXX consider optimized version without multiple JSRs
|
||||||
|
|
||||||
// XXX
|
jsr peek_under_roms_via_OLDTXT
|
||||||
// XXX: implement this
|
clc
|
||||||
// XXX
|
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
|
#else // CONFIG_MEMORY_MODEL_38K
|
||||||
|
|
||||||
clc
|
|
||||||
lda (OLDTXT),y
|
lda (OLDTXT),y
|
||||||
|
clc
|
||||||
adc INDEX+0
|
adc INDEX+0
|
||||||
sta (OLDTXT),y
|
sta (OLDTXT),y
|
||||||
iny
|
iny
|
||||||
|
|||||||
Reference in new issue
Block a user