📄 sdrv_functions_la.lst
字号:
\ 006F ED5B0200 LD DE,(region_win+2)
\ 0073 1600 LD D,0
\ 0075 2A0000 LD HL,(region_win)
\ 0078 62 LD H,D
\ 0079 19 ADD HL,DE
\ 007A F680 OR 128
\ 007C ED42 SBC HL,BC
\ 007E E28200 JP PO,?0050
\ 0081 AC XOR H
\ 0082 ?0050:
\ 0082 FA1401 JP M,?0066
\ 0085 ?0010:
92 {
93 DUMP(RESULT_PUTCHAR_X_ERR);
94 PutCharErrFlag = RESULT_PUTCHAR_X_ERR;//X轴超出
95 return FALSE;
96 }
\ 0085 ?0011:
97 if (region.y+ASCII_LARGE_HEIGHT_DEF > region_win.y+region_win.height)
\ 0085 ED4B0100 LD BC,(region+1)
\ 0089 42 LD B,D
\ 008A 211000 LD HL,16
\ 008D 09 ADD HL,BC
\ 008E 4D LD C,L
\ 008F 44 LD B,H
\ 0090 ED5B0300 LD DE,(region_win+3)
\ 0094 1600 LD D,0
\ 0096 2A0100 LD HL,(region_win+1)
\ 0099 62 LD H,D
\ 009A 19 ADD HL,DE
\ 009B F680 OR 128
\ 009D ED42 SBC HL,BC
\ 009F E2A300 JP PO,?0051
\ 00A2 AC XOR H
\ 00A3 ?0051:
\ 00A3 F24901 JP P,?0003
\ 00A6 ?0012:
98 {
99 DUMP(RESULT_PUTCHAR_Y_ERR);
100 PutCharErrFlag = RESULT_PUTCHAR_Y_ERR;//Y轴超出
\ 00A6 C33D01 JP ?0067
101 return FALSE;
102 }
\ 00A9 ?0013:
103 break;
\ 00A9 ?0014:
104
105 case CharMode1616://16*16点阵模式(汉字)
106 if (region.x+CHINESE_WIDTH_DEF > region_win.x+region_win.width)
\ 00A9 ED4B0000 LD BC,(region)
\ 00AD 0600 LD B,0
\ 00AF 211000 LD HL,16
\ 00B2 09 ADD HL,BC
\ 00B3 4D LD C,L
\ 00B4 44 LD B,H
\ 00B5 ED5B0200 LD DE,(region_win+2)
\ 00B9 1600 LD D,0
\ 00BB 2A0000 LD HL,(region_win)
\ 00BE 62 LD H,D
\ 00BF 19 ADD HL,DE
\ 00C0 F680 OR 128
\ 00C2 ED42 SBC HL,BC
\ 00C4 E2C800 JP PO,?0052
\ 00C7 AC XOR H
\ 00C8 ?0052:
\ 00C8 FA1401 JP M,?0066
\ 00CB ?0015:
107 {
108 DUMP(RESULT_PUTCHAR_X_ERR);
109 PutCharErrFlag = RESULT_PUTCHAR_X_ERR;//X轴超出
110 return FALSE;
111 }
\ 00CB ?0016:
112 if (region.y+CHINESE_HEIGHT_DEF > region_win.y+region_win.height)
\ 00CB ED4B0100 LD BC,(region+1)
\ 00CF 42 LD B,D
\ 00D0 211000 LD HL,16
\ 00D3 09 ADD HL,BC
\ 00D4 4D LD C,L
\ 00D5 44 LD B,H
\ 00D6 ED5B0300 LD DE,(region_win+3)
\ 00DA 1600 LD D,0
\ 00DC 2A0100 LD HL,(region_win+1)
\ 00DF 62 LD H,D
\ 00E0 19 ADD HL,DE
\ 00E1 F680 OR 128
\ 00E3 ED42 SBC HL,BC
\ 00E5 E2E900 JP PO,?0053
\ 00E8 AC XOR H
\ 00E9 ?0053:
\ 00E9 F24901 JP P,?0003
\ 00EC ?0017:
113 {
114 DUMP(RESULT_PUTCHAR_Y_ERR);
115 PutCharErrFlag = RESULT_PUTCHAR_Y_ERR;//Y轴超出
\ 00EC 184F JR ?0067
116 return FALSE;
117 }
\ 00EE ?0018:
118 break;
\ 00EE ?0019:
119
120 case PicDisMode://图形显示模式
121 if (region.x+region.width > region_win.x+region_win.width)
\ 00EE ED4B0200 LD BC,(region+2)
\ 00F2 0600 LD B,0
\ 00F4 ED5B0000 LD DE,(region)
\ 00F8 50 LD D,B
\ 00F9 69 LD L,C
\ 00FA 60 LD H,B
\ 00FB 19 ADD HL,DE
\ 00FC 4D LD C,L
\ 00FD 44 LD B,H
\ 00FE ED5B0200 LD DE,(region_win+2)
\ 0102 1600 LD D,0
\ 0104 2A0000 LD HL,(region_win)
\ 0107 62 LD H,D
\ 0108 19 ADD HL,DE
\ 0109 F680 OR 128
\ 010B ED42 SBC HL,BC
\ 010D E21101 JP PO,?0054
\ 0110 AC XOR H
\ 0111 ?0054:
\ 0111 F21801 JP P,?0021
\ 0114 ?0020:
122 {
123 DUMP(RESULT_PUTCHAR_X_ERR);
124 PutCharErrFlag = RESULT_PUTCHAR_X_ERR;//X轴超出
\ 0114 ?0066:
\ 0114 3E01 LD A,1
\ 0116 182B JR ?0063
125 return FALSE;
126 }
\ 0118 ?0021:
127 if (region.y+region.height > region_win.y+region_win.height)
\ 0118 ED4B0300 LD BC,(region+3)
\ 011C 42 LD B,D
\ 011D ED5B0100 LD DE,(region+1)
\ 0121 50 LD D,B
\ 0122 69 LD L,C
\ 0123 60 LD H,B
\ 0124 19 ADD HL,DE
\ 0125 4D LD C,L
\ 0126 44 LD B,H
\ 0127 ED5B0300 LD DE,(region_win+3)
\ 012B 1600 LD D,0
\ 012D 2A0100 LD HL,(region_win+1)
\ 0130 62 LD H,D
\ 0131 19 ADD HL,DE
\ 0132 F680 OR 128
\ 0134 ED42 SBC HL,BC
\ 0136 E23A01 JP PO,?0055
\ 0139 AC XOR H
\ 013A ?0055:
\ 013A F24901 JP P,?0003
\ 013D ?0022:
128 {
129 DUMP(RESULT_PUTCHAR_Y_ERR);
130 PutCharErrFlag = RESULT_PUTCHAR_Y_ERR;//Y轴超出
\ 013D ?0067:
\ 013D 3E02 LD A,2
\ 013F 1802 JR ?0063
131 return FALSE;
132 }
\ 0141 ?0023:
133 break;
\ 0141 ?0024:
134
135 default:
136 DUMP(RESULT_PUTCHAR_OTHER_ERR);
137 PutCharErrFlag = RESULT_PUTCHAR_OTHER_ERR;//不知类型的也不显示
\ 0141 3E03 LD A,3
\ 0143 ?0063:
\ 0143 320000 LD (PutCharErrFlag),A
138 return FALSE;
\ 0146 AF XOR A
139 }
\ 0147 1802 JR ?0025
\ 0149 ?0003:
140 return TRUE;
\ 0149 3E01 LD A,1
141 }
\ 014B ?0025:
\ 014B E1 POP HL
\ 014C C1 POP BC
\ 014D C9 RET
142 //================================================================================
\ 014E END
Errors: none
Warnings: none
Code size: 334
Constant size: 0
Static variable size: Data(0) Iram(0)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -