APPLICATIONSDIVERS ★ 8-bit Print Routine ★

8-bit Print Routine|Amstrad Computer User)Applications Divers

10 '8-bit print routine; J.G. Gibbs, June 1989.
20 MODE 2:BORDER 26:INK 1,0: INK 0,26:esc=27:hival=62:loval=61
30 query$="Is your printer EPSON compatible?": GOSUB 400
40 IF reply$="Y" THEN GOTO 80
50 INPUT"Please input the escape code for your printer : ",esc
60 INPUT"and the code to set bit 8 to 1 : ",hival
70 INPUT"and the code to set bit 8 to 0 : ",loval
80 query$="Do you want to specify a load address?": GOSUB 400
90 IF reply$="N" THEN MEMORY HIMEM-90: base=HIMEM+2: GOTO 110
100 INPUT"Please specify load address required : ",base: IF base<0 THEN base=65536+base
110 entlo=PEEK(&BDF2):enthi=PEEK(&BDF3): :'read printer indirection
120 FOR i=0 TO 84
130 READ incode
140 IF incode<>1000 THEN POKE base+i,incode:GOTO 190::'not relocatable address
150 READ offset: :'to be loaded to HIMEM+1, HIMEM+i+1
160 GOSUB 460: :'convert to actual address
170 POKE base+i,lobyte%: i=i+1
180 POKE base+i,hibyte%
190 NEXT i
200 POKE base+82,hival
210 POKE base+83,loval
220 POKE base+84,esc
230 POKE base+64,entlo
240 POKE base+65,enthi
250 POKE base+73,entlo
260 POKE base+74,enthi
270 offset=0: GOSUB 460
280 POKE &BDF2,lobyte%
290 POKE &BDF3,hibyte%: :'access new driver
300 END
310 :
320 DATA &E5,&D5,&C5,&F5,&D6,&80,&FA,1000,37,&3A,1000,81
330 DATA &ED,&44,&C2,1000,62,&3E,&01,&32,1000,81,&3A,1000,84
340 DATA &CD,1000,70,&3A,1000,82,&CD,1000,70,&C3,1000,62,&3A,1000,81
350 DATA &ED,&44,&CA,1000,62,&3E,&00,&32,1000,81,&3A,1000,84,&CD,1000,70
360 DATA &3A,1000,83,&CD,1000,70,&F1,&CD,00,00,&C1,&D1,&E1,&C9
370 DATA &C5,&F5,&CD,&00,&00,&D2,1000,72,&F1,&C1,&C9
380 DATA 0,0,0,0
390 :
400 :'input query subroutine
410 query$=query$+" Y/N : ":PRINT query$;
420 INPUT " ",reply$: reply$=UPPER$(reply$)
430 IF reply$<>"Y" AND reply$<>"N" THEN GOTO 410
440 RETURN
450 :
460 :'address calculation subroutine
470 addr=base+offset
480 part1=addr/256
490 hibyte%=part1
500 delta=hibyte%-part1
510 IF delta>0 THEN hibyte%=hibyte%-1::'rounded up
520 lobyte%=(part1-hibyte%)*256
530 RETURN

★ PUBLISHER: Amstrad Computer User
★ ANNÉE: 1989
★ AUTHOR: J.G. Gibbs

CPCrulez[Content Management System] v8.7-desktop/cache
Page créée en 098 millisecondes et consultée 405 fois

L'Amstrad CPC est une machine 8 bits à base d'un Z80 à 4MHz. Le premier de la gamme fut le CPC 464 en 1984, équipé d'un lecteur de cassettes intégré il se plaçait en concurrent  du Commodore C64 beaucoup plus compliqué à utiliser et plus cher. Ce fut un réel succès et sorti cette même années le CPC 664 équipé d'un lecteur de disquettes trois pouces intégré. Sa vie fut de courte durée puisqu'en 1985 il fut remplacé par le CPC 6128 qui était plus compact, plus soigné et surtout qui avait 128Ko de RAM au lieu de 64Ko.