www.pudn.com > bak22.rar > Print.asm, change:2006-05-30,size:14267b


PrID: 
         CALL EnUart 
         CALL TxChg 
         R1='I' 
         CALL TxByte 
         R1='D' 
         CALL TxByte 
         R1='=' 
         CALL TxByte 
         R1=' ' 
         CALL TxByte 
         PC=DiUart 
 
PrReset: 
         CALL EnUart 
         CALL TxChg 
         R1='R' 
         CALL TxByte 
         R1='e' 
         CALL TxByte 
         R1='s' 
         CALL TxByte 
         R1='e' 
         CALL TxByte 
         R1='t' 
         CALL TxByte 
         PC=DiUart 
 
PrOff: 
         CALL EnUart 
         CALL TxChg 
         R1='O' 
         CALL TxByte 
         R1='f' 
         CALL TxByte 
         R1='f' 
         CALL TxByte 
         PC=DiUart 
 
PrVerify: 
         CALL EnUart 
         CALL TxChg 
         R1='V' 
         CALL TxByte 
         R1='e' 
         CALL TxByte 
         R1='r' 
         CALL TxByte 
         R1='i' 
         CALL TxByte 
         R1='f' 
         CALL TxByte 
         R1='y' 
         CALL TxByte 
         PC=DiUart 
 
PrPgm: 
         CALL EnUart 
         CALL TxChg 
         R1='P' 
         CALL TxByte 
         R1='G' 
         CALL TxByte 
         R1='M' 
         CALL TxByte 
         PC=DiUart 
 
PrErase: 
         CALL EnUart 
         CALL TxChg 
         R1='E' 
         CALL TxByte 
         R1='r' 
         CALL TxByte 
         R1='a' 
         CALL TxByte 
         R1='s' 
         CALL TxByte 
         R1='e' 
         CALL TxByte 
         PC=DiUart 
 
PrOk: 
         CALL EnUart 
         CALL TxChg 
PrOk_: 
         R1='O' 
         CALL TxByte 
         R1='K' 
         CALL TxByte 
         PC=DiUart 
 
PrintDetail: 
         R1=[_TestCnt] 
         R1+=1 
         CMP R1, [_MaxTestCnt] 
         JNB PrintDetailAdj 
         [_TestCnt]=R1 
         RETF 
PrintDetailAdj: 
         R1=0 
         [_TestCnt]=R1 
         R4=0x18 
         CALL AdjCommBuf 
         R4=0x10 
         CALL PrintWordBuf 
         CALL EnUart 
PrintDetailSub: 
         R3=_CommBuf+PV0H 
         R4=_CommBuf+PV0L 
         R5=8 
PrintDetailSub0: 
         R1=[R4++] 
         R1-=[R3++] 
         CALL TxSWord 
         R5-=1 
         JNE PrintDetailSub0 
         CALL TxChg 
PrintDetail_: 
         R2=7 
         CALL TxMNull 
         R1='Y' 
         CALL TxByte 
         CALL TxNull 
         CALL TxEQU 
         CALL TxNull 
         R1=[_CommBuf+YBase] 
         CALL TxWord 
         R2=9 
         CALL TxMNull 
         R1='X' 
         CALL TxByte 
         CALL TxNull 
         CALL TxEQU 
         CALL TxNull 
         R1=[_CommBuf+XBase] 
         CALL TxWord 
         CALL TxChg 
         PC=DiUart 
 
PrintBlockMess: 
         CALL EnUart 
         CALL TxChg 
         R1='B' 
         CALL TxByte 
         CALL TxNull 
         CALL TxLine 
         CALL TxLine 
         CALL TxNull 
         R1=[_MaxDealLevel] 
         JNE PrintBlockMess_ 
PrintBlockMessBlank: 
         R1='B' 
         CALL TxByte 
         R1='l' 
         CALL TxByte 
         R1='a' 
         CALL TxByte 
         R1='n' 
         CALL TxByte 
         R1='k' 
         CALL TxByte 
         CALL TxChg 
         PC=DiUart 
 
PrintBlockMess_: 
         R1='B' 
         CALL TxByte 
         CALL TxDD 
         R1=[_PlayBlock] 
         CALL TxHex 
 
         R1='F' 
         CALL TxByte 
         CALL TxDD 
         R1=[_FileNumber] 
         CALL TxHex 
 
         R1='A' 
         CALL TxByte 
         CALL TxDD 
         R1=[_PlayBank] 
         CALL TxHex 
         CALL TxLine 
         CALL TxNull 
         R1=[_PlayAddr] 
         CALL TxWord 
         R4=[_FileNumber] 
         JNE PrintBlockMessBlockFile 
PrintBlockMessBlockNoFile: 
         CALL TxChg 
         R1='N' 
         CALL TxByte 
         R1='o' 
         CALL TxByte 
         JMP PrintBlockMessBlockFileEnd 
PrintBlockMessBlockFile: 
         R3=[_PlayAddr] 
         R4=[_PlayBank] 
PrintBlockMessBlockFile0: 
PrintBlockMessBlockFileEnd:          
         CALL TxChg 
         PC=DiUart 
 
PrintCoord: 
         CALL EnUart 
         R1=[_PrintFlag] 
         R1+=1 
         R1&=0xff0f 
         [_PrintFlag]=R1 
         R1-=1 
         R1&=0x03 
         JNE PrintCoord_ 
         CALL TxChg 
PrintCoord_: 
         R1='X' 
         CALL TxByte 
         CALL TxEQU 
         R1=[_XCoord] 
         CALL HexDec 
         CALL TxWord 
         R1='Y' 
         CALL TxByte 
         CALL TxEQU 
         R1=[_YCoord] 
         CALL HexDec 
         CALL TxWord 
         CALL TxNull 
         CALL TxNull 
         PC=DiUart 
 
PrintErr: 
         R2=R1 
         CALL EnUart 
         CALL TxChg 
         R1='E' 
         CALL TxByte 
         R1='r' 
         CALL TxByte 
         R1='r' 
         CALL TxByte 
         CALL TxDD 
         R1=R2 
         CALL TxHex 
         PC=DiUart 
 
PrintAdjResult: 
         R4=3 
         CALL AdjCommBuf2 
         CALL EnUart 
         CALL TxChg 
         R1='X' 
         CALL TxByte 
         CALL TxEQU 
         R1=[_CommBuf+AdjXBi] 
         CALL TxWord 
         R1='Y' 
         CALL TxByte 
         CALL TxEQU 
         R1=[_CommBuf+AdjYBi] 
         CALL TxWord 
         R1='A' 
         CALL TxByte 
         CALL TxEQU 
         R1=[_CommBuf+AdjABi] 
         CALL TxWord 
         R1='P' 
         CALL TxByte 
         CALL TxEQU 
         R1=[_CommBuf+RAdjP] 
         CALL TxHex 
         R1='N' 
         CALL TxByte 
         CALL TxEQU 
         R1=[_CommBuf+RAdjN] 
         CALL TxHex 
         PC=DiUart 
 
TxPlay: 
         R4=R1 
         CALL EnUart 
         CALL TxChg 
         R1='P' 
         CALL TxByte 
         CALL TxDD 
         R1=R4 
         CALL TxWord 
         PC=DiUart 
 
PrintDealMess: 
         R3=R1 
         CALL EnUart 
         CALL TxChg 
         R1='D' 
         CALL TxByte 
         CALL TxDD 
         CALL TxNull 
         R1='X' 
         CALL TxByte 
         CALL TxEQU 
         R1=[_XValue] 
         CALL HexDec 
         CALL Tx3Nibble 
         R1='Y' 
         CALL TxByte 
         CALL TxEQU 
         R1=[_YValue] 
         CALL HexDec 
         CALL Tx3Nibble 
         CMP R3, 0 
         JNE PrintDealMessBlank 
         R1='S' 
         CALL TxByte 
         CALL TxEQU 
         R1=[_PrevDealBlock] 
         CALL TxWord 
         PC=DiUart 
PrintDealMessBlank: 
         R1='B' 
         CALL TxByte 
         R1='l' 
         CALL TxByte 
         R1='a' 
         CALL TxByte 
         R1='n' 
         CALL TxByte 
         R1='k' 
         CALL TxByte 
         PC=DiUart 
 
PrintByteBuf: 
         CALL EnUart 
         CALL TxChg 
         R3=_CommBuf 
PrintByteBuf0: 
         R1=R3 XOR _CommBuf 
         R1&=0x0f 
         JNE PrintByteBuf_ 
         CALL TxChg 
PrintByteBuf_: 
         R1=[R3] 
         CALL TxHex 
         R3+=1 
         R4-=1 
         JNE PrintByteBuf0 
         CALL TxChg 
         PC=DiUart 
 
PrintBaseData: 
         R4=0x21 
         CALL AdjCommBuf 
         CALL EnUart 
         CALL TxChg 
         R4=0x21 
PrintWordBuf: 
         CALL EnUart 
         R3=_CommBuf 
PrintWordBuf0: 
         R1=R3 XOR _CommBuf 
         R1&=0x07 
         JNE PrintWordBuf_ 
         CALL TxChg 
