mirror of
https://github.com/deater/dos33fsprogs.git
synced 2025-01-11 09:29:51 +00:00
tfv: map mostly working
This commit is contained in:
parent
36695657c0
commit
57764239cc
@ -87,9 +87,9 @@ exit:
|
||||
.include "tfv_utils.s"
|
||||
.include "tfv_title.s"
|
||||
.include "tfv_textentry.s"
|
||||
.include "tfv_info.s"
|
||||
.include "tfv_flying.s"
|
||||
.include "tfv_worldmap.s"
|
||||
.include "tfv_info.s"
|
||||
|
||||
;===============================================
|
||||
; Variables
|
||||
|
@ -1,7 +1,106 @@
|
||||
|
||||
game_over:
|
||||
lda #$a0
|
||||
jsr clear_top_a
|
||||
|
||||
bit SET_TEXT
|
||||
|
||||
lda #10
|
||||
sta CV
|
||||
lda #15
|
||||
sta CH
|
||||
|
||||
lda #>(game_over_man)
|
||||
sta OUTH
|
||||
lda #<(game_over_man)
|
||||
sta OUTL
|
||||
|
||||
jsr move_and_print
|
||||
|
||||
jsr page_flip
|
||||
|
||||
hang_forever:
|
||||
jmp hang_forever
|
||||
|
||||
rts
|
||||
|
||||
game_over_man:
|
||||
.asciiz "GAME OVER"
|
||||
|
||||
show_map:
|
||||
|
||||
lda DRAW_PAGE
|
||||
clc
|
||||
adc #$4
|
||||
sta BASH
|
||||
lda #$00
|
||||
sta BASL
|
||||
|
||||
lda #>(map_rle)
|
||||
sta GBASH
|
||||
lda #<(map_rle)
|
||||
sta GBASL
|
||||
jsr load_rle_gr
|
||||
|
||||
|
||||
; basic_plot(8+((map_x&0x3)*6)+(tfv_x/6),
|
||||
; 8+(((map_x&0xc)>>2)*6)+(tfv_y/6))
|
||||
|
||||
; horizontal
|
||||
|
||||
lda MAP_X
|
||||
and #3
|
||||
asl
|
||||
sta TEMP
|
||||
asl
|
||||
clc
|
||||
adc TEMP ; ( MAP_X & 3 ) * 6
|
||||
sta TEMP
|
||||
|
||||
lda TFV_X
|
||||
lsr
|
||||
lsr
|
||||
lsr ; TFV/8
|
||||
|
||||
adc TEMP
|
||||
adc #8
|
||||
sta CH
|
||||
|
||||
; vertical
|
||||
|
||||
lda MAP_X
|
||||
and #$c
|
||||
lsr
|
||||
sta TEMP
|
||||
asl
|
||||
clc
|
||||
adc TEMP ; ( MAP_X & C ) * 6
|
||||
sta TEMP
|
||||
|
||||
lda TFV_Y
|
||||
lsr
|
||||
lsr
|
||||
lsr ; TFV/8
|
||||
|
||||
adc TEMP
|
||||
adc #8
|
||||
lsr ; divide by 2 as htab_vtab multiplies
|
||||
sta CV
|
||||
|
||||
jsr htab_vtab
|
||||
lda #$19 ; red/orange
|
||||
ldy #0
|
||||
sta (BASL),Y
|
||||
|
||||
|
||||
jsr page_flip
|
||||
|
||||
jsr wait_until_keypressed
|
||||
|
||||
rts
|
||||
|
||||
|
||||
|
||||
print_help:
|
||||
lda #$a0
|
||||
jsr clear_top_a
|
||||
|
@ -437,10 +437,10 @@ put_sprite_done_draw:
|
||||
|
||||
|
||||
;================================
|
||||
; move_and_print
|
||||
; htab_vtab
|
||||
;================================
|
||||
; move to CH/CV
|
||||
move_and_print:
|
||||
htab_vtab:
|
||||
lda CV
|
||||
asl
|
||||
tay
|
||||
@ -454,6 +454,15 @@ move_and_print:
|
||||
sta BASH ; and store it out
|
||||
; BASH:BASL now points at right place
|
||||
|
||||
rts
|
||||
|
||||
;================================
|
||||
; move_and_print
|
||||
;================================
|
||||
; move to CH/CV
|
||||
move_and_print:
|
||||
jsr htab_vtab
|
||||
|
||||
;================================
|
||||
; print_string
|
||||
;================================
|
||||
|
@ -162,7 +162,7 @@ worldmap_handle_map:
|
||||
cmp #('M')
|
||||
bne worldmap_done_keyboard
|
||||
|
||||
; jsr show_map
|
||||
jsr show_map
|
||||
inc REFRESH
|
||||
|
||||
worldmap_done_keyboard:
|
||||
|
@ -108,6 +108,7 @@ COLOR_YELLOW EQU 13
|
||||
COLOR_AQUA EQU 14
|
||||
COLOR_WHITE EQU 15
|
||||
|
||||
COLOR_BOTH_RED EQU $11
|
||||
COLOR_BOTH_DARKBLUE EQU $22
|
||||
COLOR_BOTH_GREY EQU $55
|
||||
COLOR_BOTH_MEDIUMBLUE EQU $66
|
||||
|
Loading…
x
Reference in New Issue
Block a user