📄 24dot.asm
字号:
db 46h,16h,18h,31h,15h,67h,16h,61h,19h
db 70h,14h,22h,16h,02h,14h,10h,0ffh,0ffh
db 52h,14h,25h,15h,45h,14h,12h,0ffh,0ffh
db 05h,14h,12h,15h,66h,14h,73h,0ffh,0ffh
db 18h,73h,15h,08h,19h,16h,66h,15h,26h
db 32h,14h,61h,16h,18h,46h,14h,06h,19h
db 51h,14h,12h,15h,25h,14h,26h,0ffh,0ffh
db 70h,16h,24h,15h,27h,15h,29h,0ffh,0ffh
db 18h,70h,16h,41h,14h,42h,19h,16h,22h
db 42h,16h,04h,16h,12h,17h,44h,0ffh,0ffh
db 69h,15h,18h,06h,15h,31h,19h,16h,23h
db 11h,14h,69h,15h,67h,14h,71h,0ffh,0ffh
db 52h,16h,27h,15h,25h,16h,32h,0ffh,0ffh
db 10h,16h,64h,15h,68h,15h,28h,0ffh,0ffh
db 44h,16h,12h,15h,22h,16h,32h,0ffh,0ffh
db 22h,16h,18h,10h,14h,62h,19h,16h,61h
db 12h,15h,62h,16h,18h,43h,15h,49h,19h
db 48h,14h,71h,15h,45h,14h,50h,0ffh,0ffh
db 12h,16h,18h,30h,15h,68h,16h,61h,19h
db 51h,14h,52h,15h,01h,14h,02h,0ffh,0ffh
db 61h,16h,18h,73h,16h,01h,14h,11h,19h
db 18h,30h,14h,41h,19h,16h,42h,14h,22h
db 32h,16h,30h,17h,41h,17h,45h,0ffh,0ffh
db 06h,16h,18h,53h,15h,67h,15h,62h,19h
db 05h,17h,25h,16h,42h,16h,52h,0ffh,0ffh
db 46h,17h,18h,41h,15h,29h,17h,32h,19h
db 28h,16h,63h,16h,33h,17h,13h,0ffh,0ffh
db 22h,16h,18h,12h,15h,51h,19h,16h,52h
db 12h,14h,65h,15h,42h,14h,49h,0ffh,0ffh
db 71h,15h,13h,17h,18h,03h,15h,04h,19h
db 12h,16h,21h,16h,22h,17h,61h,0ffh,0ffh
db 63h,16h,18h,31h,15h,61h,16h,23h,19h
db 44h,16h,12h,16h,24h,17h,28h,0ffh,0ffh
db 12h,16h,18h,05h,15h,21h,15h,22h,19h
db 24h,16h,30h,15h,53h,15h,43h,0ffh,0ffh
db 68h,14h,61h,16h,18h,23h,14h,33h,19h
db 24h,15h,70h,16h,18h,29h,15h,31h,19h
db 18h,73h,14h,66h,19h,17h,01h,14h,05h
db 72h,16h,04h,16h,42h,17h,44h,0ffh,0ffh
db 43h,16h,18h,11h,15h,49h,19h,16h,44h
db 62h,17h,31h,16h,51h,16h,52h,0ffh,0ffh
db 62h,15h,18h,02h,15h,44h,19h,16h,51h
db 18h,65h,15h,24h,19h,16h,12h,16h,02h
db 18h,62h,14h,52h,19h,16h,61h,14h,70h
db 04h,16h,01h,16h,03h,14h,12h,0ffh,0ffh
db 66h,14h,70h,16h,21h,14h,28h,0ffh,0ffh
db 03h,16h,13h,15h,05h,15h,10h,0ffh,0ffh
db 68h,16h,18h,52h,15h,44h,15h,45h,19h
db 22h,16h,52h,16h,73h,17h,53h,0ffh,0ffh
db 12h,16h,18h,31h,15h,61h,16h,69h,19h
db 18h,33h,14h,31h,19h,17h,21h,17h,41h
db 28h,14h,18h,50h,14h,46h,19h,16h,41h
db 18h,10h,16h,01h,15h,44h,19h,16h,64h
db 18h,12h,14h,28h,19h,16h,01h,14h,04h
db 12h,16h,05h,15h,26h,16h,66h,0ffh,0ffh
db 61h,16h,18h,27h,14h,12h,19h,14h,05h
db 12h,14h,18h,73h,14h,71h,19h,17h,62h
db 18h,72h,14h,50h,19h,17h,01h,14h,02h
db 31h,14h,69h,15h,49h,14h,53h,0ffh,0ffh
db 72h,16h,63h,15h,26h,16h,22h,0ffh,0ffh
db 31h,14h,52h,15h,51h,14h,12h,0ffh,0ffh
db 29h,16h,52h,15h,72h,16h,67h,0ffh,0ffh
db 18h,51h,14h,43h,19h,16h,41h,14h,50h
db 03h,16h,18h,52h,15h,22h,19h,15h,26h
db 72h,16h,08h,17h,24h,16h,21h,0ffh,0ffh
db 44h,16h,52h,15h,06h,16h,04h,0ffh,0ffh
db 24h,16h,18h,33h,15h,66h,15h,61h,19h
db 01h,16h,72h,16h,18h,27h,15h,25h,19h
db 04h,15h,44h,16h,18h,48h,15h,53h,19h
db 26h,16h,18h,71h,15h,41h,16h,47h,19h
db 48h,16h,18h,52h,15h,09h,16h,01h,19h
db 04h,14h,01h,16h,18h,12h,14h,08h,19h
db 71h,15h,13h,17h,18h,03h,15h,04h,19h
db 18h,26h,14h,46h,19h,17h,41h,14h,52h
db 69h,14h,18h,50h,14h,05h,19h,17h,01h
db 28h,16h,45h,15h,03h,15h,13h,0ffh,0ffh
db 44h,14h,01h,16h,18h,07h,14h,13h,19h
db 69h,15h,18h,06h,15h,31h,19h,16h,23h
db 44h,16h,18h,51h,15h,04h,19h,15h,24h
db 18h,12h,16h,21h,15h,69h,19h,16h,68h
db 18h,42h,16h,63h,15h,44h,19h,16h,52h
db 52h,15h,26h,16h,18h,11h,15h,13h,19h
db 71h,14h,66h,15h,62h,14h,69h,0ffh,0ffh
db 31h,14h,72h,15h,42h,14h,43h,0ffh,0ffh
db 18h,12h,15h,28h,16h,41h,19h,16h,46h
db 18h,33h,14h,63h,19h,17h,21h,14h,28h
db 71h,16h,18h,41h,14h,61h,19h,14h,62h
db 45h,14h,27h,16h,61h,14h,72h,0ffh,0ffh
db 32h,14h,73h,15h,68h,14h,67h,0ffh,0ffh
db 48h,16h,53h,15h,68h,16h,70h,0ffh,0ffh
db 53h,16h,01h,14h,71h,16h,61h,0ffh,0ffh
db 32h,14h,02h,17h,41h,14h,50h,0ffh,0ffh
db 18h,32h,15h,11h,19h,16h,04h,16h,06h
db 18h,52h,14h,66h,19h,16h,61h,14h,06h
db 68h,14h,10h,15h,45h,14h,51h,0ffh,0ffh
;;===========================================================================
ram_start_addr equ 700h
dot24_temp equ ram_start_addr+0
dot24_temp1 equ ram_start_addr+1
second_count3 equ ram_start_addr+2
second_count2 equ ram_start_addr+3
second_count1 equ ram_start_addr+4
dot24_timeflag equ ram_start_addr+5
dot24_coordinatebak equ ram_start_addr+6
dig_flag equ ram_start_addr+7
ox_bak equ ram_start_addr+8
oy_bak equ ram_start_addr+9
rom_index equ ram_start_addr+10
copy_index equ ram_start_addr+11
start_flag equ ram_start_addr+12
dot24_drr equ ram_start_addr+13
random_no equ ram_start_addr+14
random_no1 equ ram_start_addr+15
pai_a_property equ ram_start_addr+16
pai_b_property equ ram_start_addr+17
pai_c_property equ ram_start_addr+18
pai_d_property equ ram_start_addr+19
pai_a equ ram_start_addr+20
pai_b equ ram_start_addr+21
pai_c equ ram_start_addr+22
pai_d equ ram_start_addr+23
data_buffor equ ram_start_addr+24
input_string equ ram_start_addr+50
input_string_norm equ ram_start_addr+70
data_stack: equ ram_start_addr+100
opstack: equ ram_start_addr+200
datastack_point equ ram_start_addr+220
datastack_point1 equ ram_start_addr+221
opstack_point equ ram_start_addr+222
key_code equ ram_start_addr+223
op_buffer equ ram_start_addr+224
brace_num equ ram_start_addr+225
char_num_norm equ ram_start_addr+226
count_index equ ram_start_addr+227
which_game equ ram_start_addr+228
second_count3bak equ ram_start_addr+229
second_count2bak equ ram_start_addr+230
second_count1bak equ ram_start_addr+231
;;=====================================================
max_no equ 2h
time_position equ 128
code_plus equ 14h
code_sub equ 15h
code_mul equ 16h
code_div equ 17h
code_lbracket equ 18h
code_rbracket equ 19h
code_del equ 1ch
DATA_SIZE equ 06h
;;=====================================================
;;=====================================================
ps7 .SECTION
BankNo equ _24dot_bank
;;=====================================================
;=====================================================
prr_to_drr:
lda <image_addrh
clc
adc #40h
sta <image_addrh
lda <prrh
lsr
sta <drrh
lda <prrl
ror
sta <DRRl
bcs ?1111111_111111
lda <image_addrh
adc #40h
sta <image_addrh
?1111111_111111:
rts
;============================================================================
_24dot_hsec:
dot24er_hal_24dot_sec:
lda start_flag
and #80h
beq ?not_menu_mode
jmp jmplmainu
?not_menu_mode:
lda #01h
eor dot24_timeflag
sta dot24_timeflag
lda #time_position+8 ;;7
sta <ox
lda #02h
sta <oy
lda dot24_timeflag
and #01h
bne ?xxxxxxxxxxxxx
loclrimage flash_dot
bra ?if_flash_cursor
?xxxxxxxxxxxxx:
loprintimage flash_dot
?if_flash_cursor:
lda start_flag
and #0c0h
beq ?89ew5iod
jmp ?not_flash_all
?89ew5iod:
jsr get_cursor_coordinate
lda dot24_timeflag
and #01h
bne ?_flash_disp_X
loclrimage cursor_block
jmp jmplmain
?_flash_disp_X:
jsr get_cursor_coordinate
loprintimage cursor_block
?not_flash_all:
jmp jmplmain
_24dot_sec:
lda start_flag
and #0c0h
bne _not_count_second
lda second_count1
beq to_count_down_second2
dec second_count1
bra to_display_time_common
to_count_down_second2:
?eworjew:
lda second_count2
beq to_count_down_second3
lda #9
sta second_count1
dec second_count2
bra to_display_time_common
to_count_down_second3:
dec second_count3
bmi to_display_failure_msgbox
lda #5
sta second_count2
lda #9
sta second_count1
bra to_display_time_common
to_display_failure_msgbox:
lda start_flag
ora #40h
sta start_flag
jmp _failure_process
to_display_time_common:
jsr display_second_time
jmp jmplmain
_not_count_second:
jmp jmplmainu
;;=================================================
_24dot_load:
stz which_game
display_game_menu_24dot:
lda <DRR ;;;;帮助
sta DRR_RT
lda <DRRh ;;;;帮助
sta DRR_RTh
lda #Ds0Help
sta <HelpOffset
lda #<display_game_menu_24dot-1
sta HelpRtPrc
lda #>display_game_menu_24dot-1
sta HelpRtPrc+1
lda #>_24dothelp
sta helptextph
lda #<_24dothelp
sta helptextpl
lda #07h
sta dot24_timeflag
lda #0c0h
sta start_flag
lsetscreen 1
ldy #00h
alsdkjfl:
lda GameTitle1,y
sta InputBuff,y
beq ?alsdkjfl
iny
bra alsdkjfl
?alsdkjfl:
LPrint InputBuff
lupdatescreen
ldy #00h
jsr init_class_time
lda which_game
and #01h
beq ?8393021
ldy #16
jsr high_class_time
?8393021:
sty <OY
stz <OX
LBlockInvert 90,16
jmp jmplmainu
display_menu:
jmp display_game_menu_24dot
bomb_menu_key_down:
lda <keyno
cmp #DownKey
bne ?00030
inc which_game
lda which_game
cmp #max_no
bne display_menu
stz which_game
bra display_menu
?00030:
cmp #UpKey
bne ?00031
dec which_game
lda which_game
bpl display_menu
lda #max_no-1
sta which_game
bra display_menu
?00031:
cmp #EscKey
bne ?00032
;;================================
;;ESC 键退出到 ---> 已下载游戏菜单:
?liu_add_here:
stz <ExtraMode
lda #>Els_Return-1
pha
lda #<Els_Return-1
pha
lda #>GameBank
pha
lda #<GameBank
jmp longgo
?00032:
cmp #EnterKey
beq bomberStart
jmp jmplmainu
bomberStart:
lda <sec
and #7fh
sta random_no1
asl
asl
and #7fh
sta random_no
bomber_restart:
lda second_count3bak
sta second_count3
lda second_count2bak
sta second_count2
lda second_count1bak
sta second_count1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -