⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 card.asm

📁 辞典 dict3.asm.grammar.asm,newword.asm 学习 learn.asm 名片 userinf.asm 备忘 userinf.asm 提醒 userinf
💻 ASM
📖 第 1 页 / 共 3 页
字号:
SelectXingMsg:  db      '  请选择欲查询的姓',0
InputConMsg:	db      '请输入欲查询的内容: ',0
NomatchCrad:    db      0dh,0dh,'    无相符的记录',0
;;starstring:     db      '********************',0
;;CheckInto:      db      '********************',0
;;-----------------------------------------------------------
FindTitle:      db      '        名片查找',0dh          ;;0
FindSelectItems:
BaiFindMsg:     db      '   1.按姓名查找',0dh
RenFindMsg:     db      '   2.按组别查找',0dh
                db      '   3.按关键字组别',00h

SelectRelationStr:      db      '请选择组别:',0
FriendRelat:    db      '1.朋友',0
schoolmate:     db      '2.同学',0
ColleagueRelat: db      '2.同事',0
OperationRelat: db      '3.业务',0
FamilyRelat:    db      '4.亲属',0
OtherRelat:     db      '5.其他',0

;;--------  edit data  ----------------------------------------

EYuanXin:				;small image data
        DB      8,5
        DB      02H,84H,88H,50H,20H
CardRelatSelect:
        db      88,41
	DB	0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FEH
	DB	080H,000H,000H,000H,000H,000H,000H,000H,000H,000H,003H
	DB	080H,000H,000H,000H,000H,000H,000H,000H,000H,000H,003H
	DB	09EH,0F0H,020H,000H,000H,007H,0FEH,028H,080H,000H,003H
	DB	092H,090H,021H,000H,000H,004H,002H,015H,000H,000H,003H
	DB	092H,093H,0FFH,080H,000H,005H,0FAH,0FFH,0E0H,000H,003H
	DB	09EH,0F0H,020H,000H,000H,004H,002H,080H,020H,000H,003H
	DB	092H,090H,03EH,000H,000H,005H,0FAH,0BFH,040H,000H,003H
	DB	092H,090H,022H,000H,000H,005H,00AH,002H,000H,000H,003H
	DB	09EH,0F0H,052H,000H,000H,005H,00AH,004H,000H,000H,003H
	DB	092H,090H,054H,000H,000H,005H,0FAH,0FFH,0E0H,000H,003H
	DB	092H,090H,088H,000H,000H,005H,00AH,004H,000H,000H,003H
	DB	093H,011H,016H,000H,000H,004H,002H,004H,000H,000H,003H
	DB	0A6H,072H,0E1H,080H,000H,004H,006H,01CH,000H,000H,003H
	DB	080H,000H,000H,000H,000H,000H,000H,000H,000H,000H,003H
	DB	0BFH,0F0H,010H,000H,000H,000H,090H,011H,000H,000H,003H
	DB	0A0H,013H,0FFH,080H,000H,000H,090H,01FH,080H,000H,003H
	DB	0AFH,0D0H,092H,000H,000H,000H,090H,031H,000H,000H,003H
	DB	0A0H,010H,092H,000H,000H,008H,092H,04AH,000H,000H,003H
	DB	0AFH,0D1H,0FFH,000H,000H,004H,092H,086H,000H,000H,003H
	DB	0A8H,050H,011H,000H,000H,004H,094H,019H,080H,000H,003H
	DB	0A8H,053H,0FFH,080H,000H,002H,098H,0E4H,060H,000H,003H
	DB	0AFH,0D0H,011H,000H,000H,002H,090H,03FH,080H,000H,003H
	DB	0A8H,051H,0FFH,000H,000H,000H,090H,008H,080H,000H,003H
	DB	0A0H,010H,010H,000H,000H,000H,090H,010H,080H,000H,003H
	DB	0A0H,030H,030H,000H,000H,00FH,0FEH,067H,000H,000H,003H
	DB	080H,000H,000H,000H,000H,000H,000H,000H,000H,000H,003H
	DB	081H,001H,0FFH,000H,000H,001H,010H,021H,000H,000H,003H
	DB	09FH,0F1H,001H,000H,000H,00FH,0FEH,021H,000H,000H,003H
	DB	084H,041H,0FFH,000H,000H,001H,010H,029H,000H,000H,003H
	DB	082H,081H,008H,000H,000H,001H,0F0H,029H,0C0H,000H,003H
	DB	0BFH,0F9H,07FH,000H,000H,001H,010H,06FH,040H,000H,003H
	DB	081H,001H,049H,000H,000H,001H,0F0H,0B9H,040H,000H,003H
	DB	09FH,0F1H,07FH,000H,000H,001H,010H,029H,040H,000H,003H
	DB	081H,001H,008H,000H,000H,001H,010H,029H,0C0H,000H,003H
	DB	089H,041H,07FH,080H,000H,00FH,0FEH,029H,020H,000H,003H
	DB	091H,021H,048H,080H,000H,002H,008H,028H,020H,000H,003H
	DB	0A7H,012H,05DH,080H,000H,00CH,004H,027H,0E0H,000H,003H
	DB	080H,000H,000H,000H,000H,000H,000H,000H,000H,000H,003H
	DB	0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH
	DB	07FH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH

;--------New Card add Help---
curcardnamehelp:
        db      '上,下键选择;',0dh
        db      '[输入]键确认选项;',0dh
        db      '[返回]键返回.',0
selectxinghelp:
        db      '左,右键浏览姓;',0dh
        db      '数字键选中对应的姓',0dh
        db      '[返回]键返回.',0
selectrelathelp:
        db      '上,下,左,右键选择;',0dh
        db      '[输入]键确认选项;',0dh
        db      '[返回]键返回.',0
;;======================================================================
PS7             .SECTION                ;; Program ROM location 4000h
BankNo          equ     CardBank        ;; For check only.
					;; (zl.) define in data.def
;;======================================================================
THSec:
TSec:
TMin:
TKeyUp:
TTimer:
Exitwithoutupdate:
ExitNoUpdate:
        rmb3    <eflag			;;Clear KeyDown event flag.
        LMainU				;;跳回主程序但不Update text screen zl.
;;======================================================================
;;[P]-----------------------------[P]
;;       Help Return 事件
;;[P]-----------------------------[P]
THelpRet:
        lda     HelpRtPrc+1		;;run like call process zl.
        pha
        lda     HelpRtPrc
        pha
        rts

;;-------CardHelpTable------
CardHelpTab:
        db      GamePWHelp-HelpTable      ;;0.密码输入状态
        db      CardEditHelp-HelpTable    ;;1.名片编辑状态
        db      SelectRelatHelp-Helptable ;;2.编辑名片关系选择状态
        db      NullHelp-HelpTable        ;;3.询问保存状态
        db      RemarkVAhelp-HelpTable    ;;4.浏览名片姓名状态
        db      CardConVHelp-HelpTable    ;;5.浏览名片内容状态
        db      NullHelp-HelpTable        ;;6.询问删除状态
        db      NullHelp-HelpTable        ;;7.选择查询方式状态??
        db      SelectXingHelp-HelpTable  ;;8.选择百家姓状态
        db      SelectRelatHelp-Helptable ;;9.选择查找名片关系状态
        db      NullHelp-HelpTable        ;;10.编辑任意字状态
        db      CurCardNameHelp-HelpTable ;;11.浏览常用名片状态
        db      CurCardNameHelp-HelpTable ;;12.按姓浏览名片姓名状态
        db      CurCardNameHelp-HelpTable ;;13.按关系浏览名片姓名状态
        db      NullHelp-HelpTable        ;;14.空间满按任意键返回主菜单
        db	NullHelp-HelpTable	  ;;15.No Card Record State

;;-----CardHelpRetTable-----
CardHelpRetTab:
        ;dw      TLoad-1                 ;;0.密码输入状态
        ;dw      AmendViewFun_0-1        ;;1.名片编辑状态
        ;dw      AmendViewFun_0-1        ;;2.编辑名片关系选择状态??
        ;dw      EditBoxEnter_000-1      ;;3.询问保存状态
        ;dw      TLoad_3-1               ;;4.浏览名片姓名状态
        ;dw      ViewNameEnter_0-1       ;;5.浏览名片内容状态
        ;dw      ViewNameDelete-1        ;;6.询问删除状态
        ;dw      ViewNameFind_0-1        ;;7.选择查询方式状态
        ;dw      InitSelectXing-1        ;;8.选择百家姓状态
        ;dw      InitSelecRelatFind-1    ;;9.选择查找名片关系状态
        ;dw      InitEditRenYiZi-1       ;;10.编辑任意字状态
        ;dw      InitDspCurCard-1        ;;11.浏览常用名片状态
        ;dw      EntBJXSelect_0-1        ;;12.按姓浏览名片姓名状态
        ;dw      FindRelateEnter-1       ;;13.按关系浏览名片姓名状态
        ;dw      LoadNameCard-1          ;;14.空间满按任意键返回主菜单
        ;dw      TLoad-1                 ;;15.No Card Record State

