📄 postfixvalume.asl
字号:
07BB 998 .P3dataToZ:
+ 999
07BB F5 7B 1000 lda0 .PsValDP
07BD FC 21 1001 sta DP
07BF F3 02 1002 lda #02h
07C1 FC 28 1003 sta PP
07C3 F2 1004 lda i
07C4 FC 21 1005 sta DP
07C6 1006 .GetP3ToZ::
07C6 F3 03 1007 lda #03h
07C8 FC 28 1008 sta PP
07CA F2 1009 lda i
07CB F9 00 1010 sta0 SignZ
07CD 18 1011 incdp
07CE F2 1012 lda i
07CF F9 00 1013 sta0 PointZ
07D1 F3 00 1014 lda #0h
07D3 FE 1015 sta i
07D4 18 1016 incdp
07D5 F2 1017 lda i
07D6 F9 00 1018 sta0 OperandZ
07D8 F3 00 1019 lda #0h
07DA FE 1020 sta i
07DB 18 1021 incdp
07DC F2 1022 lda i
07DD F9 01 1023 sta0 OperandZ+1
07DF F3 00 1024 lda #0h
07E1 FE 1025 sta i
07E2 18 1026 incdp
07E3 F2 1027 lda i
07E4 F9 02 1028 sta0 OperandZ+2
07E6 F3 00 1029 lda #0h
07E8 FE 1030 sta i
07E9 18 1031 incdp
07EA F2 1032 lda i
07EB F9 03 1033 sta0 OperandZ+3
07ED F3 00 1034 lda #0h
07EF FE 1035 sta i
07F0 18 1036 incdp
07F1 F2 1037 lda i
07F2 F9 04 1038 sta0 OperandZ+4
07F4 F3 00 1039 lda #0h
07F6 FE 1040 sta i
07F7 18 1041 incdp
07F8 F2 1042 lda i
07F9 F9 05 1043 sta0 OperandZ+5
07FB F3 00 1044 lda #0h
07FD FE 1045 sta i
07FE 18 1046 incdp
07FF F2 1047 lda i
0800 F9 06 1048 sta0 OperandZ+6
0802 F3 00 1049 lda #0h
0804 FE 1050 sta i
0805 F3 00 1051 lda #0h
0807 F9 07 1052 sta0 OperandZ+7
0809 20 00 00 1053 call CheckOutData
080C 24 1054 ret
+ 1055
+ 1056 ;-------------------------------------------
080D 1057 .StoResult:
+ 1058
080D F5 7D 1059 lda0 .P3DP
080F A7 A4 1060 cmpe #0a4h ;0dfh
0811 04 08 47 1061 brc .StackError
0814 F5 7D 1062 lda0 .P3DP
0816 FC 21 1063 sta DP
0818 F3 03 1064 lda #03h
081A FC 28 1065 sta PP
081C F5 00 1066 lda0 SignZ
081E FE 1067 sta i
081F 18 1068 incdp
0820 F5 00 1069 lda0 PointZ
0822 FE 1070 sta i
0823 18 1071 incdp
0824 F5 00 1072 lda0 OperandZ
0826 FE 1073 sta i
0827 18 1074 incdp
0828 F5 01 1075 lda0 OperandZ+1
082A FE 1076 sta i
082B 18 1077 incdp
082C F5 02 1078 lda0 OperandZ+2
082E FE 1079 sta i
082F 18 1080 incdp
0830 F5 03 1081 lda0 OperandZ+3
0832 FE 1082 sta i
0833 18 1083 incdp
0834 F5 04 1084 lda0 OperandZ+4
0836 FE 1085 sta i
0837 18 1086 incdp
0838 F5 05 1087 lda0 OperandZ+5
083A FE 1088 sta i
083B 18 1089 incdp
083C F5 06 1090 lda0 OperandZ+6
083E FE 1091 sta i
083F 18 1092 incdp
0840 F0 21 1093 lda DP
0842 F9 7D 1094 sta0 .P3DP
0844 02 08 4B 1095 br .EndStoResult
0847 1096 .StackError:
0847 F3 03 1097 lda #03h
0849 F9 00 1098 sta0 ErrorFlag
084B 1099 .EndStoResult:
084B 24 1100 ret
+ 1101 ;-------------------------------------------
084C 1102 .PushSkData::
084C F3 03 1103 lda #03h
084E FC 28 1104 sta PP
0850 F3 00 1105 lda #0h
0852 FC 21 1106 sta DP
0854 F9 00 1107 sta0 Temp2
0856 F3 50 1108 lda #50h
0858 FE 1109 sta i
0859 18 1110 incdp
085A F0 21 1111 lda DP
085C F9 00 1112 sta0 Temp2
085E F3 50 1113 lda #50h
0860 F9 00 1114 sta0 Temp1
0862 1115 .SearchPS:
0862 F5 00 1116 lda0 Temp1
0864 FC 21 1117 sta DP
0866 F3 02 1118 lda #02h
0868 FC 28 1119 sta PP
086A F2 1120 lda i
086B A7 EE 1121 cmpe #0eeh
086D 06 08 98 1122 brz .EndPushSkData
0870 A7 FF 1123 cmpe #0ffh
0872 06 08 82 1124 brz .StoDataDP
0875 A7 FE 1125 cmpe #0feh
0877 06 08 82 1126 brz .StoDataDP
087A 18 1127 incdp
087B F0 21 1128 lda DP
087D F9 00 1129 sta0 Temp1
087F 02 08 62 1130 br .SearchPS
0882 1131 .StoDataDP:
0882 20 08 99 1132 call .JumpOFF
0885 F3 03 1133 lda #03h
0887 FC 28 1134 sta PP
0889 F5 00 1135 lda0 Temp2
088B FC 21 1136 sta DP
088D F5 00 1137 lda0 Temp1
088F FE 1138 sta i
0890 F5 00 1139 lda0 Temp2
0892 1F 1140 inca
0893 F9 00 1141 sta0 Temp2
0895 02 08 62 1142 br .SearchPS
0898 1143 .EndPushSkData::
+ 1144
0898 24 1145 ret
+ 1146 ;-------------------------------------------
0899 1147 .JumpOFF:
0899 F3 02 1148 lda #02h
089B FC 28 1149 sta PP
089D F5 00 1150 lda0 Temp1
089F 1F 1151 inca
08A0 F9 00 1152 sta0 Temp1
08A2 FC 21 1153 sta DP
08A4 F2 1154 lda i
08A5 A7 EE 1155 cmpe #0eeh
08A7 06 08 B2 1156 brz .EndSetDP
08AA A7 FF 1157 cmpe #0ffh
08AC 07 08 B2 1158 brnz .EndSetDP
08AF 02 08 99 1159 br .JumpOFF
08B2 1160 .EndSetDP:
+ 1161
+ 1162
08B2 24 1163 ret
+ 1164 ;-------------------------------------------
08B3 1165 .SaveToZ::
08B3 20 00 00 1166 call .ClrZ
08B6 F3 00 1167 lda #0h
08B8 F9 00 1168 sta0 .PFlag
08BA F9 00 1169 sta0 .Buf2
08BC F9 00 1170 sta0 .NumCnt
08BE F9 00 1171 sta0 .ZeroFlag
08C0 F9 00 1172 sta0 .PointFlag
+ 1173
08C2 F3 00 1174 lda #0h
08C4 FC 28 1175 sta PP
08C6 F3 00 1176 lda #OperandZ
08C8 F9 00 1177 sta0 .STDP
+ 1178
08CA 1179 .Num2OPC:
08CA F3 02 1180 lda #02h
08CC FC 28 1181 sta PP
08CE F5 7B 1182 lda0 .PsValDP
08D0 FC 21 1183 sta DP
08D2 F2 1184 lda i
08D3 F9 00 1185 sta0 .DataBuf
08D5 A7 FF 1186 cmpe #0ffh
08D7 06 09 F0 1187 brz .SetOPdata
08DA A7 C3 1188 cmpe #0c3h
08DC 06 09 F0 1189 brz .SetOPdata
08DF A7 EE 1190 cmpe #0eeh
08E1 06 09 F0 1191 brz .SetOPdata
08E4 A7 A0 1192 cmpe #0a0h
08E6 06 09 BA 1193 brz .CntPoint
08E9 1194 .StartSavenum:
08E9 F5 00 1195 lda0 .Buf2
08EB A7 01 1196 cmpe #01h
08ED 06 08 FB 1197 brz .SaveInput
08F0 F5 00 1198 lda0 .DataBuf
08F2 A7 00 1199 cmpe #0h
08F4 06 09 AB 1200 brz .NextInput
08F7 F3 01 1201 lda #01h
08F9 F9 00 1202 sta0 .Buf2
08FB 1203 .SaveInput:
08FB F5 00 1204 lda0 .PFlag
08FD CB 0F 1205 anda #0fh
08FF A7 00 1206 cmpe #0h
0901 06 09 58 1207 brz .NumIsL
0904 1208 .NumIsR:
0904 F5 00 1209 lda0 .NumCnt
0906 A7 0F 1210 cmpe #0fh
0908 04 09 D7 1211 brc .AddPSDP
090B F3 00 1212 lda #0h
090D FC 28 1213 sta PP
090F F5 00 1214 lda0 .STDP
0911 FC 21 1215 sta DP
0913 F2 1216 lda i
0914 F9 01 1217 sta0 .DataBuf+1
0916 D9 00 1218 ora .DataBuf
0918 F9 01 1219 sta0 .DataBuf+1
091A A7 00 1220 cmpe #0h
091C 07 09 2D 1221 brnz .NextDTr
091F F5 00 1222 lda0 .Buf2
0921 A7 01 1223 cmpe #01h
0923 07 09 AB 1224 brnz .NextInput
0926 F5 00 1225 lda0 .ZeroFlag
0928 A7 00 1226 cmpe #0h
092A 06 09 44 1227 brz .NextDPr
092D 1228 .NextDTr:
092D F5 01 1229 lda0 .DataBuf+1
092F FE 1230 sta i
0930 F3 01 1231 lda #01h
0932 F9 00 1232 sta0 .ZeroFlag
0934 F5 00 1233 lda0 .NumCnt
0936 1F 1234 inca
0937 F9 00 1235 sta0 .NumCnt
0939 F5 00 1236 lda0 .STDP
093B 1F 1237 inca
093C F9 00 1238 sta0 .STDP
093E F5 00 1239 lda0 .PFlag
0940 CB F0 1240 anda #0f0h
0942 F9 00 1241 sta0 .PFlag
0944 1242 .NextDPr:
0944 F5 7B 1243 lda0 .PsValDP
0946 1F 1244 inca
0947 F9 7B 1245 sta0 .PsValDP
0949 F5 00 1246 lda0 .PointFlag
094B A7 01 1247 cmpe #01h
094D 07 08 CA 1248 brnz .Num2OPC
0950 F5 00 1249 lda0 PointZ
0952 1F 1250 inca
0953 F9 00 1251 sta0 PointZ
0955 02 08 CA 1252 br .Num2OPC
0958 1253 .NumIsL:
0958 F5 00 1254 lda0 .NumCnt
095A A7 0F 1255 cmpe #0fh
095C 04 09 D7 1256 brc .AddPSDP
095F F5 00 1257 lda0 .DataBuf
0961 20 00 00 1258 call .SftLeft
0964 F3 00 1259 lda #0h
0966 FC 28 1260 sta PP
0968 F5 00 1261 lda0 .STDP
096A FC 21 1262 sta DP
096C F2 1263 lda i
096D F9 01 1264 sta0 .DataBuf+1
096F D9 00 1265 ora .DataBuf
0971 F9 01 1266 sta0 .DataBuf+1
0973 A7 00 1267 cmpe #0h
0975 07 09 86 1268 brnz .NextDTl
0978 F5 00 1269 lda0 .Buf2
097A A7 01 1270 cmpe #01h
097C 07 09 AB 1271 brnz .NextInput
097F F5 00 1272 lda0 .ZeroFlag
0981 A7 00 1273 cmpe #0h
0983 06 09 97 1274 brz .NextDPl
0986 1275 .NextDTl:
0986 F5 01 1276 lda0 .DataBuf+1
0988 FE 1277 sta i
0989 F3 01 1278 lda #01h
098B F9 00 1279 sta0 .ZeroFlag
098D F5 00 1280 lda0 .NumCnt
098F 1F 1281 inca
0990 F9 00 1282 sta0 .NumCnt
0992 F5 00 1283 lda0 .PFlag
0994 1F 1284 inca
0995 F9 00 1285 sta0 .PFlag
0997 1286 .NextDPl:
0997 F5 7B 1287 lda0 .PsValDP
0999 1F 1288 inca
099A F9 7B 1289 sta0 .PsValDP
099C F5 00 1290 lda0 .PointFlag
099E A7 01 1291 cmpe #01h
09A0 07 08 CA 1292 brnz .Num2OPC
09A3 F5 00 1293 lda0 PointZ
09A5 1F 1294 inca
09A6 F9 00 1295 sta0 PointZ
09A8 02 08 CA 1296 br .Num2OPC
09AB 1297 .NextInput:
09AB F5 00 1298 lda0 .Buf2
09AD A7 01 1299 cmpe #01h
09AF 06 08 FB 1300 brz .SaveInput
09B2 F5 7B 1301 lda0 .PsValDP
09B4 1F 1302 inca
09B5 F9 7B 1303 sta0 .PsValDP
09B7 02 08 CA 1304 br .Num2OPC
+ 1305 ;-------------------------------------------
09BA 1306 .CntPoint:
09BA F5 7B 1307 lda0 .PsValDP
09BC 1F 1308 inca
09BD F9 7B 1309 sta0 .PsValDP
09BF F5 00 1310 lda0 .PointFlag
09C1 1F 1311 inca
09C2 F9 00 1312 sta0 .PointFlag
09C4 F3 01 1313 lda #01h
09C6 F9 00 1314 sta0 .Buf2
09C8 02 08 CA 1315 br .Num2OPC
09CB 1316 .ChangSign:
09CB F3 01 1317 lda #01h
09CD F9 00 1318 sta0 SignZ
09CF F5 7B 1319 lda0 .PsValDP
09D1 1F 1320 inca
09D2 F9 7B 1321 sta0 .PsValDP
09D4 02 08 CA 1322 br .Num2OPC
09D7 1323 .AddPSDP:
09D7 F5 7B 1324 lda0 .PsValDP
09D9 1F 1325 inca
09DA F9 7B 1326 sta0 .PsValDP
09DC F5 00 1327 lda0 .NumCnt
09DE 1F 1328 inca
09DF F9 00 1329 sta0 .NumCnt
09E1 F5 00 1330 lda0 .PointFlag
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -