mirror of
https://github.com/deater/dos33fsprogs.git
synced 2024-06-27 07:29:29 +00:00
peasant: move inventory to language card
This commit is contained in:
parent
929c8e50c3
commit
9235f5da0c
|
@ -24,9 +24,10 @@ peasant.dsk: QBOOT QLOAD VID_LOGO TITLE INTRO \
|
||||||
$(DOS33_RAW) peasant.dsk 4 0 VID_LOGO 0 0
|
$(DOS33_RAW) peasant.dsk 4 0 VID_LOGO 0 0
|
||||||
$(DOS33_RAW) peasant.dsk 6 0 TITLE 0 0
|
$(DOS33_RAW) peasant.dsk 6 0 TITLE 0 0
|
||||||
$(DOS33_RAW) peasant.dsk 9 0 INTRO 0 0
|
$(DOS33_RAW) peasant.dsk 9 0 INTRO 0 0
|
||||||
$(DOS33_RAW) peasant.dsk 13 0 PEASANT1 0 0
|
$(DOS33_RAW) peasant.dsk 14 0 INVENTORY 0 0
|
||||||
$(DOS33_RAW) peasant.dsk 18 0 PEASANT2 0 0
|
$(DOS33_RAW) peasant.dsk 15 0 PEASANT1 0 0
|
||||||
$(DOS33_RAW) peasant.dsk 24 0 PEASANT3 0 0
|
$(DOS33_RAW) peasant.dsk 20 0 PEASANT2 0 0
|
||||||
|
$(DOS33_RAW) peasant.dsk 25 0 PEASANT3 0 0
|
||||||
$(DOS33_RAW) peasant.dsk 30 0 PEASANT4 0 0
|
$(DOS33_RAW) peasant.dsk 30 0 PEASANT4 0 0
|
||||||
|
|
||||||
peasant_side2.dsk: WBOOT2 COPY_CHECK TROGDOR ENDING CLIFF GAME_OVER
|
peasant_side2.dsk: WBOOT2 COPY_CHECK TROGDOR ENDING CLIFF GAME_OVER
|
||||||
|
@ -185,7 +186,8 @@ intro.o: intro.s zp.inc qload.inc music.inc \
|
||||||
wait_a_bit.s draw_peasant.s hgr_text_box.s \
|
wait_a_bit.s draw_peasant.s hgr_text_box.s \
|
||||||
title.s directions.s \
|
title.s directions.s \
|
||||||
intro_cottage.s intro_lake_w.s intro_lake_e.s \
|
intro_cottage.s intro_lake_w.s intro_lake_e.s \
|
||||||
intro_river.s intro_knight.s
|
intro_river.s intro_knight.s \
|
||||||
|
new_game.s
|
||||||
ca65 -o intro.o intro.s -l intro.lst
|
ca65 -o intro.o intro.s -l intro.lst
|
||||||
|
|
||||||
###
|
###
|
||||||
|
|
|
@ -1,8 +1,10 @@
|
||||||
TODO:
|
TODO:
|
||||||
|
|
||||||
+ animation for game_over
|
+ print warning message on 48k systems that we need at least 64k
|
||||||
|
|
||||||
|
+ more frames in animation for game_over
|
||||||
+ hook up game_over for "quit" and "copy"
|
+ hook up game_over for "quit" and "copy"
|
||||||
+ music for game over
|
+ better music for game over
|
||||||
|
|
||||||
+ consolidate the lookup info for message box sizes, as in the
|
+ consolidate the lookup info for message box sizes, as in the
|
||||||
end only Y2 is changing
|
end only Y2 is changing
|
||||||
|
|
|
@ -114,57 +114,12 @@ mockingboard_notfound2:
|
||||||
;=============================
|
;=============================
|
||||||
; start new game
|
; start new game
|
||||||
;=============================
|
;=============================
|
||||||
start_new_game:
|
|
||||||
lda #LOAD_PEASANT2
|
|
||||||
sta WHICH_LOAD
|
|
||||||
|
|
||||||
;=========================
|
jmp start_new_game
|
||||||
; init peasant position
|
|
||||||
; draw at 18,108
|
|
||||||
|
|
||||||
lda #18
|
.include "new_game.s"
|
||||||
sta PEASANT_X
|
|
||||||
lda #108
|
|
||||||
sta PEASANT_Y
|
|
||||||
|
|
||||||
lda #PEASANT_DIR_RIGHT
|
|
||||||
sta PEASANT_DIR
|
|
||||||
|
|
||||||
lda #0
|
|
||||||
sta PEASANT_XADD
|
|
||||||
sta PEASANT_YADD
|
|
||||||
|
|
||||||
lda #0
|
|
||||||
sta SCORE_HUNDREDS
|
|
||||||
|
|
||||||
lda #$00
|
|
||||||
sta SCORE_TENSONES
|
|
||||||
|
|
||||||
lda #4
|
|
||||||
sta MAP_X
|
|
||||||
lda #1
|
|
||||||
sta MAP_Y
|
|
||||||
|
|
||||||
lda #$00
|
|
||||||
sta INVENTORY_1
|
|
||||||
sta INVENTORY_2
|
|
||||||
lda #INV3_SHIRT
|
|
||||||
sta INVENTORY_3
|
|
||||||
|
|
||||||
; 1100 1011
|
|
||||||
lda #$00
|
|
||||||
sta INVENTORY_1_GONE
|
|
||||||
; 0001 1101
|
|
||||||
lda #$00
|
|
||||||
sta INVENTORY_2_GONE
|
|
||||||
;
|
|
||||||
lda #$0
|
|
||||||
sta INVENTORY_3_GONE
|
|
||||||
|
|
||||||
rts
|
|
||||||
|
|
||||||
|
|
||||||
;.include "decompress_fast_v2.s"
|
|
||||||
.include "wait_keypress.s"
|
.include "wait_keypress.s"
|
||||||
|
|
||||||
.include "intro_cottage.s"
|
.include "intro_cottage.s"
|
||||||
|
@ -175,6 +130,7 @@ start_new_game:
|
||||||
|
|
||||||
.include "draw_peasant.s"
|
.include "draw_peasant.s"
|
||||||
|
|
||||||
|
;.include "decompress_fast_v2.s"
|
||||||
;.include "hgr_font.s"
|
;.include "hgr_font.s"
|
||||||
;.include "draw_box.s"
|
;.include "draw_box.s"
|
||||||
;.include "hgr_rectangle.s"
|
;.include "hgr_rectangle.s"
|
||||||
|
|
91
games/peasant/new_game.s
Normal file
91
games/peasant/new_game.s
Normal file
|
@ -0,0 +1,91 @@
|
||||||
|
; Peasant's Quest / New Game
|
||||||
|
|
||||||
|
; included by intro.s
|
||||||
|
|
||||||
|
; by Vince `deater` Weaver vince@deater.net
|
||||||
|
|
||||||
|
;=============================
|
||||||
|
; start new game
|
||||||
|
;=============================
|
||||||
|
start_new_game:
|
||||||
|
|
||||||
|
;===================================================
|
||||||
|
; load inventory code to language card $d000 bank 2
|
||||||
|
|
||||||
|
; switch in language card
|
||||||
|
; read/write RAM, $d000 bank 2
|
||||||
|
|
||||||
|
lda $C083
|
||||||
|
lda $C083
|
||||||
|
|
||||||
|
; actually load it
|
||||||
|
lda #LOAD_INVENTORY
|
||||||
|
sta WHICH_LOAD
|
||||||
|
|
||||||
|
jsr load_file
|
||||||
|
|
||||||
|
|
||||||
|
; start in PEASANT2 file
|
||||||
|
|
||||||
|
lda #LOAD_PEASANT2
|
||||||
|
sta WHICH_LOAD
|
||||||
|
|
||||||
|
;=========================
|
||||||
|
; init peasant position
|
||||||
|
; draw at 18,108
|
||||||
|
|
||||||
|
lda #18
|
||||||
|
sta PEASANT_X
|
||||||
|
lda #108
|
||||||
|
sta PEASANT_Y
|
||||||
|
|
||||||
|
; set direction
|
||||||
|
|
||||||
|
lda #PEASANT_DIR_RIGHT
|
||||||
|
sta PEASANT_DIR
|
||||||
|
|
||||||
|
; set not walking
|
||||||
|
|
||||||
|
lda #0
|
||||||
|
sta PEASANT_XADD
|
||||||
|
sta PEASANT_YADD
|
||||||
|
|
||||||
|
; set score to 0
|
||||||
|
|
||||||
|
lda #0
|
||||||
|
sta SCORE_HUNDREDS
|
||||||
|
|
||||||
|
lda #$00
|
||||||
|
sta SCORE_TENSONES
|
||||||
|
|
||||||
|
; map location
|
||||||
|
|
||||||
|
lda #4
|
||||||
|
sta MAP_X
|
||||||
|
lda #1
|
||||||
|
sta MAP_Y
|
||||||
|
|
||||||
|
; inventory is only t-shirt
|
||||||
|
|
||||||
|
lda #$00
|
||||||
|
sta INVENTORY_1
|
||||||
|
sta INVENTORY_2
|
||||||
|
lda #INV3_SHIRT
|
||||||
|
sta INVENTORY_3
|
||||||
|
|
||||||
|
; inventory items gone
|
||||||
|
|
||||||
|
; 1100 1011
|
||||||
|
lda #$00
|
||||||
|
sta INVENTORY_1_GONE
|
||||||
|
; 0001 1101
|
||||||
|
; lda #$00
|
||||||
|
sta INVENTORY_2_GONE
|
||||||
|
;
|
||||||
|
; lda #$00
|
||||||
|
sta INVENTORY_3_GONE
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
rts
|
||||||
|
|
|
@ -196,7 +196,7 @@ which_disk_array:
|
||||||
.byte 1,1,1,2 ; VID_LOGO, TITLE, INTRO. COPY_CHECK
|
.byte 1,1,1,2 ; VID_LOGO, TITLE, INTRO. COPY_CHECK
|
||||||
.byte 1,1,1,1 ; PEASANT1, PEASANT2, PEASANT3, PEASANT4
|
.byte 1,1,1,1 ; PEASANT1, PEASANT2, PEASANT3, PEASANT4
|
||||||
.byte 2,2,1,2 ; TROGDOR, ENDING, MUSIC, CLIFF
|
.byte 2,2,1,2 ; TROGDOR, ENDING, MUSIC, CLIFF
|
||||||
.byte 2,1,1,1 ; GAME_OVER
|
.byte 2,1,1,1 ; GAME_OVER, INVENTORY
|
||||||
.byte 1 ;
|
.byte 1 ;
|
||||||
.byte 1,1,1,1,1 ; SAVE1, SAVE2, SAVE3
|
.byte 1,1,1,1,1 ; SAVE1, SAVE2, SAVE3
|
||||||
.byte $f ; disk detect
|
.byte $f ; disk detect
|
||||||
|
@ -205,7 +205,7 @@ load_address_array:
|
||||||
.byte $60,$60,$60,$60 ; VID_LOGO, TITLE, INTRO, COPY_CHECK
|
.byte $60,$60,$60,$60 ; VID_LOGO, TITLE, INTRO, COPY_CHECK
|
||||||
.byte $60,$60,$60,$60 ; PEASANT1, PEASANT2, PEASANT3, PEASANT4
|
.byte $60,$60,$60,$60 ; PEASANT1, PEASANT2, PEASANT3, PEASANT4
|
||||||
.byte $60,$60,$D0,$60 ; TROGDOR, ENDING, MUSIC, CLIFF
|
.byte $60,$60,$D0,$60 ; TROGDOR, ENDING, MUSIC, CLIFF
|
||||||
.byte $60,$40,$40,$40 ; GAME_OVER
|
.byte $60,$D0,$40,$40 ; GAME_OVER, INVENTORY
|
||||||
.byte $08 ;
|
.byte $08 ;
|
||||||
.byte $BC,$BC,$BC,$0A ; SAVE1, SAVE2, SAVE3
|
.byte $BC,$BC,$BC,$0A ; SAVE1, SAVE2, SAVE3
|
||||||
.byte $0A ;
|
.byte $0A ;
|
||||||
|
@ -213,9 +213,9 @@ load_address_array:
|
||||||
|
|
||||||
track_array:
|
track_array:
|
||||||
.byte 4, 6, 9,1 ; VID_LOGO, TITLE, INTRO, COPY_CHECK
|
.byte 4, 6, 9,1 ; VID_LOGO, TITLE, INTRO, COPY_CHECK
|
||||||
.byte 13,18,24,30 ; PEASANT1, PEASANT2, PEASANT3, PEASANT4
|
.byte 15,20,25,30 ; PEASANT1, PEASANT2, PEASANT3, PEASANT4
|
||||||
.byte 19,24, 3,29 ; TROGDOR, ENDING, MUSIC, CLIFF
|
.byte 19,24, 3,29 ; TROGDOR, ENDING, MUSIC, CLIFF
|
||||||
.byte 3,32,28,30 ; GAME_OVER
|
.byte 3,14,28,30 ; GAME_OVER, INVENTORY
|
||||||
.byte 0 ;
|
.byte 0 ;
|
||||||
.byte 0, 0, 0, 0, 0 ; SAVE1, SAVE2, SAVE3
|
.byte 0, 0, 0, 0, 0 ; SAVE1, SAVE2, SAVE3
|
||||||
.byte 0 ; disk detect
|
.byte 0 ; disk detect
|
||||||
|
@ -224,7 +224,7 @@ sector_array:
|
||||||
.byte 0, 0, 0, 0 ; VID_LOGO, TITLE, INTRO, COPY_CHECK
|
.byte 0, 0, 0, 0 ; VID_LOGO, TITLE, INTRO, COPY_CHECK
|
||||||
.byte 0, 0, 0, 0 ; PEASANT1, PEASANT2, PEASANT3, PEASANT4
|
.byte 0, 0, 0, 0 ; PEASANT1, PEASANT2, PEASANT3, PEASANT4
|
||||||
.byte 0, 0, 0, 0 ; TROGDOR, ENDING, MUSIC, CLIFF
|
.byte 0, 0, 0, 0 ; TROGDOR, ENDING, MUSIC, CLIFF
|
||||||
.byte 0,13, 0, 1 ; GAME_OVER
|
.byte 0, 0, 0, 1 ; GAME_OVER, INVENTORY
|
||||||
.byte 6 ;
|
.byte 6 ;
|
||||||
.byte 11,12,13,14,15 ; SAVE1, SAVE2, SAVE3
|
.byte 11,12,13,14,15 ; SAVE1, SAVE2, SAVE3
|
||||||
.byte 0 ; disk detect
|
.byte 0 ; disk detect
|
||||||
|
@ -233,7 +233,7 @@ length_array:
|
||||||
.byte 32, 50, 60, 20 ; VID_LOGO, TITLE, INTRO, COPY_CHECK
|
.byte 32, 50, 60, 20 ; VID_LOGO, TITLE, INTRO, COPY_CHECK
|
||||||
.byte 80, 88, 88, 80 ; PEASANT1, PEASANT2, PEASANT3, PEASANT4
|
.byte 80, 88, 88, 80 ; PEASANT1, PEASANT2, PEASANT3, PEASANT4
|
||||||
.byte 80, 80, 16, 80 ; TROGDOR, ENDING, MUSIC, CLIFF
|
.byte 80, 80, 16, 80 ; TROGDOR, ENDING, MUSIC, CLIFF
|
||||||
.byte 16, 33, 27, 78 ; GAME_OVER
|
.byte 16, 16, 27, 78 ; GAME_OVER, INVENTORY
|
||||||
.byte 3 ;
|
.byte 3 ;
|
||||||
.byte 1,1,1,1,1 ; SAVE1, SAVE2, SAVE3
|
.byte 1,1,1,1,1 ; SAVE1, SAVE2, SAVE3
|
||||||
.byte 1 ; disk detect
|
.byte 1 ; disk detect
|
||||||
|
|
|
@ -234,6 +234,7 @@ LOAD_ENDING = 9
|
||||||
LOAD_MUSIC = 10
|
LOAD_MUSIC = 10
|
||||||
LOAD_CLIFF = 11
|
LOAD_CLIFF = 11
|
||||||
LOAD_GAME_OVER = 12
|
LOAD_GAME_OVER = 12
|
||||||
|
LOAD_INVENTORY = 13
|
||||||
|
|
||||||
LOAD_SAVE1 = 17
|
LOAD_SAVE1 = 17
|
||||||
LOAD_SAVE2 = 18
|
LOAD_SAVE2 = 18
|
||||||
|
|
Loading…
Reference in New Issue
Block a user