PrintWordBuf_: 
         CALL TxNull 
         R1=[R3] 
         CALL TxWord 
         R3+=1 
         R4-=1 
         JNE PrintWordBuf0 
         CALL TxChg 
         PC=DiUart 
 
AdjCommBuf2: 
         R2=_CommBuf+2 
         R3=_CommBuf+2 
         JMP AdjCommBuf0 
AdjCommBuf: 
         R2=_CommBuf 
         R3=_CommBuf 
AdjCommBuf0: 
         R1=[R3++] 
         R1=R1 LSL 4 
         R1=R1 LSL 4 
         R1|=[R3++] 
         [R2++]=R1 
         R4-=1 
         JNE AdjCommBuf0 
         RETF 
 
HexDec: 
         R2=R1 
         R1=0 
HexDec1000: 
         CMP R2, 1000 
         JB HexDec100 
         R1+=0x1000 
         R2-=1000 
         JMP HexDec1000 
HexDec100: 
         CMP R2, 100 
         JB HexDec10 
         R1+=0x100 
         R2-=100 
         JMP HexDec100 
HexDec10: 
         CMP R2, 10 
         JB HexDecE 
         R1+=0x10 
         R2-=10 
         JMP HexDec10 
HexDecE:          
         R1+=R2 
         RETF 
 
         .ifdef TRACE 
PrintHe: 
         R2=R1 
         CALL EnUart 
         R1=R2 
         CALL TxHex1 
         PC=DiUart 
         .endif 
 
 
PrintHe: 
         R4=R1 
         CALL EnUart 
         R1=R4 
         CALL TxHex1 
         PC=DiUart 
 
 
PrintDTData: 
         .ifdef CDDEBUG 
         CALL EnUart 
         R1=0x0d 
         CALL TxByte 
         R1='T' 
         CALL TxByte 
         R1='x' 
         CALL TxByte 
         R1=' ' 
         CALL TxByte 
         R1=R4 LSR 4 
         R1=R1 LSR 4 
         CALL TxHex 
         R1=R4&0xff 
         CALL TxHex 
         PC=DiUart 
         .endif 
         RETF 
 
PrintDTErr: 
         .ifdef CDDEBUG 
         CALL EnUart 
         R1=0x0d 
         CALL TxByte 
         R1='T' 
         CALL TxByte 
         R1='x' 
         CALL TxByte 
         R1=' ' 
         CALL TxByte 
         R1='E' 
         CALL TxByte 
         R1='r' 
         CALL TxByte 
         R1='r' 
         CALL TxByte 
         R1=R4 
         CALL TxHex 
         R1=R3 
         CALL TxHex 
         PC=DiUart 
         .endif 
         RETF 
 
PrintRDErr: 
         .ifdef CDDEBUG 
         CALL EnUart 
         R1=0x0d 
         CALL TxByte 
         R1='R' 
         CALL TxByte 
         R1='x' 
         CALL TxByte 
         R1=' ' 
         CALL TxByte 
         R1='E' 
         CALL TxByte 
         R1='r' 
         CALL TxByte 
         R1='r' 
         CALL TxByte 
         R1=R4 
         CALL TxHex 
         PC=DiUart 
         .endif 
         RETF 
 
PrintRDData: 
         .ifdef CDDEBUG 
         CALL EnUart 
         R1=0x0d 
         CALL TxByte 
         R1='R' 
         CALL TxByte 
         R1='x' 
         CALL TxByte 
         R1=' ' 
         CALL TxByte 
         R1=R3 LSR 4 
         R1=R1 LSR 4 
         CALL TxHex 
         R1=R3&0xff 
         CALL TxHex 
         PC=DiUart 
         .endif 
         RETF 
 
PrintDSLCommBlock: 
         CALL EnUart 
         CALL TxChg 
         R1='B' 
         CALL TxByte 
         R1=':' 
         CALL TxByte 
         R1=[_PlayBlock] 
         CALL TxHex 
         R1=' ' 
         CALL TxByte 
         R5=_CommBuf 
         R4=[R5++] 
         R1=R4 
         CALL TxHex 
         CMP R4, 0 
         JE PrintDSLCommBlockEnd 
PrintDSLCommBlock10: 
         R1=[R5++] 
         CALL TxHex 
         R1=[R5++] 
         CALL TxHex 
         R4-=1 
         JNE PrintDSLCommBlock10 
PrintDSLCommBlock2: 
         R4=[_CommBuf] 
