📄 net.asm
字号:
jmp ReSendLinkCommand
;;;\\\\\\\\\\\\\\\\\\\\\\\
;;;
;;; 游戏和资料才能删除
;;;
;;;///////////////////////
ViewLibDelet:
lda <FileClase
cmp #1 ;游戏
beq ?_1
cmp #2 ;资料
beq ?_1
jmp jmp_LMAINU
?_1:
Lsetscreen_to_ds0 1
LPrint DeletConfirmMsg
smb2 <NetFlag ;置删除标志
jmp jmp_LMAIN
DeletLibKeyPrc:
lda <KeyNo
cmp #YKey
beq DeletLibRecord
cmp #NKey
bne DeletLibKeyPrc_0
rmb2 <NetFlag
jmp InitShowName
DeletLibKeyPrc_0:
jmp ErrorKeyDown
DeletLibRecord:
LSetscreen 1
LPrint DeletHintMsg
jsr CALL_LUpdateScreen
rmb2 <NetFlag ;清除删除标志
lda <GameState
cmp #1
bne ?_1
jsr DelGameRecord ;删游戏
jmp InitShowName
?_1:
jsr LJSR
dw RemarkBank
dw DeleteCurRecord-1 ;删资料
jmp InitShowName
DelGameRecord:
jsr LJSR
dw RemarkBank
dw DeleteCurRecord-1
jsr LJSR
dw RemarkBank
dw ToFindDataINS-1
clc
lda <INSL
adc #35
sta <INSL
lda <INSH
adc #0
sta <INSH
ldy #0
lda (<INS),y
sta GameSectorNo
Sta BGameSectorNo
iny
lda (<INS),y
sta GameLen_Count4k
sta BGameLen_Count4k
lda #87H
sta <DrrL
stz <DrrH
?_2:
lda GameSectorNo
asl
tay
lda ProAbsPosInFlash,y
sta <INDL
lda ProAbsPosInFlash+1,y ;Program address Hight
sta <INDH
jsr LJSR
dw biosbank
dw SectorErase-1
jsr InitGameData
dec GameLen_Count4k
beq ?_1
inc GameSectorNo
bra ?_2
?_1:
lda BGameLen_Count4k
sta GameLen_Count4k
lda BGameSectorNo
sta GameSectorNo
;!@#$@#$%#$%^%&Q@#$%%$^&%@#$%^@#%^@%
lda #>flashbank
sta <DrrH
lda #<FlashBank
sta <DrrL
stz <INDL ;;FlashBuffor 清B0区
lda #0b0h
sta <INDH
jsr Ljsr
dw Biosbank
dw SectorErase-1
stz <INSL
lda #80h
sta <INSH
write_loop:
lda (<INS)
tax
WriteByte_X
inc <INSL
bne write_loop
inc <INSH
lda <INSH
cmp #90h
bcc write_loop
stz <INDL ;;清80区
lda #80h
sta <INDH
jsr Ljsr
dw Biosbank
dw SectorErase-1
stz <INSL
lda #0b0h
sta <INSH
Rewrite_loop:
lda <INSH
cmp #b0h
bne ?_1
clc
lda GameSectorNo
adc #0CH ;40h
cmp <INSL
bne ?_1
lda GameLen_count4k
beq ?_1
ldx #0ffh
WriteByte_X
dec GameLen_count4k
inc GameSectorNo
bra ?_2
?_1:
lda (<INS)
tax
WriteByte_X
?_2:
inc <INSL
bne Rewrite_loop
inc <INSH
lda <INSH
cmp #0C0h
bcc Rewrite_loop
rts
Init_LjsrDataForGame:
;--------------程序跳转接口160BYTES
stz <INDL
ldy #0
?_21: lda 4000h,y
tax
WriteByte_X
iny
cpy #71H ;0a0h
bcc ?_21
rts
LibConKeyTbl:
db UpKey
db DownKey
db EscKey
db NullKey
LibConKeyFun:
dw UpLibView-1
dw DownLibView-1
dw EscLibView-1
ViewLibContext:
ldy #0ffh
ViewLibContext_0:
iny
lda LibConKeyTbl,y
bpl ViewLibContext_1
jmp ErrorKeyDown
ViewLibContext_1:
cmp <KeyNo
bne ViewLibContext_0
tya
asl
tay
lda LibConKeyFun+1,y
pha
lda LibConKeyFun,y
pha
rts
UpLibView:
lda <TextScreenNo
beq DownLibView_0
dec <TextScreenNo
jmp ViewLibEnter_0
DownLibView:
bbr4 <SelectFindFlag,DownLibView_0 ;取自Old5180Net
inc <TextScreenNo
jmp ViewLibEnter_0
DownLibView_0:
jmp jmp_LMAINU
EscLibView:
stz <GameState
jmp InitLibNameList
;[X]---------------------------------------------------[X];
;<\\\\\\\\\\\\\\************************\\\\\\\\\\\\\\\\\>;
;<\\\\\\\\****** 上传数据 *******\\\\\\\\\\>;
;<\\\\\\\\\\\\\\************************\\\\\\\\\\\\\\\\\>;
;[X]---------------------------------------------------[X];
BackAllCardToPC:
stz DataClass ;名片
bra NowStartSend
BackAllMemoToPC:
lda #3 ;备忘
sta DataClass
bra NowStartSend
BackAllCountToPC:
lda #4 ;理财
sta DataClass
NowStartSend:
rmb1 <NetFlag ;0 全部上传
Lsetscreen_to_ds0 1
LPrint ConnectPCMsg ;正在寻找通信对象
jsr CALL_LUpdateScreen
lda #80h
sta <INSH
lda #88h
sta <INSL
jsr ToFindOtherData
bbs3 <NetFlag,?_1
lda #<Ds0Bank
sta <DrrL
lda #>Ds0Bank
sta <DrrH
LCls
LPrint NoThingToSendMsg
jmp jmp_LMAIN
?_1:
jsr LJSR
dw biosbank
dw StartSIO-1
lda #6
sta Try
ReSendLinkCommand:
dec Try
bne ?_1
jmp LinkError_2
?_1:
ldx #LinkCommand
jsr LJSR
dw biosbank
dw SendByte-1
rmb4 <DataComeFlag
lda #8
sta <DelayTime
WaitReadyAck_SendHead:
bbs4 <DataComeFlag,JudgeReadyAck
jsr Delay10Second
bcc WaitReadyAck_SendHead
bra ReSendLinkCommand
JudgeReadyAck:
rmb4 <DataComeFlag
lda <UData
cmp #HeadAck_92H ;#ReadyAck
beq Up_LinkToPCOK
bra ReSendLinkCommand
Up_LinkToPCOK:
Lsetscreen_to_ds0 1
LPrint ReceivingMsg ;数据传输中...
jsr CALL_LUpdateScreen
lda #6
sta Try
Up_LinkToPCOK_0:
dec Try
bne ?_1
jmp LinkError_2
?_1:
ldx #ReadyAck_A5H
jsr LJSR
dw biosbank
dw SendByte-1
jsr SendOtherHead
rmb4 <DataComeFlag
stz <DelayTime
WaitAck_GoStatus_2OR3:
bbs4 <DataComeFlag,JudgeReadyAck_2
jsr Delay10Second
bcc WaitAck_GoStatus_2OR3
jmp LinkError_2
JudgeReadyAck_2:
rmb4 <DataComeFlag
lda <UData
cmp #ReadyAck_A5H
beq up_SendData
lda <UData
cmp #HeadAck_92H
beq Up_LinkToPCOK_0
lda <UData
cmp #FullAck
bne ?_1
jsr LJSR
dw biosbank
dw StopSIO-1
lda #>DS0Bank
sta <DrrH
lda #<DS0Bank
sta <DrrL
LCls
LPrint FlashOtherOver
jmp jmp_LMAIN
?_1:
bra WaitAck_GoStatus_2OR3
Up_SendData:
jsr SendOtherData
stz <DelayTime
rmb4 <DataComeFlag
WaitAck_GoStatus_3OR4:
bbs4 <DataComeFlag,JudgeReadyAck_3
jsr Delay10Second
bcc WaitAck_GoStatus_3OR4
jmp LinkError_2
JudgeReadyAck_3:
rmb4 <DataComeFlag
lda <UData
cmp #ReadyAck_96H
beq UpSendOK
cmp #ReadyAck_A5H
beq Up_SendData
bra WaitAck_GoStatus_3OR4
UpSendOK:
bbr1 <NetFlag,?_1
bra UpSendAllOk
?_1:
lda BINSL
sta <INSL
lda BINSH
sta <INSH
jsr ToFindOtherData
bbr3 <NetFlag,UpSendAllOk
lda #6
sta Try
jmp ReSendLinkCommand
UpSendAllOk:
ldx #OverFlag
jsr LJSR
dw biosbank
dw SendByte-1
jsr LJSR
dw biosbank
dw StopSIO-1
LSetscreen_to_ds0 1
LPrint UpLoadOver
jmp jmp_LMAIN
SendOtherHead:
stz CheckSumL
stz CheckSumH
clc
lda CheckSumL
adc DataClass
sta CheckSumL
lda CheckSumH
adc #0
sta CheckSumH
clc
lda CheckSumL
adc DataNameL
sta CheckSumL
lda CheckSumH
adc #0
sta CheckSumH
clc
lda CheckSumL
adc DataNameH
sta CheckSumL
lda CheckSumH
adc #0
sta CheckSumH
clc
lda CheckSumL
adc DataLenL
sta CheckSumL
lda CheckSumH
adc #0
sta CheckSumH
clc
lda CheckSumL
adc DataLenH
sta CheckSumL
lda CheckSumH
adc #0
sta CheckSumH
clc
lda CheckSumL
adc Relation ;名片属性
sta CheckSumL
lda CheckSumH
adc #0
sta CheckSumH
lda #0FFh
Eor CheckSumL
sta CheckSumL
lda #0FFh
Eor CheckSumH
sta CheckSumH
clc
lda CheckSumL
adc #1
sta CheckSumL
lda CheckSumH
adc #0
sta CheckSumH
ldx CheckSumL
jsr LJSR
dw biosbank
dw SendByte-1
ldx CheckSumH
jsr LJSR
dw biosbank
dw SendByte-1
ldx DataClass
jsr LJSR
dw biosbank
dw SendByte-1
ldx DataNameL
jsr LJSR
dw biosbank
dw SendByte-1
ldx DataNameH
jsr LJSR
dw biosbank
dw SendByte-1
ldx DataLenL
jsr LJSR
dw biosbank
dw SendByte-1
ldx DataLenH
jsr LJSR
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -