[zxspectrum] Aiuto per programma basic

  • From: Michele Caruso <mic.caruso1@xxxxxxxxx>
  • To: zxspectrum@xxxxxxxxxxxxx
  • Date: Sat, 12 Jul 2014 11:35:03 +0200

Ciao a tutti.
Mi è capitato tra le mani un interessante listato basic per ZX81 (Sperimentare 7-8/82) ecco il listato, sperando che il mailer non faccia a pezzi tutto rendendolo incomprensibile:

4 CLS
5 SCROLL
6 SCROLL
10 PRINT "START ADD.";
20 INPUT A$
25 PRINT A$; "H=";
30 LET N=1
35 GOSUB 1000
40 LET A=D*256
45 LET N=3
47 GOSUB 1000
50 LET A=A+D
55 PRINT A
60 SCROLL
100 FOR I=0 TO 18
102 SCROLL
105 GOSUB 2000
110 FOR J=0 TO 7
120 LET D=PEEK (A+J+I*8)
130 GOSUB 5000
140 PRINT TAB (8+J*3); D$;
150 NEXT J
155 PAUSE 30
156 POKE 16437,255
160 IF INKEY$="M" OR I>18 THEN PAUSE 4E4
170 IF INKEY$="A" THEN GOTO 5
180 NEXT I
200 GOTO 102
1000 LET D=CODE A$(N)*16+CODE A$(N+1)-476
1010 RETURN
2000 LET D=INT ((A+I*8)/256)
2010 GOSUB 5000
2020 LET A$=D$
2030 LET D=A+I*8-D*256
2040 GOSUB 5000
2050 LET A$=A$+D$
2060 PRINT A$;
2070 RETURN
5000 LET D$=CHR$ (INT(D/16)+28)+CHR$ (D-INT(D/16)*16+28)
5010 RETURN

serve a mostrare sullo schermo i codici in esadecimale di un qualsiasi indirizzo. Utile ad es. per mappare zone della ROM o per ricavare stringhe di L/M caricate in linee REM. Dopo aver corretto un errore nel listato (niente errata corrige! :-( ) sono finalmente riuscito a farlo funzionare correttamente, ma se do il break seguito dal comando COPY invece della schermata mi vengono stampati strani caratteri intervallati da righe bianche oblique. Non vorrei che questo anomalo comportamento sia dovuto all'uso della variabile FRAMES (vedi linea 156) nel dubbio quindi mi rivolgo a voi esperti, l'intenzione sarebbe quella di poter almeno fare l'hardcopy dello schermo. Avete qualche suggerimento da darmi?

Grazie.

P.S. allego anche il programma (viste le esigue dimensioni) già pronto per l'uso con un emulatore. P.P.S. Dimenticavo, l'indirizzo da inserire deve essere di 4 cifre esadecimali: es. 0000; 4082; f000; ecc..

ECFC^C‰C_CgChChC]@¿ýÿ7ECþÿoލ
a¾¼!v„ €€€€€€€‚“
ê±®¸¹®³¬€­ª½vûvçvçv
õ89&79&))vî&
v
õ&
-vñ3~v#í~Šzv(ñ&)!"~‰v-ñ3~‚@v/
í~Šzv2ñ&&)v7õ&v<çvdë.~ß$~…vfçvi
í~‹zvnë/~ß#~ƒ`vxñ)Ó&/.$~„v‚
í!~@vŒõÂ$~„/~‚@)
v–ó/v›
ò~…pvœô" #~j!!~ˆv úA2Ù.$~…Þò * 
~@vªúA&Þì!~ƒ v´ó.vÈì~‡Lvè,ñ)Ä&
3"~…Ä&
3~ #"~‰nvòþvÐñ)Ï&.$~„!"~‰vÚ
í!~@väñ&
)
vîñ)&.$~„)!"~‰vøí!~@v
ñ&
&
)
võ&
vþvˆCñ)
ÖÏ)"~…$~…`Ö)Ï)"~…"~…$~…
`v’þvvvvvvvvvvvvvvvvvvvvvvvvvv€ø

Other related posts: