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

📄 prn_edit.lst

📁 calculator code ,use toshibaor nec LSI
💻 LST
📖 第 1 页 / 共 5 页
字号:
00000095  FD0000               R +0  813    813 		call	message_p0			;V4.04
00000098  FC22                   +0  814    814 		j	print_bk			;V4.03 print with black color
0000009A                         +0  815    815 mes_wkup:
0000009A  000C1A0D               +0  816    816 	db	ps_0,ps_dot,ps_c,ps_str
                                 +0  817    817 ;==============================================================================
                                 +0  818    818 ;		only symbol print
                                 +0  819    819 ;==============================================================================
                                 +0  820    820 ;symbol print with black/red print.....
                                 +0  821    821 ;sym_print_br:
                                 +0  822    822 ;		ld	ix,hl			;work reg. pointer save
                                 +0  823    823 ;		call	spc_prnbuf
                                 +0  824    824 ;		call	store_zs8		;set P_RED flag by refer (ix) contents 
                                 +0  825    825 ;		call	set_symbol
                                 +0  826    826 ;		j	wk_print9		;print with check P_NP flag
                                 +0  827    827 
                                 +0  828    828 ;symbol print always black.....
0000009E                         +0  829    829 sym_print_br:
0000009E  FD0000               R +0  830    830 		call	spc_prnbuf
000000A1  FD0000               R +0  831    831 		call	set_symbol
000000A4  FC35                   +0  832    832 		j	wk_print9		;print with check P_NP flag
                                 +0  833    833 
                                 +0  834    834 ;==============================================================================
                                 +0  835    835 ;		feed 1 line 
                                 +0  836    836 ;==============================================================================
000000A6                         +0  837    837 feed_1:
000000A6  480000               R +0  838    838 	ld	wa,P_NP
000000A9  E10000FC             R +0  839    839 	test	(P_NP>>4).a		;bit -reverse-> jump status
000000AD  80                     +0  840    840 	j	t,feed_1_start		;if jump status is 1 -> branch
000000AE  FA                     +0  841    841 		ret
000000AF                         +0  842    842 feed_1_start:
000000AF  FD0000               R +0  843    843 		call	spc_prnbuf
000000B2  480000               R +0  844    844 	ld	wa,P_RED
000000B5  E10000FA             R +0  845    845 	clr	(P_RED>>4).a
                                 +0  846    846 ;V3.08		jp	key_feed
000000B9  FE0000               R +0  847    847 		j	print		;V3.08
000000BC                         +0  848    848 print_bk:
000000BC  480000               R +0  849    849 	ld	wa,P_RED
000000BF  E10000FA             R +0  850    850 	clr	(P_RED>>4).a
000000C3  FC16                   +0  851    851 		j	wk_print9		;print with check P_NP flag
                                 +0  852    852 ;==============================================================================
                                 +0  853    853 ;		feed 1 line(igonore P_NP...for manual key feed) 
                                 +0  854    854 ;==============================================================================
000000C5                         +0  855    855 kfeed_1:
000000C5  FD0000               R +0  856    856 		call	spc_prnbuf
000000C8  480000               R +0  857    857 	ld	wa,P_RED
000000CB  E10000FA             R +0  858    858 	clr	(P_RED>>4).a
000000CF  FE0000               R +0  859    859 		jp	key_feed	;V3.08 V3.09
                                 +0  860    860 ;V3.09		jp	print		;V3.08
                                 +0  861    861 ;==============================================================================
                                 +0  862    862 ;		print work register 
                                 +0  863    863 ;==============================================================================
                                 +0  864    864 ;always print......(for CE/C key of logos694T)
000000D2                         +0  865    865 wk_print_alws:
000000D2  FD0000               R +0  866    866 		call	edit_prn
                                 +0  867    867 ;V3.00		call	cap_to_prn		;add caption to PRN_BUF with 2line print control
000000D5  FE0000               R +0  868    868 		j	print			;
                                 +0  869    869 
                                 +0  870    870 ;edit and print....
000000D8                         +0  871    871 wk_print:
000000D8  FD0000               R +0  872    872 		call	edit_prn
                                 +0  873    873 ;V3.00		call	cap_to_prn		;add caption to PRN_BUF with 2line print control
