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

📄 calcedit.asl

📁 这是用台湾KingB 8位单片机开发的科学计算器程序
💻 ASL
📖 第 1 页 / 共 4 页
字号:
01C6 06 01 E0       301 		brz	Insdelgo
01C9 A7 00          302 		cmpe	#C_ZERO
01CB 06 03 40       303 		brz	Insetmodeend
01CE A7 61          304 		cmpe	#INSKEY
01D0 06 03 40       305 		brz	Insetmodeend
01D3 A7 61          306 		cmpe	#INSKEY
01D5 06 03 40       307 		brz	Insetmodeend
01D8 A7 6A          308 		cmpe 	#LOGICKEY
01DA 06 03 40       309 		brz	Insetmodeend
01DD 02 02 B2       310 		br	Inswordgo
+                   311 		
01E0                312 Insdelgo:
01E0                313 		PP2One()	
01E4 F5 00          314 		lda0	.SFDP
01E6 FD 00          315 		sta	cmpDP
01E8 F3 02          316 		lda	#C_TWO
01EA FD 00          317 		sta	cmpPP
01EC 20 00 00       318 		call	Decplace		
01EF F1 00          319 		lda	cmpDP
01F1 A7 00          320 		cmpe	#C_ZERO
01F3 07 01 F9       321 		brnz	Delfront
01F6 02 02 5A       322 		br	Delback
+                   323 		
+                   324 				
01F9                325 Delfront:		
+                   326 		
01F9 20 03 80       327 		call	ClrPP3	
01FC 20 00 D4       328 		call	Movepage
+                   329 				
01FF                330 		PP2One()					
0203 F5 00          331 		lda0	.SFDP
0205 FD 00          332 		sta	cmpDP									
0207 F3 02          333 		lda	#C_TWO
0209 FD 00          334 		sta	cmpPP				
020B 20 00 00       335 		call	Decplace
020E                336 		PP2One()					
0212 F1 00          337 		lda	cmpDP
0214 FD 19          338 		sta	editDP
0216 20 00 00       339 		call	Decplace
0219                340 		PP2One()			
021D F1 00          341 		lda	cmpDP
021F FD 17          342 		sta	chkDP
0221 F9 00          343 		sta0	.SFDP
+                   344 								
0223 20 03 41       345 		call	clrp2back
0226                346 		PP2One()	
022A F1 19          347 		lda	editDP
022C FD 00          348 		sta	cmpDP				
022E                349 frontloop:				
022E 20 01 16       350 		call	movebehind		
0231                351 		PP2One()	
0235 F5 00          352 		lda0	.DataDP
0237 A5 00          353 		cmpe	cmpDP		
0239 07 02 2E       354 		brnz	frontloop
023C                355 		PP2One()						
0240 F1 17          356 		lda	chkDP
0242 F9 00          357 		sta0	.DataDP	
+                   358 		
0244                359 		PP2One()					
0248 F5 00          360 		lda0	.SFDP
024A FD 00          361 		sta	cmpDP									
024C F3 02          362 		lda	#C_TWO
024E FD 00          363 		sta	cmpPP				
0250 20 00 00       364 		call	Addplace			
0253 F1 00          365 		lda	cmpDP
0255 F9 00          366 		sta0	.SFDP			
0257 02 03 3A       367 		br	Insetmodeend1
+                   368 		
+                   369 
+                   370 
+                   371 
025A                372 Delback:												
+                   373 		
025A 20 03 80       374 		call	ClrPP3		
025D 20 00 D4       375 		call	Movepage		
0260 20 03 71       376 		call	ClrPP2
0263                377 		PP2One()
+                   378 				
0267 F5 00          379 		lda0	.DataDP
0269 FD 00          380 		sta	cmpDP
026B F3 02          381 		lda	#C_TWO
026D FD 00          382 		sta	cmpPP
026F 20 00 00       383 		call	Decplace
0272 F1 00          384 		lda	cmpDP
0274 A7 00          385 		cmpe	#C_ZERO
0276 07 02 87       386 		brnz	keepDelback
0279                387 		PP2One()		
027D F1 00          388 		lda	cmpDP
027F F9 00          389 		sta0	.DataDP
0281 20 00 00       390 		call	.DispInitial	
0284 02 03 40       391 		br	Insetmodeend		
0287                392 keepDelback:		
0287 F3 00          393 		lda	#C_ZERO
0289 FD 17          394 		sta	chkDP
+                   395 		
028B 20 03 41       396 		call	clrp2back		
028E F3 00          397 		lda	#C_ZERO
0290 FD 00          398 		sta	cmpDP
0292 F3 02          399 		lda	#C_TWO
0294 FD 00          400 		sta	cmpPP
0296 20 00 00       401 		call	Addplace					
0299                402 backloop:		
0299 20 01 16       403 		call	movebehind		
029C                404 		PP2One()	
02A0 F5 00          405 		lda0	.DataDP
02A2 A5 00          406 		cmpe	cmpDP		
02A4 07 02 99       407 		brnz	backloop
02A7                408 		PP2One()
02AB F1 17          409 		lda	chkDP
02AD F9 00          410 		sta0	.DataDP
02AF 02 03 3A       411 		br	Insetmodeend1
+                   412 		
+                   413 		
+                   414 		
+                   415 		
+                   416 		
02B2                417 Inswordgo:	
02B2                418 		PP2One()
02B6 F5 00          419 		lda0	.DataDP
02B8 A7 4F          420        		cmpe	#STEPCHK
02BA 04 03 40       421        		brc	Insetmodeend
+                   422        		
02BD 20 03 80       423 		call	ClrPP3
02C0 20 00 D4       424 		call	Movepage
+                   425 				
02C3                426 		PP2One()
02C7 F5 00          427 		lda0	.SFDP
02C9 FD 00          428 		sta	cmpDP
02CB F3 02          429 		lda	#C_TWO
02CD FD 00          430 		sta	cmpPP
02CF 20 00 00       431 		call	Decplace
02D2 F1 00          432 		lda	cmpDP
02D4 A7 00          433 		cmpe	#C_ZERO
02D6 07 02 E0       434 		brnz	nothead
02D9 F3 00          435 		lda	#C_ZERO
02DB F9 00          436 		sta0	.SFDP
02DD                437 Inswordclrp2:			
+                   438 		
+                   439 		
+                   440 		
02DD 20 03 71       441 		call	ClrPP2	
+                   442 		
02E0                443 nothead:		
02E0                444 		PP2One()			
02E4 F1 00          445 		lda	cmpDP
02E6 FD 19          446 		sta	editDP
02E8 F9 00          447 		sta0	.SFDP						
02EA 20 03 41       448 		call	clrp2back		
02ED                449 setbyte:
02ED F5 00          450 		lda0	.SFDP
02EF FC 21          451 		sta	DP
02F1 1F             452 		inca
02F2 F9 00          453 		sta0	.SFDP
02F4 F3 02          454 		lda	#C_TWO
02F6 FC 28          455 		sta	PP
02F8 F5 00          456 		lda0	.KeyPos
02FA A7 10          457 		cmpe	#TENCODE
02FC 07 03 01       458 		brnz	0$
02FF F3 00          459 		lda	#C_ZERO
0301 FE             460 0$:		sta	I
+                   461 
+                   462 
0302                463 		PP2One()				
0306 F5 00          464 		lda0	.SFDP		
0308 FD 17          465 		sta	chkDP		
030A F1 19          466 		lda	editDP
030C FD 00          467 		sta	cmpDP		
+                   468 		
030E                469 wordloop:				
030E 20 01 16       470 		call	movebehind		
0311                471 		PP2One()	
0315 F5 00          472 		lda0	.DataDP
0317 A5 00          473 		cmpe	cmpDP		
0319 07 03 0E       474 		brnz	wordloop
+                   475 
031C                476 		PP2One()				
0320 F5 00          477 		lda0	.SFDP
0322 FD 00          478 		sta	cmpDP
0324 F3 02          479 		lda	#C_TWO
0326 FD 00          480 		sta	cmpPP
0328 20 00 00       481 		call	Addplace
032B F1 00          482 		lda	cmpDP
032D F9 00          483 		sta0	.SFDP	
+                   484 				
032F                485 		PP2One()
0333 F1 17          486 		lda	chkDP
0335 F9 00          487 		sta0	.DataDP						
0337 02 03 3A       488 		br	Insetmodeend1
+                   489 				
033A                490 Insetmodeend1:		
033A 20 03 80       491 		call	ClrPP3		
033D 02 00 00       492 		br	Rightchk
0340                493 Insetmodeend:		
0340 24             494 		ret
+                   495 ;------------------------------------------------------------------------
+                   496 ;------------------------------------------------------------------------
0341                497 clrp2back:
0341                498 		PP2One()
0345 F5 00          499 		lda0	.SFDP
0347 FD 00          500 		sta	cmpDP
+                   501 		
0349 F1 00          502 		lda	cmpDP
034B FC 21          503 		sta	DP
034D F3 02          504 		lda	#C_TWO
034F FC 28          505 		sta	PP
0351 F3 00          506 		lda	#C_ZERO
0353 FE             507 		sta	I
+                   508 				
0354                509 nextclr:		
0354                510 		PP2One()
0358 F5 00          511 		lda0	.DataDP	
035A A5 00          512 		cmpe	cmpDP
035C 06 03 70       513 		brz	clrp2backend
035F F1 00          514 		lda	cmpDP
0361 1F             515 		inca
0362 FD 00          516 		sta	cmpDP
0364 FC 21          517 		sta	DP
0366 F3 02          518 		lda	#C_TWO
0368 FC 28          519 		sta	PP
036A F3 00          520 		lda	#C_ZERO
036C FE             521 		sta	I		
036D 02 03 54       522 		br	nextclr			
0370                523 clrp2backend:		
0370 24             524 		ret
+                   525 		
+                   526 		
+                   527 		
+                   528 		
+                   529 ;------------------------------------------------------------------------
+                   530 ;------------------------------------------------------------------------
0371                531 ClrPP2::		
0371 F3 4F          532 		lda	#04fh
0373 F9 00          533 		sta0	Temp4
0375 F3 00          534 		lda	#00h
0377 FC 21          535 		sta	DP
0379 F3 02          536 		lda	#02h
037B FC 28          537 		sta	PP
037D 02 03 8C       538 		br	Clear_MemAll
+                   539 ;------------------------------------------------------------------------
+                   540 ;------------------------------------------------------------------------		
0380                541 ClrPP3::		
0380 F3 4F          542 		lda	#04fh
0382 F9 00          543 		sta0	Temp4
0384 F3 00          544 		lda	#00h
0386 FC 21          545 		sta	DP
0388 F3 03          546 		lda	#03h
038A FC 28          547 		sta	PP				
+                   548 ;------------------------------------------------------------------------
+                   549 ;------------------------------------------------------------------------
038C                550 Clear_MemAll::		
+                   551 1$:
038C F3 00          552        		lda     #C_ZERO
038E FE             553         	sta     i
038F 18             554         	incdp             ;Clear any page at 00h-ffh
0390 F5 00          555 		lda0	Temp4
0392 A4 21          556         	cmpe    DP
0394 07 03 8C       557         	brnz    1$
0397 24             558         	ret        	
+                   559 ;------------------------------------------------------------------------
+                   560 ;------------------------------------------------------------------------
+                   561 
+                   562 
+                   563 		
+                   564 		.include "caldisp.inc"	
+
+Symbol Table
+
+    .DataBuf                           **** GX
+    .DataDP                            **** GX
+    .DispInitial                       **** GX
+    .KeyPos                            **** GX
+    .SFDP                              **** GX
+    .SFlag                             **** GX
+    .SetFlag                           **** GX
+    ACCHK                           =  0040 
+    ACHKADD                         =  0000 
+    ADDDISP                         =  002B 
+    ADISP                           =  0041 
+    AFADD                           =  0041 
+    AKEYCHK                         =  00E3 
+    ALPICOM                         =  0002 
+    AND1                            =  0061 
+    AND2                            =  006E 
+    AND3                            =  0064 
+    ANDKEY                          =  0020 
+    ANS1                            =  0041 
+    ANS2                            =  006E 
+    ANS3                            =  0073 
+    ARGERDISP1                      =  0041 
+    ARGERDISP2                      =  0072 
+    ARGERDISP3                      =  0067 
+    ARGERDISP4                      =  0000 
+    ARGERDISP5                      =  0045 
+    ARGERDISP6                      =  0052 
+    ARGERDISP7                      =  0052 
+    ARGERDISP8                      =  004F 
+    ARGERDISP9                      =  0052 
+    ARGSTART                        =  001B 
+    AXHCODE                         =  00A0 
+    Addplace                           **** GX
+    BASE5X7MODE1                    =  0078 
+    BASE5X7MODE2                    =  0084 

⌨️ 快捷键说明

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