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

📄 prn_edit.lst

📁 calculator code ,use toshibaor nec LSI
💻 LST
📖 第 1 页 / 共 5 页
字号:
00000012  4C0000               R +0  641    641 		ld	ix,PRN_BUF	;V4.03
00000015                         +0  642    642 ic_print01:				;V4.03
00000015  53                     +0  643    643 		push	hl
00000016  FD0000               R +0  644    644 		call	spc_prnbuf
00000019  FD0000               R +0  645    645 		call	set_symbol
                                 +0  646    646 ;V3.01		cmp	(IC_SYM),P_SPC
                                 +0  647    647 ;V3.01		j	eq,ic_print09
                                 +0  648    648 ;V3.01		cmp	(IC_SYM),S_ICM
                                 +0  649    649 ;V3.01		j	ne,ic_print01
                                 +0  650    650 ;V3.01		ld	(ix+22),ps_m
                                 +0  651    651 ;V3.01		j	ic_print09
                                 +0  652    652 ;V3.01ic_print01:		
                                 +0  653    653 ;V3.01		cmp	(IC_SYM),S_ICG
                                 +0  654    654 ;V3.01		j	ne,ic_print02
                                 +0  655    655 ;V3.01		ld	(ix+22),ps_g
                                 +0  656    656 ;V3.01ic_print02:
                                 +0  657    657 
                                 +0  658    658 ;GT logic..........................................................
                                 +0  659    659 ;V3.00		@BBC	(M_694,ic_print09)
                                 +0  660    660 ;		cmp	(IC_SYM),S_ICA
                                 +0  661    661 ;V3.00		cmp	(IC_SYM),S_ICI
                                 +0  662    662 ;V3.00		j	ne,ic_print05
                                 +0  663    663 ;V3.00		ld	(ix+22),ps_i
                                 +0  664    664 ;V3.00		j	ic_print09
                                 +0  665    665 ;V3.00ic_print05:
                                 +0  666    666 ;V3.00		cmp	(IC_SYM),S_ICII
                                 +0  667    667 ;V3.00		j	ne,ic_print09
                                 +0  668    668 ;V3.00		ld	(ix+22),CA_II		;"II"
                                 +0  669    669 ;GT logic..........................................................
0000001C                         +0  670    670 ic_print09:
0000001C  D3                     +0  671    671 		pop	hl
0000001D  E343                   +0  672    672 		ld	b,(hl)			;4th 3rd digit of item counter
0000001F  D70142                 +0  673    673 		ld	c,(hl+1)		;2nd,1st digit of item counter
00000022  13                     +0  674    674 		ld	a,b
00000023  64F0                   +0  675    675 		and	a,0xf0
00000025  6790                   +0  676    676 		cmp	a,0x90			;9xxx?
00000027  D903                   +0  677    677 		j	ne,ic_print20		;no -> positive value
                                 +0  678    678 ;V3.00		call	cmpl_bc			;complement bc register if 4th digit is 9
00000029  F4F90B                 +0  679    679 		ld	(ix),ps_min		;top of PRN_BUF <- minus sign
0000002C                         +0  680    680 ic_print20:
0000002C  12                     +0  681    681 		ld	a,c			;2nd,1st digit
0000002D  640F                   +0  682    682 		and	a,0x0f
                                 +0  683    683 ;V4.03		or	a,0x30
0000002F  540278                 +0  684    684 		ld	(ix+2),a
00000032  12                     +0  685    685 		ld	a,c			;2nd,1st digit
00000033  E8FF                   +0  686    686 		swap	a
00000035  640F                   +0  687    687 		and	a,0x0f
                                 +0  688    688 ;V4.03		or	a,0x30
00000037  540178                 +0  689    689 		ld	(ix+1),a
0000003A  13                     +0  690    690 		ld	a,b			;3rd digit
0000003B  640F                   +0  691    691 		and	a,0x0f
                                 +0  692    692 ;V4.03		or	a,0x30
0000003D  F478                   +0  693    693 		ld	(ix),a
0000003F  FE0000               R +0  694    694 		j	wk_print9		;print with check P_NP flag
00000042                         +0  695    695 ic_print99:
00000042  FA                     +0  696    696 		ret
                                 +0  697    697 
                                 +0  698    698 
                                 +0  699    699 		
                                 +0  700    700 		
00000043                         +0  701    701 ic_to_avr:
                                 +0  702    702 ;V4.11	ld	a,(hl+1)
                                 +0  703    703 ;V4.11	ld	(AVR_ITEM+1),a
                                 +0  704    704 ;V4.11	ld	a,(hl)
                                 +0  705    705 ;V4.11	ld	(AVR_ITEM),a
                                 +0  706    706 ;V4.11	ret
                                 +0  707    707 	
00000043                         +0  708    708 ten_to_avr:
                                 +0  709    709 ;V4.11	ld	a,(TEN_LSD)
                                 +0  710    710 ;V4.11	ld	(AVR_ITEM+1),a
                                 +0  711    711 ;V4.11	ld	a,(TEN_LSD-1)
                                 +0  712    712 ;V4.11	ld	(AVR_ITEM),a
                                 +0  713    713 	
                                 +0  714    714 ;V4.11	ret
                                 +0  715    715 	
00000043                         +0  716    716 ic_to_w2:
                                 +0  717    717 ;V4.11	ld	a,(TEN_LSD)
                                 +0  718    718 ;V4.11	ld	(W2_LSD),a
                                 +0  719    719 ;V4.11	ld	(W4+7),a
                                 +0  720    720 ;V4.11	ld	a,(TEN_LSD-1)
                                 +0  721    721 ;V4.11	ld	(W2_LSD-1),a
                                 +0  722    722 ;V4.11	ld	(W4+6),a
                                 +0  723    723 ;V4.11	ld	a,(TEN_S)
                                 +0  724    724 ;V4.11	j	eq,ic_exit
                                 +0  725    725 ;V4.11	xor	(W2_S),0x01
                                 +0  726    726 ;V4.11	xor	(W4),0x01
                                 +0  727    727 ;V4.11ic_exit:
00000043  FA                     +0  728    728 	ret
                                 +0  729    729 	
00000044                         +0  730    730 set_icsym:
                                 +0  731    731 
                                 +0  732    732 ;V3.01	ld	hl,tbl_symbol
                                 +0  733    733 
                                 +0  734    734 
                                 +0  735    735 
00000044                         +0  736    736 set_icsym02:
                                 +0  737    737 ;V3.01	ld	c,(IC_SYM)
                                 +0  738    738 ;V3.01	ld	a,(hl+c)
                                 +0  739    739 ;V3.01	ld	(PRN_BUF_SYM),a
00000044  FA                     +0  740    740 	ret
                                 +0  741    741 	
                                 +0  742    742 	
                                 +0  743    743 ;==============================================================================
                                 +0  744    744 ;		Fixed string print
                                 +0  745    745 ;==============================================================================
00000045                         +0  746    746 stop_print:
                                 +0  747    747 ;V4.13		ld	hl,mes_stop
                                 +0  748    748 ;V4.13		j	stg_print
00000045                         +0  749    749 line_print:
                                 +0  750    750 ;V4.13		ld	hl,mes_line
                                 +0  751    751 ;V4.13		j	stg_print
00000045                         +0  752    752 err_print:
00000045  FD0000               R +0  753    753 		call	spc_prnbuf	;V4.04
00000048  4B0000               R +0  754    754 		ld	hl,mes_error
0000004B  1A04                   +0  755    755 		ld	c,4		;V4.04
0000004D  480000               R +0  756    756 	ld	wa,M_5514T
00000050  E10000FC             R +0  757    757 	test	(M_5514T>>4).a		;bit -reverse-> jump status
00000054  8F                     +0  758    758 	j	t,stg_print		;if jump status is 1 -> branch
00000055  4C0000               R +0  759    759 		ld	ix,PRN_BUF_MSD		;V4.07
00000058                         +0  760    760 err_5514_prt:					;V4.07
00000058  F4F90C                 +0  761    761 		ld	(ix),ps_dot		;v4.07
0000005B  34                     +0  762    762 		inc	ix			;V4.07
0000005C  EC6F0000             R +0  763    763 		cmp	ix,PRN_BUF_LSD		;V4.07
00000060  DCF6                   +0  764    764 		j	le,err_5514_prt		;V4.07
00000062  FE0000               R +0  765    765 		jp	print_bk		;V4.07
00000065                         +0  766    766 stg_print:
00000065  FD0000               R +0  767    767 		call	message_edit
00000068  FC52                   +0  768    768 		j	print_bk		;print with black color
0000006A                         +0  769    769 mes_error:
                                 +0  770    770 ;V4.02		db	"             ERROR"
0000006A  1C25252325             +0  771    771 		db	ps_e,ps_r,ps_r,ps_o,ps_r
0000006F                         +0  772    772 mes_line:
                                 +0  773    773 ;V4.02	db	"- - - - - - - - - "
0000006F                         +0  774    774 mes_stop:
                                 +0  775    775 ;V4.02		db	"-*-*-*-*-*-*-*-*-*"
                                 +0  776    776 
0000006F                         +0  777    777 message_edit:
                                 +0  778    778 ;V4.04		ld	c,4
0000006F  4D0000               R +0  779    779 		ld	iy,PRN_BUF_LSD_LTP+3
00000072  E1000058             R +0  780    780 	test	(FLG_MODE).0
00000076  A2                     +0  781    781 	j	f,message_p0
00000077  4D0000               R +0  782    782 		ld	iy,PRN_BUF_LSD+3
0000007A                         +0  783    783 message_p0:		
0000007A  E740                   +0  784    784 		ld	a,(hl+c)
0000007C  F578                   +0  785    785 		ld	(iy),a
0000007E  3D                     +0  786    786 		dec	iy
0000007F  2A                     +0  787    787 		dec	c
                                 +0  788    788 ;V4.05		cmp	c,0
                                 +0  789    789 ;V4.05		j	lt,message_p0	
00000080  B8                     +0  790    790 		j	f,message_p0
00000081  FA                     +0  791    791 		ret
                                 +0  792    792 ;==============================================================================
                                 +0  793    793 ;		wakeup print 
                                 +0  794    794 ;==============================================================================
00000082                         +0  795    795 wkup_print:
00000082  FD0000               R +0  796    796 		call	spc_prnbuf
00000085  1A03                   +0  797    797 		ld	c,3
00000087  4B0000               R +0  798    798 		ld	hl,mes_wkup
0000008A  4D0000               R +0  799    799 		ld	iy,PRN_BUF_SYM_LTP+2	;V4.04
0000008D  E1000058             R +0  800    800 	test	(FLG_MODE).0
00000091  A2                     +0  801    801 	j	f,wkup_print_1
00000092  4D0000               R +0  802    802 		ld	iy,PRN_BUF_SYM+1
                                 +0  803    803 ;V4.04		ld	(PRN_BUF_LSD-1),ps_0
                                 +0  804    804 ;V4.04		ld	(PRN_BUF_LSD),ps_dot
                                 +0  805    805 ;V4.04		ld	(PRN_BUF_SYM),ps_c
                                 +0  806    806 ;V4.04		ld	(PRN_BUF_SYM+1),ps_str
                                 +0  807    807 ;V4.04		j	print_bk		;print with black color
00000095                         +0  808    808 wkup_print_1:						;V4.03
                                 +0  809    809 ;V4.04		ld	(PRN_BUF_LSD_LTP-1),ps_0	;V4.03
                                 +0  810    810 ;V4.04		ld	(PRN_BUF_LSD_LTP),ps_dot	;V4.03
                                 +0  811    811 ;V4.04		ld	(PRN_BUF_SYM_LTP),ps_c		;V4.03
                                 +0  812    812 ;V4.04		ld	(PRN_BUF_SYM_LTP+1),ps_str	;V4.03

⌨️ 快捷键说明

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