000000DB                         +0  874    874 wk_print9:
                                 +0  875    875 ;V3.00		@BBS	(RP_PRINT,wk_print91)	;auto replay printing?  yes->print
000000DB  480000               R +0  876    876 	ld	wa,P_NP
000000DE  E10000FC             R +0  877    877 	test	(P_NP>>4).a		;bit -reverse-> jump status
000000E2  A2                     +0  878    878 	j	f,wk_print99		;if jump status is 0 -> branch
000000E3                         +0  879    879 wk_print91:
000000E3  FD0000               R +0  880    880 		call	print
000000E6                         +0  881    881 wk_print99:
000000E6  FA                     +0  882    882 		ret
                                 +0  883    883 
                                 +0  884    884 ;==============================================================================
                                 +0  885    885 ;		Caption set to PRN_BUF (if overflow, print 2line)
                                 +0  886    886 ;==============================================================================
                                 +0  887    887 ;V3.00;input: (CAP) <-caption code(00 to 0b)
                                 +0  888    888 ;V3.00;       (LANG) <-lunguage code(0 to 4)
                                 +0  889    889 ;V3.00CAP_L_C		equ	10		;caption length
                                 +0  890    890 ;V3.00MAX_LANG	equ	5		;muximum language
                                 +0  891    891 ;V3.00cap_to_prn:
                                 +0  892    892 ;V3.00		@BBC	(SW_CAP,cap_tpr_9)		
                                 +0  893    893 ;check effective length of caption...
                                 +0  894    894 ;V3.00		ld	a,(CAP)			;caption code
                                 +0  895    895 ;V3.00		j	z,cap_tpr_9		;code=0 -> igonore
                                 +0  896    896 ;V3.00		cmp	a,CAP_BOT
                                 +0  897    897 ;V3.00		j	gt,cap_tpr_9		;code is over -> igonore
                                 +0  898    898 ;V3.00		call	cap_addr		;hl <- caption top address
                                 +0  899    899 ;V3.00		ld	c,CAP_L_C-1		;
                                 +0  900    900 ;V3.00cap_tpr_1:		
                                 +0  901    901 ;V3.00		cmp	(hl+c),' '		;
                                 +0  902    902 ;V3.00		j	ne,cap_tpr_19
                                 +0  903    903 ;V3.00		dec	c			;
                                 +0  904    904 ;V3.00		j	f,cap_tpr_1		;c=ff? no->
                                 +0  905    905 ;V3.00cap_tpr_19:
                                 +0  906    906 ;V3.00		inc	c			;c <- effective length of caption
                                 +0  907    907 ;V3.00		cmp	(CAP),CAP_FCR		;FC rate caption?  no->
                                 +0  908    908 ;V3.00		j	ne,cap_tpr_190
                                 +0  909    909 ;V3.00		inc	c			;length+2 for RATEnn (2digits number+1space)
                                 +0  910    910 ;V3.00		inc	c
                                 +0  911    911 ;V3.00		inc	c
                                 +0  912    912 ;V3.00cap_tpr_190:		
                                 +0  913    913 ;V3.00;check effective space length of PRN_BUF...
                                 +0  914    914 ;V3.00		ld	hl,PRN_BUF_MSD
                                 +0  915    915 ;V3.00cap_tpr_1x:
                                 +0  916    916 ;V3.00		ld	b,0
                                 +0  917    917 ;V3.00cap_tpr_2:		
                                 +0  918    918 ;V3.00		cmp	(hl),' '
                                 +0  919    919 ;V3.00		j	ne,cap_tpr_29
                                 +0  920    920 ;V3.00		inc	hl
                                 +0  921    921 ;V3.00		inc	b			;reg.b <-effective space length of PRN_BUF
                                 +0  922    922 ;V3.00		cmp	b,D_PRN_MAX
                                 +0  923    923 ;V3.00		j	lt,cap_tpr_2
                                 +0  924    924 ;V3.00cap_tpr_29:
                                 +0  925    925 ;V3.00		inc	c			;need extra one more space for sepalator
                                 +0  926    926 ;V3.00		cmp	c,b
                                 +0  927    927 ;V3.00		j	le,cap_tpr_5		;caption length is smaller than PRN_BUF space  -> set caption
                                 +0  928    928 ;V3.00;not enough space in PRN_BUF -> 2line print
                                 +0  929    929 ;V3.00		call	prn_buff_save
                                 +0  930    930 ;V3.00		ld	b,0			;reg.b ... back up for black/red
                                 +0  931    931 ;V3.00		@BBC	(P_RED,cap_tpr_30)	;save red print flag
                                 +0  932    932 ;V3.00		ld	b,1
                                 +0  933    933 ;V3.00cap_tpr_30:
                                 +0  934    934 ;V3.00		push	b
                                 +0  935    935 ;V3.00		call	spc_prnbuf		;PRN_BUF space clear
                                 +0  936    936 ;V3.00		call	cap_set			;caption set to PRN_BUF
                                 +0  937    937 ;V3.00		call	wk_print9		;print caption only
                                 +0  938    938 ;V3.00		call	prn_buff_load
                                 +0  939    939 ;V3.00		pop	b
                                 +0  940    940 ;V3.00		cmp	b,0
                                 +0  941    941 ;V3.00		j	eq,cap_tpr_9		;black print?  yes->
                                 +0  942    942 ;V3.00		@SEB	(P_RED)
                                 +0  943    943 ;V3.00		j	cap_tpr_9
                                 +0  944    944 ;V3.00cap_tpr_5:
                                 +0  945    945 ;V3.00		call	cap_set
                                 +0  946    946 ;V3.00cap_tpr_9:
                                 +0  947    947 ;V3.00		ld	(CAP),CAP_SPC		;clear caption code
                                 +0  948    948 ;V3.00		ret
                                 +0  949    949 
                                 +0  950    950 ;V3.00;move caption table to PRN_BUF.....
                                 +0  951    951 ;V3.00cap_set:
                                 +0  952    952 ;V3.00		call	cap_addr		;hl <- caption top address
                                 +0  953    953 ;V3.00		ld	iy,PRN_BUF_MSD
                                 +0  954    954 ;V3.00cap_setx:
                                 +0  955    955 ;V3.00		ld	c,0
                                 +0  956    956 ;V3.00cap_set0:
                                 +0  957    957 ;V3.00		ld	a,(hl+c)
                                 +0  958    958 ;V3.00		cmp	a,' '
                                 +0  959    959 ;V3.00		j	eq,cap_set2
                                 +0  960    960 ;V3.00		ld	(iy),a
                                 +0  961    961 ;V3.00cap_set2:
                                 +0  962    962 ;V3.00		inc	iy
                                 +0  963    963 ;V3.00		inc	c
                                 +0  964    964 ;V3.00		cmp	c,CAP_L_C
                                 +0  965    965 ;V3.00		j	lt,cap_set0
                                 +0  966    966 
                                 +0  967    967 ;V3.00		cmp	(CAP),CAP_FCR		;FC rate caption?  no->
                                 +0  968    968 ;V3.00		j	ne,cap_set4
                                 +0  969    969 ;V3.00;set 2digits FC rate number....
                                 +0  970    970 ;V3.00		ld	c,CAP_L_C-1		;
                                 +0  971    971 ;V3.00cap_set30:
                                 +0  972    972 ;V3.00		cmp	(hl+c),' '
                                 +0  973    973 ;V3.00		j	ne,cap_set36		;not blank?  yes-> set number
                                 +0  974    974 ;V3.00		dec	c
                                 +0  975    975 ;V3.00		j	f,cap_set30		;c=ff? no->
                                 +0  976    976 ;V3.00cap_set36:
                                 +0  977    977 ;V3.00		inc	c
                                 +0  978    978 ;V3.00		ld	hl,PRN_BUF_MSD
                                 +0  979    979 ;V3.00		ld	(hl+c),'-'		;insert "-"
                                 +0  980    980 ;V3.00		inc	c
                                 +0  981    981 ;V3.00		ld	a,(BEE_RNO)		;current rate number
                                 +0  982    982 ;V3.00		inc	a
                   

⌨️ 快捷键说明

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