;---------- card help process ------------
CardHelpPrc:				;;get value of <HelpOffset zl.
        ldy     <GameState		;;
        lda     CardHelpTab,y		;;
        sta     <HelpOffset		;;define in help.asm (hdata+0) zl
        				;;(<helpoffset)=(cardhelptab)+y
;---------------------
        cpy     #2			;;
        beq     ?SelectRelatHelpBug	;;
        cpy     #9
        beq     ?SelectRelatHelpBug
        cpy     #8
        beq     ?SelectXingHelpBug
        cpy     #11
        bcc     ?UnHelpBug		;;branch less than (carry flag clear) zl.
        cpy     #14
        bcs     ?UnHelpBug		;;branch greater or equal  zl.
        lda     #>CurCardNameHelp	;;
        sta     HelpTextPH
        lda     #<CurCardNameHelp
        bra     ?Com000			;;branch always zl.
?SelectRelatHelpBug:
        lda     #>SelectRelatHelp
        sta     HelpTextPH		;;define in the help.asm
        lda     #<SelectRelatHelp
        bra     ?Com000
?SelectXingHelpBug:
        lda     #>SelectXingHelp
        sta     HelpTextPH
        lda     #<SelectXingHelp
?Com000:
        sta     HelpTextPL
        lda     #Ds0Help		;Constant define in the help.asm zl.
        sta     <HelpOffset
?UnHelpBug:
;---------------------
        rts

;;[p]------------------------[p]
;;       Enter Mode 事件
;;[p]------------------------[p]
TLoad:
;;      lda     #11111001b
;;      sta     event_kill

        LSetScreen      14		;;define in graphics.h zl.
        LReadSecretCodeToBuff           ;;2-4-25 17:10 su
        				;;zl.把FLASH里的密码读进RAM的FDATA里 define in bios.h
	stz	<CardFlag		;;
        lda     #0FFh                   ;; Load a = 0FFh
        cmp     DataSecretCode
        beq     LoadNameCard            ;; Skip if don't need secret code.
        sta     <SecretCode0            ;; Initial SecretCode.
        sta     <SecretCode1
        sta     <SecretCode2
        sta     <SecretCode3
        sta     <SecretCode4
        sta     <SecretCode5
        sta     <SecretCode6
        sta     <SecretCode7

        LPrint  CheckInto
        LCheckCRLF
        LPrint  SCHintMsg1              ;; Print "请输入密码" on TExtBuffor.
        LCheckCRLF                      ;; Check & skip to next line.
        LPrint  SCHintMsg2              ;; Print "--------" on TextBuffor.
        lsetcur 0,4
        LPrint  starstring
        lda     #SecCodeInN
        sta     <GameState
        stz     <SCCounter
        jsr     CardHelpPrc
ExitToMain:
        jsr	CALL_LUpdateScreen
        jmp     ExitWithoutUpdate

LoadNameCard:
        stz     <FileClase
        stz     <StartNamePos
	stz	<CardFlag	;

        jsr     ReadCardNo
        lda     <TotalCardNoL
        bne     ViewNameCard
        lda     <TotalCardNoH
        bne     ViewNameCard
        lcls
        LSetCur 7,1
        LPrint  NoRecordMessage
        jsr	CALL_LUpdateScreen

        lda     #0
        ldy     #0
?1:     sta     CurCardBuff,y	;清近访名片BUFF
        iny
        cpy     #11
        bcc     ?1

        lda	#NoCardRecordN
        sta	<GameState
        jsr     CardHelpPrc
        jmp     Exitwithoutupdate

EditNewCard:
        stz     <RelatItem
        jsr     InitEditBox

EnterEditState:
        lda     #EditBoxEnterN
        sta     <GameState
        jsr     CardHelpPrc
        jmp     ExitToMain

ViewNameCard:
        stz     <CurCardNoL
        stz     <CurCardNoH
        stz     <CurCardOff
        stz     <CurCardOffBak
TLoad_3:
        lda     #ViewCardNameN
        sta     <GameState

        jsr     CardHelpPrc

;*********************************************************************
;----------- subroutine ----------------------------------------------
;*********************************************************************

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -