📄 lib.asm
字号:
; ***************************************************************************
; * Project : Electronic Dictionary *
; * Date : 2003.9 *
; * File Name : LIB.ASM *
; ***************************************************************************
pw 128
case off
externs on
include st2202.def ;; Include ST2100 I/O define.
include Data.def ;; Data RAM define.
include Bios.h
include Graphics.h ;;
include Keydef.def
include Graph.def
include Databank.def ;02-9-13 9:00
include xyhaddr.h
include St2202.mac ;;zl.
INCLUDE TALKWORD.DEF ;;zl.
;; include dedict.h
;[M]---------------------------------[M]
; Judge if It is ShenZhouBug Item
;[M]---------------------------------[M]
LJudgeShenZhouBug Macro
lda ItemNoH
cmp #ShenZhouItemNoH
bne ?BugEnd
lda ItemNoL
cmp #ShenZhouItemNoL
bne ?BugEnd
jsr OnlyForShenZhouBug
jmp Initfind2screen
?BugEnd:
Endm
;;=====================================================
;; >>> Subrounting declare <<
;; ---------------
public LibEvent
public TextHeadaddrL
public TextHeadaddrH
public textscreenNo
public showtextt
public SetTextIconP
public TextDownKeyP
public TextUpKeyP
public TextCountNo
public selectFindFlag
public LibtextpL
public LibtextpH
public DRRCurrentText
public DRRCurrentTextL
public DRRCurrentTextH
;;=====================================================
;; >>> Constant define <<
;; ---------------
YbStartCode equ 1bh
A_charCap equ 41h
Z_CharCapInc equ 5bh
a_char equ 61h
z_charInc equ 7bh
;;=====================================================
;; >>> Data RAM define <<<
;; ---------------
;;OtherFlag equ CData+0 ;;02-4-6 8:53
DivideV equ CData+1
FBTotalItem equ CData+1 ;; for five_byte message(from 1 start)
FindCharLong equ CData+2
tzkchar2 equ CData+3
texttotal equ CData+4
;;-----------
;;YTempReg equ CData+5
ReplaceF equ CData+6
;;----------
FiveByteNo equ CData+7
;DRRf_1 equ CData+8
LibtextpL_1 equ CData+8
LibtextpH_1 equ CData+9
DRRf_1L equ CData+10
DRRf_1H equ CData+11
TextTempaddrL equ CData+13
TextTempaddrH equ CData+14
IndexInvertItem equ CData+15
IndexItemNo equ CData+16
Dspoverflag equ CData+17 ;;[0]--1:DSp over
TextCountNo equ CData+18
selectFindFlag equ CData+19
LibtextpL equ CData+20
LibtextpH equ CData+21
LibindexpL equ CData+22
LibindexpH equ CData+23
textcountNoT equ CData+24
;DRRCurrentText equ CData+25 ;; Drr of current text Head addr
DRRfL equ CData+26
DRRfH equ CData+27
;DRRT equ CData+27
WordLen equ CData+28
textheadaddrL equ CData+29
textheadaddrH equ CData+30
TextscreenNo equ CData+31
findflag equ CData+32
linecount equ CData+33
charNo equ CData+34
tzkchar equ CData+35
DRRTL equ CData+36
DRRTH equ CData+37
DRRCurrentText equ CData+38 ;; Drr of current text Head addr
DRRCurrentTextL equ CData+38 ;; Drr of current text Head addr
DRRCurrentTextH equ CData+39 ;; Drr of current text Head addr
voicelength_L equ CData+41 ;;|zl.
voicelength_H equ CData+42 ;;/
IndexNObuffor equ 700h ;;280h~~298h(25)
;;-----------
FlagBuff equ 700h ;;280h~~29dh(30)
;;----------
DspContentBuff equ 700h ;;700h~~~
;;------My Varible-----
cdict_result equ 300h ;;Buffor
vdict_Addr equ CData+54 ;;(b6h)
Edata equ 800h ;;zl.
;;==================================================================
;; Event vector table.
;;==================================================================
DS0 .SECTION ;; Data ROM location 10000h(Bank#2)
include spkbmp.asm ;;zl.
;;==================================================================
;;[V]-----------------------------------------------[V]
;; Event process vector.
;;[V]-----------------------------------------------[V]
LibEvent:
dw LibBank
dw THSec-1 ;;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -