diff --git a/.gitignore b/.gitignore index 8cb7caf..4bfc2a7 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ *.lab *.lst artwork/talk.as_ +Manuals/build.bat \ No newline at end of file diff --git a/Atari/lib/cartloader_vectors.inc b/Atari/lib/cartloader_vectors.inc new file mode 100644 index 0000000..ed2813c --- /dev/null +++ b/Atari/lib/cartloader_vectors.inc @@ -0,0 +1,9 @@ +X_LOADER_START = $0700; +X_BANK = $073D; +X_SRC = $07B9; +X_CLRSTART = $0725; +X_CLREND = $0730; +X_PORTB = $0707; +X_EXITBANK = $07A6; +X_NMIEN = $07AF; +X_BOOT_START = $BFD6; diff --git a/Manuals/manual.asm b/Manuals/manual.asm index 2ef806f..7d90de5 100644 --- a/Manuals/manual.asm +++ b/Manuals/manual.asm @@ -1,5 +1,6 @@ icl '../Atari/lib/ATARISYS.ASM' icl '../Atari/lib/MACRO.ASM' + icl '../Atari/lib/cartloader_vectors.inc' .IFNDEF LANG .def LANG = "PL" @@ -87,14 +88,11 @@ main_loop sta escflag jsr WaitOneFrame ; exit to cart loader - XSRC = $7FE ; -$7FF) - adres początku pliku do załadowania z carta (zakres $a000-$bffff) - XBANK = $7FD ;) - bank w którym sie znajduje powyższy początek - XCLEAR = $7FC ;) - numer strony od której czyścimy pamięć (jak jest zero to nie czyścimy) czyszczenie zatrzymuje sie na $cfff - mva #0 XBANK - mwa #$a000 XSRC - mva #$10 XCLEAR - jmp $700 + mva #0 X_BANK + mwa #$a000 X_SRC + mva #$10 X_CLRSTART + jmp X_LOADER_START NoEscape jsr MakeScreenCopy ; save the current end of the printed text source diff --git a/Manuals/manual_en.xex b/Manuals/manual_en.xex index 72dfa29..c8af9cb 100644 Binary files a/Manuals/manual_en.xex and b/Manuals/manual_en.xex differ diff --git a/Manuals/manual_pl.xex b/Manuals/manual_pl.xex index bbaf9a8..cc993af 100644 Binary files a/Manuals/manual_pl.xex and b/Manuals/manual_pl.xex differ diff --git a/artwork/CartMenu/cart_reset.asm b/artwork/CartMenu/cart_reset.asm index 1299450..a45ff72 100644 --- a/artwork/CartMenu/cart_reset.asm +++ b/artwork/CartMenu/cart_reset.asm @@ -1,14 +1,14 @@ -BankNr = $D500 +Bank0 = $D500 ; --- org $0100 reset_proc ; set cartridge bank to 0 - mva #$0 BankNr + sta Bank0 ; and reset - jmp ($fffd) + jmp ($fffc) initialization - mwa #reset_proc $0A ; set DOSVEC + mwa #reset_proc $0C ; set DOSINI mva #$01 $09 rts ; diff --git a/artwork/CartMenu/menu.asm b/artwork/CartMenu/menu.asm index 9d87fdc..fdf5586 100644 --- a/artwork/CartMenu/menu.asm +++ b/artwork/CartMenu/menu.asm @@ -1,7 +1,7 @@ - icl '../../Atari/lib/ATARISYS.ASM' - icl '../../Atari/lib/MACRO.ASM' - + icl '../../Atari/lib/ATARISYS.ASM' + icl '../../Atari/lib/MACRO.ASM' + icl '../../Atari/lib/cartloader_vectors.inc' icl 'cart_reset.asm' .zpvar dliCounter .byte = $80 @@ -10,10 +10,7 @@ ; ------- constans -------- ; start addr of loader -Loader_Start = $0700 -Clear_Set = $07fc -Bank_Set = $07Fd -Addr_Set = $07fe + ; cart banks numbers LoaderBank = 0 ScorchBank = 1 @@ -59,19 +56,19 @@ WaitForKey jsr GetKey cmp #@kbcode._space bne @+ - mva #ScorchBank Bank_Set + mva #ScorchBank X_BANK bne GoLoader @ cmp #@kbcode._E bne @+ - mva #MenuENBank Bank_Set + mva #MenuENBank X_BANK bne GoLoader @ cmp #@kbcode._P bne @+ - mva #MenuPLBank Bank_Set + mva #MenuPLBank X_BANK bne GoLoader @ cmp #@kbcode._T bne WaitForKey - mva #TetryxBank Bank_Set + mva #TetryxBank X_BANK bne GoLoader GoLoader @@ -83,11 +80,11 @@ GoLoader lda #0 ; DL off, P/M off sta dmactls jsr WaitOneFrame - mwa #$a000 Addr_Set - mva #$10 Clear_Set + mwa #$a000 X_SRC + mva #$10 X_CLRSTART ;cli ;jmp main - jmp Loader_Start + jmp X_LOADER_START stop jmp stop diff --git a/artwork/CartMenu/menu.xex b/artwork/CartMenu/menu.xex index dc2cdde..3891744 100644 Binary files a/artwork/CartMenu/menu.xex and b/artwork/CartMenu/menu.xex differ