PrintDSLCommBlock20: 
         R1=[R5] 
         CALL TxHex 
         R1=[R5++] 
         CMP R1, 0xff 
         JNE PrintDSLCommBlock20 
         R4-=1 
         JNE PrintDSLCommBlock20 
         CALL DiUart 
PrintDSLCommBlockEnd: 
         RETF 
 
                  
PrintValue: 
         CALL EnUart 
         CALL TxChg 
         R1='X' 
         CALL TxByte 
         CALL TxEQU 
         R1=[_XValue] 
         CALL HexDec 
         CALL TxWord 
         R1='Y' 
         CALL TxByte 
         CALL TxEQU 
         R1=[_YValue] 
         CALL HexDec 
         CALL TxWord 
         RETF 
 
PrintEdit: 
         CALL EnUart 
         CALL TxChg 
         R1='E' 
         CALL TxByte 
         R1='d' 
         CALL TxByte 
         R1='i' 
         CALL TxByte 
         R1='t' 
         CALL TxByte 
         R1=':' 
         CALL TxByte 
         R1=' ' 
         CALL TxByte 
 
         R1='I' 
         CALL TxByte 
         R1='=' 
         CALL TxByte 
         R1=[_FileIndex] 
         CALL TxHex 
 
         R1='B' 
         CALL TxByte 
         R1='=' 
         CALL TxByte 
         R1=[_PlayBlock] 
         CALL TxHex 
 
         R1=[_RecOrgBank] 
         CALL TxWord 
         R1=[_RecOrgAddr] 
         CALL TxWord 
         CALL TxLine 
         CALL TxLine 
         CALL TxNull 
         R1=[_RecEndBank] 
         CALL TxWord 
         R1=[_RecEndAddr] 
         CALL TxWord 
         CALL TxChg 
         CALL DiUart 
         RETF 
 
PrintEditAddr: 
         CALL EnUart 
         CALL TxChg 
         R1='E' 
         CALL TxByte 
         R1='d' 
         CALL TxByte 
         R1='i' 
         CALL TxByte 
         R1='t' 
         CALL TxByte 
         R1=' ' 
         CALL TxByte 
         R1=[_HowManyEditBlock] 
         JNE PrintEditAddr_ 
         R1='N' 
         CALL TxByte 
         R1='o' 
         CALL TxByte 
         RETF 
PrintEditAddr_: 
         R1=[_EditBlockSerious] 
         CALL TxHex 
         CALL TxNull 
         R1=[_EditOrgBank] 
         CALL TxWord 
         R1=[_EditOrgAddr] 
         CALL TxWord 
         RETF 
 
PrintPage: 
          CALL EnUart 
          R1=[_PcRecPage] 
          R1&=0x0f 
          JNE PrintPage_ 
PrintPage_: 
          R1=[_PcRecPage] 
          CALL TxWord 
          CALL DiUart 
          RETF 
 
PrintCardMess: 
         CALL EnUart 
         CALL TxChg 
         R1='B' 
         CALL TxByte 
         R1='o' 
         CALL TxByte 
         R1='o' 
         CALL TxByte 
         R1='k' 
         CALL TxByte 
         R1='=' 
         CALL TxByte 
         R1=[_HowManyBook] 
         CALL TxHex 
         R1=[_CurrentBookBank] 
         CALL TxWord 
         R1=[_CurrentBookAddr] 
         CALL TxWord 
         CALL DiUart 
         RETF 
 
PrintEditReg: 
         R2=_ContentBuf 
         R5=0x80 
         R3=[_EndAddr] 
         R4=[_EndBank] 
         R4+=1 
         CALL ReadNandWordBuf 
         CALL EnUart 
         R4=_ContentBuf 
PrintEditReg0: 
         R1=R4&0x0f 
         JNE PrintEditReg_ 
         CALL TxChg 
PrintEditReg_: 
         R1=[R4++] 
         CALL TxWord 
         CMP R4, 0xc0 
         JNE PrintEditReg0 
         CALL DiUart 
         RETF 
 
PrintRec: 
         CALL EnUart 
         R1=0x0d 
         CALL TxByte 
         R1='R' 
         CALL TxByte 
         R1='e' 
         CALL TxByte 
         R1='c' 
         CALL TxByte 
         R1=[_RecOrgBank] 
         CALL TxWord 
         R1=[_RecOrgAddr] 
         CALL TxWord 
         R1='-' 
         CALL TxByte 
         R1='-' 
         CALL TxByte 
         R1=' ' 
         CALL TxByte 
         R1=[_RecEndBank] 
         CALL TxWord 
         R1=[_RecEndAddr] 
         CALL TxWord 
         CALL DiUart 
         RETF