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

📄 prn_edit.med

📁 calculator code ,use toshibaor nec LSI
💻 MED
📖 第 1 页 / 共 5 页
字号:
      929       ;==============================================================================
      930       ;symbol print with black/red print.....
      931       ;sym_print_br:
      932       ;		ld	ix,hl			;work reg. pointer save
      933       ;		call	spc_prnbuf
      934       ;		call	store_zs8		;set P_RED flag by refer (ix) contents 
      935       ;		call	set_symbol
      936       ;		j	wk_print9		;print with check P_NP flag
      937       
      938       ;symbol print always black.....
      939       sym_print_br:
      940       		call	spc_prnbuf
      941       		call	set_symbol
      942       		j	wk_print9		;print with check P_NP flag
      943       
      944       ;==============================================================================
      945       ;		feed 1 line 
      946       ;==============================================================================
      947       feed_1:
      949 +1    	ld	wa,P_NP
      950 +1    	test	(P_NP>>4).a		;bit -reverse-> jump status
      951 +1    	j	t,feed_1_start		;if jump status is 1 -> branch
      952       		ret
      953       feed_1_start:
      954       		call	spc_prnbuf
      956 +1    	ld	wa,P_RED
      957 +1    	clr	(P_RED>>4).a
      958       ;V3.08		jp	key_feed
      959       		j	print		;V3.08
      960       print_bk:
      962 +1    	ld	wa,P_RED
      963 +1    	clr	(P_RED>>4).a
      964       		j	wk_print9		;print with check P_NP flag
      965       ;==============================================================================
      966       ;		feed 1 line(igonore P_NP...for manual key feed) 
      967       ;==============================================================================
      968       kfeed_1:
      969       		call	spc_prnbuf
      971 +1    	ld	wa,P_RED
      972 +1    	clr	(P_RED>>4).a
      973       		jp	key_feed	;V3.08 V3.09
      974       ;V3.09		jp	print		;V3.08
      975       ;==============================================================================
      976       ;		print work register 
      977       ;==============================================================================
      978       ;always print......(for CE/C key of logos694T)
      979       wk_print_alws:
      980       		call	edit_prn
      981       ;V3.00		call	cap_to_prn		;add caption to PRN_BUF with 2line print control
      982       		j	print			;
      983       
      984       ;edit and print....
      985       wk_print:
      986       		call	edit_prn
      987       ;V3.00		call	cap_to_prn		;add caption to PRN_BUF with 2line print control
      988       wk_print9:
      989       ;V3.00		@BBS	(RP_PRINT,wk_print91)	;auto replay printing?  yes->print
      991 +1    	ld	wa,P_NP
      992 +1    	test	(P_NP>>4).a		;bit -reverse-> jump status
      993 +1    	j	f,wk_print99		;if jump status is 0 -> branch
      994       wk_print91:
      995       		call	print
      996       wk_print99:
      997       		ret
      998       
      999       ;==============================================================================
     1000       ;		Caption set to PRN_BUF (if overflow, print 2line)
     1001       ;==============================================================================
     1002       ;V3.00;input: (CAP) <-caption code(00 to 0b)
     1003       ;V3.00;       (LANG) <-lunguage code(0 to 4)
     1004       ;V3.00CAP_L_C		equ	10		;caption length
     1005       ;V3.00MAX_LANG	equ	5		;muximum language
     1006       ;V3.00cap_to_prn:
     1007       ;V3.00		@BBC	(SW_CAP,cap_tpr_9)		
     1008       ;check effective length of caption...
     1009       ;V3.00		ld	a,(CAP)			;caption code
     1010       ;V3.00		j	z,cap_tpr_9		;code=0 -> igonore
     1011       ;V3.00		cmp	a,CAP_BOT
     1012       ;V3.00		j	gt,cap_tpr_9		;code is over -> igonore
     1013       ;V3.00		call	cap_addr		;hl <- caption top address
     1014       ;V3.00		ld	c,CAP_L_C-1		;
     1015       ;V3.00cap_tpr_1:		
     1016       ;V3.00		cmp	(hl+c),' '		;
     1017       ;V3.00		j	ne,cap_tpr_19
     1018       ;V3.00		dec	c			;
     1019       ;V3.00		j	f,cap_tpr_1		;c=ff? no->
     1020       ;V3.00cap_tpr_19:
     1021       ;V3.00		inc	c			;c <- effective length of caption
     1022       ;V3.00		cmp	(CAP),CAP_FCR		;FC rate caption?  no->
     1023       ;V3.00		j	ne,cap_tpr_190
     1024       ;V3.00		inc	c			;length+2 for RATEnn (2digits number+1space)
     1025       ;V3.00		inc	c
     1026       ;V3.00		inc	c
     1027       ;V3.00cap_tpr_190:		
     1028       ;V3.00;check effective space length of PRN_BUF...
     1029       ;V3.00		ld	hl,PRN_BUF_MSD
     1030       ;V3.00cap_tpr_1x:
     1031       ;V3.00		ld	b,0
     1032       ;V3.00cap_tpr_2:		
     1033       ;V3.00		cmp	(hl),' '
     1034       ;V3.00		j	ne,cap_tpr_29
     1035       ;V3.00		inc	hl
     1036       ;V3.00		inc	b			;reg.b <-effective space length of PRN_BUF
     1037       ;V3.00		cmp	b,D_PRN_MAX
     1038       ;V3.00		j	lt,cap_tpr_2
     1039       ;V3.00cap_tpr_29:
     1040       ;V3.00		inc	c			;need extra one more space for sepalator
     1041       ;V3.00		cmp	c,b
     1042       ;V3.00		j	le,cap_tpr_5		;caption length is smaller than PRN_BUF space  -> set caption
     1043       ;V3.00;not enough space in PRN_BUF -> 2line print
     1044       ;V3.00		call	prn_buff_save
     1045       ;V3.00		ld	b,0			;reg.b ... back up for black/red
     1046       ;V3.00		@BBC	(P_RED,cap_tpr_30)	;save red print flag
     1047       ;V3.00		ld	b,1
     1048       ;V3.00cap_tpr_30:
     1049       ;V3.00		push	b
     1050       ;V3.00		call	spc_prnbuf		;PRN_BUF space clear
     1051       ;V3.00		call	cap_set			;caption set to PRN_BUF
     1052       ;V3.00		call	wk_print9		;print caption only
     1053       ;V3.00		call	prn_buff_load
     1054       ;V3.00		pop	b
     1055       ;V3.00		cmp	b,0
     1056       ;V3.00		j	eq,cap_tpr_9		;black print?  yes->
     1057       ;V3.00		@SEB	(P_RED)
     1058       ;V3.00		j	cap_tpr_9
     1059       ;V3.00cap_tpr_5:
     1060       ;V3.00		call	cap_set
     1061       ;V3.00cap_tpr_9:
     1062       ;V3.00		ld	(CAP),CAP_SPC		;clear caption code
     1063       ;V3.00		ret
     1064       
     1065       ;V3.00;move caption table to PRN_BUF.....
     1066       ;V3.00cap_set:
     1067       ;V3.00		call	cap_addr		;hl <- caption top address
     1068       ;V3.00		ld	iy,PRN_BUF_MSD
     1069       ;V3.00cap_setx:
     1070       ;V3.00		ld	c,0
     1071       ;V3.00cap_set0:
     1072       ;V3.00		ld	a,(hl+c)
     1073       ;V3.00		cmp	a,' '
     1074       ;V3.00		j	eq,cap_set2
     1075       ;V3.00		ld	(iy),a
     1076       ;V3.00cap_set2:
     1077       ;V3.00		inc	iy
     1078       ;V3.00		inc	c
     1079       ;V3.00		cmp	c,CAP_L_C
     1080       ;V3.00		j	lt,cap_set0
     1081       
     1082       ;V3.00		cmp	(CAP),CAP_FCR		;FC rate caption?  no->
     1083       ;V3.00		j	ne,cap_set4
     1084       ;V3.00;set 2digits FC rate number....
     1085       ;V3.00		ld	c,CAP_L_C-1		;
     1086       ;V3.00cap_set30:
     1087       ;V3.00		cmp	(hl+c),' '
     1088       ;V3.00		j	ne,cap_set36		;not blank?  yes-> set number
     1089       ;V3.00		dec	c
     1090       ;V3.00		j	f,cap_set30		;c=ff? no->
     1091       ;V3.00cap_set36:
     1092       ;V3.00		inc	c
     1093       ;V3.00		ld	hl,PRN_BUF_MSD
     1094       ;V3.00		ld	(hl+c),'-'		;insert "-"
     1095       ;V3.00		inc	c
     1096       ;V3.00		ld	a,(BEE_RNO)		;current rate number
     1097       ;V3.00		inc	a
     1098       ;V3.00		push	c
     1099       ;V3.00		call	hex_to_dec
     1100       ;V3.00		pop	c
     1101       ;V3.00		push	a
     1102       ;V3.00		swap	a
     1103       ;V3.00		and	a,0x0f
     1104       ;V3.00		or	a,0x60
     1105       ;V3.00		ld	(hl+c),a
     1106       ;V3.00		inc	c
     1107       ;V3.00		pop	a
     1108       ;V3.00		and	a,0x0f
     1109       ;V3.00		or	a,0x60
     1110       ;V3.00		ld	(hl+c),a
     1111       ;V3.00cap_set4:
     1112       ;V3.00		ret
     1113       
     1114       ;V3.00cap_addr:
     1115       ;V3.00		ld	a,(CAP)			;caption code(0 to 0b)
     1116       ;V3.00		dec	a
     1117       ;V3.00		ld	w,MAX_LANG		;block size par each caption
     1118       ;V3.00		mul	w,a
     1119       ;V3.00		add	a,(LANG)
     1120       ;V3.00		ld	w,CAP_L_C		;1 caption length
     1121       ;V3.00		mul	w,a
     1122       ;V3.00		ld	hl,tbl_cap_calc
     1123       ;V3.00		add	hl,wa			;hl <- caption top address
     1124       ;V3.00		ret
     1125       
     1126       
     1127       ;V3.00tbl_cap_calc:					;*code 00 is no caption
     1128       ;V3.00		db	"TAX%      "		;01 Eng Tax rate
     1129       ;V3.00		db	"STEUER%   "		;01 Ger
     1130       ;V3.00		db	"TAXE%     "		;01 Fre
     1131       ;V3.00		db	"IMPUESTO% "		;01 Spa
     1132       ;V3.00		db	"IMPOSTA%  "		;01 Ita
     1133       ;V3.00
     1134       ;V3.00		db	"TAX       "		;02 Eng Tax value
     1135       ;V3.00		db	"STEUER    "		;02 Ger
     1136       ;V3.00		db	"TAXE      "		;02 Fre
     1137       ;V3.00		db	"IMPUESTO  "		;02 Spa
     1138       ;V3.00		db	"IMPOSTA   "		;02 Ita
     1139       ;V3.00
     1140       ;V3.00		db	"TAX+      "		;03 Eng Tax+ value
     1141       ;V3.00		db	"STEUER+   "		;03 Ger
     1142       ;V3.00		db	"TAXE+     "		;03 Fre
     1143       ;V3.00		db	"IMPUESTO+ "		;03 Spa
     1144       ;V3.00		db	"IMPOSTA+  "		;03 Ita
     1145       ;V3.00
     1146       ;V3.00		db	"TAX-      "		;04 Eng Tax- value
     1147       ;V3.00		db	"STEUER-   "		;04 Ger
     1148       ;V3.00		db	"TAXE-     "		;04 Fre
     1149       ;V3.00		db	"IMPUESTO- "		;04 Spa
     1150       ;V3.00		db	"IMPOSTA-  "		;04 Ita
     1151       
     1152       ;V3.00		db	"COST      "		;05 Eng COST
     1153       ;V3.00		db	"EK-PR.    "		;05 Ger
     1154       ;V3.00		db	"COUT      "		;05 Fre
     1155       ;V3.00		db	"COMPRA    "		;05 Spa
     1156       ;V3.00		db	"COSTO     "		;05 Ita
     1157       
     1158       ;V3.00		db	"SELL      "		;06 Eng SELL
     1159       ;V3.00		db	"VK-PR.    "		;06 Ger
     1160       ;V3.00		db	"P VTE     "		;06 Fre
     1161       ;V3.00		db	"VENTA     "		;06 Spa
     1162       ;V3.00		db	"PREZZO    "		;06 Ita
     1163       
     1164       ;V3.00		db	"MARGIN    "		;07 Eng MARGIN
     1165       ;V3.00		db	"MARGE     "		;07 Ger
     1166       ;V3.00		db	"MARGE     "		;07 Fre
     1167       ;V3.00		db	"MARGEN    "		;07 Spa
     1168       ;V3.00		db	"MARGINE   "		;07 Ita
     1169       
     1170       ;V3.00		db	"PAID      "		;08 Eng CASH
     1171       ;V3.00		db	"GEGEB.    "		;08 Ger
     1172       ;V3.00		db	"PAYE      "		;08 Fre
     1173       ;V3.00		db	"PAGADO    "		;08 Spa
     1174       ;V3.00		db	"PAGAMENTO "		;08 Ita
     1175       
     1176       ;V3.00		db	"CHANGE    "		;09 Eng CHANGE
     1177       ;V3.00		db	"R",CA_UDOT2,"CKG.    "	;09 Ger
     1178       ;V3.00		db	"RENDU     "		;09 Fre
     1179       ;V3.00		db	"CAMBIO    "		;09 Spa
     1180       ;V3.00		db	"CAMBIO    "		;09 Ita
     1181       ;V3.00
     1182       ;V3.00		db	"LOCAL     "		;0a Eng LOCAL
     1183       ;V3.00		db	"LOKAL     "		;0a Ger
     1184       ;V3.00		db	"LOCAL     "		;0a Fre
     1185       ;V3.00		db	"LOCAL     "		;0a Spa
     1186       ;V3.00		db	"VAL.LOCAL "		;0a Ita
     1187       
     1188       ;V3.00		db	"FC        "		;0b Eng FC 
     1189       ;V3.00		db	"FREMD     "		;0b Ger
     1190       ;V3.00		db	"DEVISE    "		;0b Fre
     1191       ;V3.00		db	"DIVISA    "		;0b Spa
     1192       ;V3.00		db	"VAL.EST   "		;0b Ita
     1193       ;V3.00
     1194       ;V3.00		db	"RATE      "		;0c Eng FC RT
     1195       ;V3.00		db	"KURS      "		;0c Ger
     1196       ;V3.00		db	"CHANGE    "		;0c Fre
     1197       ;V3.00		db	"CONVERS.  "		;0c Spa
     1198       ;V3.00		db	"CAMBIO    "		;0c Ita
     1199       ;V3.00
     1200       ;V3.00		db	"SUBTTL    "		;0d Eng SUBTTL
     1201       ;V3.00		db	"ZW-SUM    "		;0d Ger
     1202       ;V3.00		db	"S-TOT     "		;0d Fre
     1203       ;V3.00		db	"SUBTTL    "		;0d Spa
     1204       ;V3.00		db	"SUBTTL    "		;0d Ita
     1205        ;V3.00                              
     1206       ;V3.00		db	"CASH      "		;0e Eng CASH
     1207       ;V3.00		db	"CASH      "		;0e Ger
     1208       ;V3.00		db	"CASH      "		;0e Fre

⌨️ 快捷键说明

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