📄 change.asm
字号:
lda #<stat_E_x
jmp copy_fac_to_display_and_ret
stat_count_status5:
lda #>stat_E_x_2
tay
lda #<stat_E_x_2
jmp copy_fac_to_display_and_ret
stat_count_status6:
lda #>stat_value_n
tay
lda #<stat_value_n
jmp copy_fac_to_display_and_ret
stat_count_status8:
lda #>stat_max_value
tay
lda #<stat_max_value
jsr copy_data_to_arg
lda #>stat_min_value
tay
lda #<stat_min_value
jsr copy_data_to_fac
jsr jsr_sub
stz fac_sgn
jmp stat_disp_result
cnt_E_x_2_sub_E_2_x_div_n:
lda stat_n
sta stat_n_bak
lda hs_stack_dptrl
pha
lda hs_stack_dptrh
pha
jsr clearnum_hs
jsr copy_fac_to_argbak
?_nt_x___dt_continue:
jsr pop_arg_from_hs_data_stack
lda #>stat_x__
tay
lda #<stat_x__
jsr copy_data_to_fac
jsr ljsr
dw SciBank
dw FSUBT_S-1
jsr copy_fac_to_arg
jsr ljsr
dw SciBank
dw FMULTT_S-1
jsr copy_argbak_to_arg
jsr ljsr
dw SciBank
dw FADDT_S-1
jsr copy_fac_to_argbak
dec stat_n_bak
bne ?_nt_x___dt_continue
pla
sta hs_stack_dptrh
pla
sta hs_stack_dptrl
lda fac_sgn
bpl ?_rts
jsr clear_fac
?_rts:
rts
;====================================================
RetMenu_area:
jmp TLoad_0
area_conversion_process:
jsr if_unit_exchange_key
bpl ?is_unit_exchange_key
jmp jmplmain
?is_unit_exchange_key:
stz float_bit
lda <KeyNo
cmp #EscKey
beq RetMenu_area
lda input_status
asl
tax
lda area_input_status+1,x
pha
lda area_input_status,x
pha
rts
;====================================================
area_input_status_0:
lda #bit_if_count
sta hs_flag
lda <KeyNo
cmp #DownKey
bne ?11111
jsr add_which_item
jmp disp_the_last_sub_menu_in_area
?11111:
cmp #UpKey
bne ?11112
jsr dec_which_item
jmp disp_the_last_sub_menu_in_area
?11112:
cmp #EnterKey
beq ?11113
cmp #ac_key
beq ?11113
jmp jmplmain
?11113:
jmp _11113
;====================================================
area_input_status_1:
lda <KeyNo
cmp #DownKey
bne ?fdsfdsf
jmp _1111xx
?fdsfdsf:
cmp #upKey
bne ?rrsfdsf
jmp _1111xx
?rrsfdsf:
cmp #ac_key
bne ?11113
jmp _11113
?11113:
cmp #EnterKey
beq ?11115
jmp data_input_in_length
?11115:
lda hs_flag
and #bit_if_count
beq ?11118
jmp jmplmain
?11118:
lda hs_flag
ora #bit_if_count
sta hs_flag
jsr jsr_fin
lda which_item
asl
tax
lda area_modulus_tab+1,x
tay
lda area_modulus_tab,x
jsr copy_tab_to_arg
jsr ljsr_mul
jmp _display_clr_hs_and_ret
;====================================================
RetMenu_valume:
jmp TLoad_0
valume_conversion_process:
jsr if_unit_exchange_key
bpl ?is_unit_exchange_key
jmp jmplmain
?is_unit_exchange_key:
stz float_bit
lda <KeyNo
cmp #EscKey
beq RetMenu_valume
lda input_status
asl
tax
lda valume_input_status+1,x
pha
lda valume_input_status,x
pha
rts
;====================================================
valume_input_status_0:
lda #bit_if_count
sta hs_flag
lda <KeyNo
cmp #DownKey
bne ?11111
jsr add_which_item
jmp disp_the_last_sub_menu_in_valume
?11111:
cmp #UpKey
bne ?11112
jsr dec_which_item
jmp disp_the_last_sub_menu_in_valume
?11112:
cmp #EnterKey
beq ?11113
cmp #ac_key
beq ?11113
jmp jmplmain
?11113:
jmp _11113
;====================================================
valume_input_status_1:
lda <KeyNo
cmp #DownKey
bne ?fdsfdsf
jmp _1111xx
?fdsfdsf:
cmp #upKey
bne ?rrsfdsf
jmp _1111xx
?rrsfdsf:
cmp #ac_key
bne ?11113
jmp _11113
?11113:
cmp #EnterKey
beq ?11115
jmp data_input_in_length
?11115:
lda hs_flag
and #bit_if_count
beq ?11118
jmp jmplmain
?11118:
lda hs_flag
ora #bit_if_count
sta hs_flag
jsr jsr_fin
lda which_item
asl
tax
lda valume_modulus_tab+1,x
tay
lda valume_modulus_tab,x
jsr copy_tab_to_arg
jsr ljsr_mul
jmp _display_clr_hs_and_ret
;====================================================
RetMenu_weight:
jmp TLoad_0
weight_conversion_process:
jsr if_unit_exchange_key
bpl ?is_unit_exchange_key
jmp jmplmain
?is_unit_exchange_key:
stz float_bit
lda <KeyNo
cmp #EscKey
beq RetMenu_weight
lda input_status
asl
tax
lda weight_input_status+1,x
pha
lda weight_input_status,x
pha
rts
;====================================================
weight_input_status_0:
lda #bit_if_count
sta hs_flag
lda <KeyNo
cmp #DownKey
bne ?11111
jsr add_which_item
jmp disp_the_last_sub_menu_in_weight
?11111:
cmp #UpKey
bne ?11112
jsr dec_which_item
jmp disp_the_last_sub_menu_in_weight
?11112:
cmp #EnterKey
beq ?11113
cmp #ac_key
beq ?11113
jmp jmplmain
?11113:
jmp _11113
;====================================================
weight_input_status_1:
lda <KeyNo
cmp #DownKey
bne ?fdsfdsf
jmp _1111xx
?fdsfdsf:
cmp #upKey
bne ?rrsfdsf
jmp _1111xx
?rrsfdsf:
cmp #ac_key
bne ?11113
jmp _11113
?11113:
cmp #EnterKey
beq ?11115
jmp data_input_in_length
?11115:
lda hs_flag
and #bit_if_count
beq ?11118
jmp jmplmain
?11118:
lda hs_flag
ora #bit_if_count
sta hs_flag
jsr jsr_fin
lda which_item
asl
tax
lda weight_modulus_tab+1,x
tay
lda weight_modulus_tab,x
jsr copy_tab_to_arg
jsr ljsr_mul
jmp _display_clr_hs_and_ret
;====================================================
RetMenu_temperature:
jmp TLoad_0
temperature_conversion_process:
jsr if_unit_exchange_key
bpl ?is_unit_exchange_key
jmp jmplmain
?is_unit_exchange_key:
stz float_bit
lda <KeyNo
cmp #EscKey
beq RetMenu_temperature
lda input_status
asl
tax
lda temperature_input_status+1,x
pha
lda temperature_input_status,x
pha
rts
;====================================================
temperature_input_status_0:
lda #bit_if_count
sta hs_flag
lda <KeyNo
cmp #DownKey
bne ?11111
jsr add_which_item
jmp disp_the_last_sub_menu_in_temperature
?11111:
cmp #UpKey
bne ?11112
jsr dec_which_item
jmp disp_the_last_sub_menu_in_temperature
?11112:
cmp #EnterKey
beq ?11113
cmp #ac_key
beq ?11113
jmp jmplmain
?11113:
jmp _11113
;====================================================
temperature_input_status_1:
lda <KeyNo
cmp #DownKey
bne ?fdsfdsf
jmp _1111xx
?fdsfdsf:
cmp #upKey
bne ?rrsfdsf
jmp _1111xx
?rrsfdsf:
cmp #ac_key
bne ?11113
jmp _11113
?11113:
cmp #EnterKey
beq ?11115
jmp data_input_in_length
?11115:
lda hs_flag
and #bit_if_count
beq ?11118
jmp jmplmain
?11118:
lda hs_flag
ora #bit_if_count
sta hs_flag
jsr jsr_fin
lda which_item
bne ?fc_to_sc
;==================================================
lda #>tab_1d8
tay
lda #<tab_1d8
jsr copy_tab_to_arg
jsr ljsr_mul
lda #>tab_32d0
tay
lda #<tab_32d0
jsr copy_tab_to_arg
jsr LJSR
dw SciBank
dw FADDT_S-1
bra ?tempera_count_ok
;==================================================
?fc_to_sc:
lda #>tab_32d0
tay
lda #<tab_32d0
jsr copy_tab_to_arg
lda 80h
sta arg_sgn
jsr LJSR
dw SciBank
dw FADDT_S-1
lda #>tab_0d555
tay
lda #<tab_0d555
jsr copy_tab_to_arg
jsr ljsr_mul
?tempera_count_ok:
jmp _display_clr_hs_and_ret
;===========================================================
RetMenu_tax_new_rate:
jmp TLoad_0
input_tax_rate_process:
jsr if_extra_tax_key
bpl ?if_extra_tax_key
jmp jmplmain
?if_extra_tax_key:
stz float_bit
lda <KeyNo
cmp #EscKey
beq RetMenu_tax_new_rate
cmp #ac_key
beq ?ac_key_input_in_tax_new_rate
lda input_status
bne ?if_enter_key_in_tax_new_rate
bra if_digit_input_in_tax_new_rate
?ac_key_input_in_tax_new_rate:
jsr input_bit_to_dec_hexflag
jmp _11113
?if_enter_key_in_tax_new_rate:
lda <KeyNo
cmp #EnterKey
beq ?new_tax_set_now
bra if_digit_input_in_tax_new_rate
?new_tax_set_now:
jsr jsr_fin
jsr copy_fac_to_arg
lda #>tab_100d0
tay
lda #<tab_100d0
jsr copy_tab_to_fac
lda #00h
jsr ljsr
dw SciBank
dw FDIVT_S-1
lda #>tax_rate
tay
lda #<tax_rate
jsr copy_fac_to_data
jsr jsrlcls
lprint set_finish
jsr delay_0d5s
jsr clearnum_hs
jmp tload_0
if_digit_input_in_tax_new_rate:
ldx #33
_d00000:
lda change_KeyNum,x
cmp <KeyNo
beq _d11111111
dex
bpl _d00000
jmp jmplmain
_d11111111:
lda change_KeyParity1,x
cmp #0bh
bcc _d222222
jmp jmplm
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -