mirror of
https://github.com/pkali/scorch_src.git
synced 2026-05-20 22:34:21 +02:00
Preparing for the manual
This commit is contained in:
@@ -0,0 +1,113 @@
|
||||
|
||||
|
||||
* --- MAIN PROGRAM
|
||||
org $2000
|
||||
FontManual
|
||||
ins '../../artwork/weapons_AW6_mod.fnt' ; 'artwork/weapons.fnt'
|
||||
|
||||
StartManual
|
||||
; jsr init_song
|
||||
|
||||
lda >FontManual
|
||||
sta chbase
|
||||
sta chbas
|
||||
lda #$00
|
||||
sta colbak
|
||||
lda #$00
|
||||
sta colpf0
|
||||
lda #$02
|
||||
sta colpf1
|
||||
lda #$08
|
||||
sta colpf2
|
||||
lda #$00
|
||||
sta colpf3
|
||||
lda #$03
|
||||
|
||||
; and now display manual language selection screen
|
||||
mva <ManualDL dlptrs
|
||||
mva >ManualDL dlptrs+1
|
||||
mva #%00111110 dmactls ;set new screen width
|
||||
|
||||
@checkkey
|
||||
lda trig0 ; FIRE #0
|
||||
beq game
|
||||
|
||||
lda trig1 ; FIRE #1
|
||||
beq game
|
||||
|
||||
lda consol ; START
|
||||
and #1
|
||||
beq game
|
||||
|
||||
lda skctl ; ANY KEY
|
||||
and #$04
|
||||
bne @checkkey
|
||||
|
||||
game
|
||||
; silent
|
||||
lda #0
|
||||
ldx #8
|
||||
@ sta POKEY,x
|
||||
sta POKEY2,x ; stereo
|
||||
dex
|
||||
bpl @-
|
||||
|
||||
;no glitching please (issue #67)
|
||||
lda #0
|
||||
sta $D400 ;dmactl
|
||||
sta $022F ;dmactls
|
||||
|
||||
|
||||
mva #$ff portb ;ROM switch on
|
||||
mva #$40 nmien ;only NMI interrupts, DLI disabled
|
||||
cli ;IRQ enabled
|
||||
|
||||
; and now display manual language selection screen
|
||||
mva <lngDL dlptrs
|
||||
mva >lngDL dlptrs+1
|
||||
mva #%00111110 dmactls ;set new screen width
|
||||
rts ;return to ... DOS
|
||||
|
||||
|
||||
InitEnglish
|
||||
lda ManualLangFlag
|
||||
cmp #1 ; english
|
||||
jeq StartManual
|
||||
rts
|
||||
|
||||
InitPolish
|
||||
lda ManualLangFlag
|
||||
cmp #2 ; polish
|
||||
jeq StartManual
|
||||
rts
|
||||
|
||||
//--------------------
|
||||
ManualDL
|
||||
.byte $70
|
||||
.byte $47
|
||||
.word ManTitle
|
||||
.byte $70,$70
|
||||
.byte $42
|
||||
.word ManText
|
||||
.byte $02
|
||||
.byte $41
|
||||
.word ManualDL
|
||||
; ------------------------------------------------
|
||||
ManualTexts
|
||||
ManTitle
|
||||
dta d" manual "*
|
||||
ManText
|
||||
dta d" English Manual "
|
||||
dta d" English Manual "
|
||||
;---
|
||||
ini InitEnglish
|
||||
;---
|
||||
|
||||
org ManualTexts
|
||||
dta d" instrukcja "*
|
||||
dta d" Polska instrukcja "
|
||||
dta d" Polska instrukcja "
|
||||
;---
|
||||
ini InitPolish
|
||||
;---
|
||||
|
||||
@@ -30,6 +30,9 @@ byt2 .ds 1
|
||||
|
||||
zc .ds ZCOLORS
|
||||
|
||||
org $600
|
||||
ManualLangFlag .ds 1
|
||||
|
||||
* --- BASIC switch OFF
|
||||
org $2000\ mva #$ff portb\ rts\ ini $2000
|
||||
|
||||
@@ -67,6 +70,7 @@ mother
|
||||
icl "lzss_player.asm" ; player (and data) for splash music
|
||||
|
||||
main
|
||||
mva #00 ManualLangFlag ; no manual page
|
||||
jsr init_song
|
||||
|
||||
* --- init PMG
|
||||
@@ -173,7 +177,10 @@ s0 lda #$03
|
||||
lda skctl ; ANY KEY
|
||||
and #$04
|
||||
bne skp
|
||||
|
||||
lda kbcode
|
||||
cmp #$25 ; "M" key
|
||||
bne stop
|
||||
mva #01 ManualLangFlag ; english manual page
|
||||
stop mva #$00 pmcntl ;PMG disabled
|
||||
tax
|
||||
sta:rne hposp0,x+
|
||||
@@ -196,6 +203,37 @@ stop mva #$00 pmcntl ;PMG disabled
|
||||
mva #$40 nmien ;only NMI interrupts, DLI disabled
|
||||
cli ;IRQ enabled
|
||||
|
||||
lda ManualLangFlag
|
||||
beq waitkey2release
|
||||
; and now display manual language selection screen
|
||||
mva <lngDL dlptrs
|
||||
mva >lngDL dlptrs+1
|
||||
mva #%00111110 dmactls ;set new screen width
|
||||
|
||||
; wait for key
|
||||
waitkey2
|
||||
lda skctl ; ANY KEY
|
||||
and #$04
|
||||
bne waitkey2
|
||||
lda kbcode
|
||||
cmp #$2A ; "E" key
|
||||
bne notEng
|
||||
mva #01 ManualLangFlag ; english manual page
|
||||
bne endsplash
|
||||
notEng
|
||||
cmp #$0A ; "P" key
|
||||
bne waitkey2
|
||||
mva #02 ManualLangFlag ; polish manual page
|
||||
endsplash
|
||||
;no glitching please (issue #67)
|
||||
lda #0
|
||||
sta $D400 ;dmactl
|
||||
sta $022F ;dmactls
|
||||
waitkey2release
|
||||
lda skctl ; ANY KEY
|
||||
and #$04
|
||||
beq waitkey2release
|
||||
|
||||
rts ;return to ... DOS
|
||||
skp
|
||||
|
||||
@@ -223,6 +261,23 @@ byt3 brk
|
||||
|
||||
;---
|
||||
|
||||
lngDL
|
||||
.byte $70,$70,$70,$70,$70
|
||||
.byte $47
|
||||
.word LngTitle
|
||||
.byte $70,$70
|
||||
.byte $42
|
||||
.word LngList
|
||||
.byte $50,$02
|
||||
.byte $41
|
||||
.word lngDL
|
||||
LngTitle
|
||||
dta d" select language "*
|
||||
LngList
|
||||
dta d" E - English Manual "
|
||||
dta d" P - Polska instrukcja "
|
||||
|
||||
;---
|
||||
.MACRO ANTIC_PROGRAM
|
||||
dta $70,$70
|
||||
:+8 dta $4e,a(:1+$0000+#*40)
|
||||
|
||||
@@ -160,6 +160,7 @@ FirstZpageVariable = $54
|
||||
icl 'Atari/lib/ATARISYS.ASM'
|
||||
icl 'Atari/lib/MACRO.ASM'
|
||||
icl 'artwork/splash_v2/splash.asm' ; splash screen and musix
|
||||
icl 'Atari/Manual/manual.asm' ; manuals display
|
||||
.ELIF TARGET = 5200
|
||||
OPT h-f+ ; no headers, single block --> cart bin file
|
||||
icl 'Atari/lib/5200SYS.ASM'
|
||||
|
||||
BIN
Binary file not shown.
Reference in New Issue
Block a user