diff --git a/compiler/res/prog8lib/cx16/syslib.p8 b/compiler/res/prog8lib/cx16/syslib.p8 index 5f270ab01..d8cd8add6 100644 --- a/compiler/res/prog8lib/cx16/syslib.p8 +++ b/compiler/res/prog8lib/cx16/syslib.p8 @@ -649,8 +649,9 @@ asmsub init_system() { sta VERA_DC_VIDEO ; keep old output mode lda #$90 ; black jsr c64.CHROUT - lda #1 ; swap fg/bg - jsr c64.CHROUT + lda #1 + sta $00 ; select ram bank 1 + jsr c64.CHROUT ; swap fg/bg lda #$9e ; yellow jsr c64.CHROUT lda #147 ; clear screen diff --git a/docs/source/syntaxreference.rst b/docs/source/syntaxreference.rst index 4e22e7bbe..aed99bd80 100644 --- a/docs/source/syntaxreference.rst +++ b/docs/source/syntaxreference.rst @@ -119,7 +119,7 @@ Directives Sets special compiler options. - ``enable_floats`` (module level) tells the compiler - to deal with floating point numbers (by using various subroutines from the Commodore 64 Kernal). + to deal with floating point numbers (by using various subroutines from the Kernal). Otherwise, floating point support is not enabled. Normally you don't have to use this yourself as importing the ``floats`` library is required anyway and that will enable it for you automatically. - ``no_sysinit`` (module level) which cause the resulting program to *not* include diff --git a/docs/source/todo.rst b/docs/source/todo.rst index b570348be..8ed5cffda 100644 --- a/docs/source/todo.rst +++ b/docs/source/todo.rst @@ -3,9 +3,10 @@ TODO For next minor release ^^^^^^^^^^^^^^^^^^^^^^ -- subroutine parameters don't have to be initialized to 0 in prog8_init_vars() -- option to put BSS in specific upper memory block ($a000-$bfff, $c000-$cfff on C64) add a .cerror check for overflow! +- option to put BSS in specific upper memory block ($a000-$bfff on x16, $c000-$cdff on C64) add a .cerror check for overflow! - document bss stuff in the manual +- shrink the evalstack to just 1 page (half page for upper, half page for lower byte) +- after that, move evalstack on x16 to $0700-$07ff rather than $0400-$04ff ? -> gotta fix x16shell 'bios' vectors ...