[zxspectrum] Re: bin2rem

  • From: "Marcello Zaniboni (HotMail)" <mzaniboni@xxxxxxxxxxx>
  • To: <zxspectrum@xxxxxxxxxxxxx>
  • Date: Mon, 25 Oct 2004 10:54:00 +0200

> In risposta alle varie perplessità:
> bin2rem semplicemente crea un programma BASIC con la fatidica linea REM
contenente un file binario.
>
>
> Può servire a diversi scopi, ed è per questo che non ci sono autorun o
chiamate USR.
>
> 1) Includere un programma (rilocabile o meno) nello stesso blocco del
BASIC:
>
> 1 REM !"£$!"£$!"£  (codice macchina)
> 2 RANDOMIZE USR (5+PEEK 23635+256*PEEK 23636)
>
> Nel caso di programmi non rilocabili (compreso quanto generato con
z88dk) utilizzare la locazione 23760 (la linea 2 può a questo punto essere
semplificata con "RANDOMIZE USR 23760"), ma bisogna evitare di utilizzare
l'interface 1 o altre interfacce disco e di caricare il programma senza
averla mai attivata (un NEW prima del LOAD non guasta).
> "zcc" di Z88DK dovrà essere lanciato con l'opzione "-zorg=23760"

Chiaro... finalmente.

> 2) Incorporare delle routine rilocabili in un programma BASIC
>
> 10 DEF FN l()=USR (PEEK 23637+256*PEEK 23638+5)
> 20 ...  <il programma continua>
> 30 LET x=FN l()
> 40 REM !"£$!"£$!"£  (routine 1)
> 50 ....  <il programma continua>
> 30 LET x=FN l()
> 40 REM !$%£"£$!"£$!"£  (routine 2)
> 60 ...
>
> In questo caso ovviamente la linea REM dovrà essere rinumerata e
aggiunta al BASIC con un MERGE.
> Questo trucchetto l'avevamo inventato per il nostro "DOS in BASIC"...
forte vero ?   Viene eseguito il codice macchina allocato nella REM della
prossima linea di programma.

Questa tua mail, che mi salverò gelosamente per il futuro, potrebbe essere
inserita in un README.txt da includere insieme alla utility... mi immagino
che sia un bel po' di gente che, come me, non conosce così
approfonditamente questi trucchetti del basic e che si sia bloccata non
capendo che cosa fa esattamente bin2rem e come utilizzarlo.

Ciao e garzie,
Marcello


Other related posts: