
|
[zxspectrum]
||
[Date Prev]
[11-2003 Date Index]
[Date Next]
||
[Thread Prev]
[11-2003 Thread Index]
[Thread Next]
[zxspectrum] Re: loader gbmax
- From: Roberto Montaruli <rmontaruli@xxxxxxxxx>
- To: zxspectrum@xxxxxxxxxxxxx
- Date: Mon, 3 Nov 2003 06:03:57 -0800 (PST)
--- Alfonso Martone <a.martone@xxxxxxxxxxx> wrote:
> > > 0 PAPER NOT PI: BORDER NOT PI: INK LN PI: CLS : RANDOMIZE USR
> > > (PEEK 23635+256*PEEK 23636+56):
>
> Non capisco perche' non usava la PEEK dentro una stringa della VAL...:
> RANDOMIZE USR VAL "PEEK 23635+256*PEEK 23636+56"
>
> In teoria quel "56" finale sarebbe da accorciare alquanto, visto che
> la VAL messa li' ci fa economizzare piu' di venti bytes. In pratica
> vedo che la linea e' piu' lunga di 56 bytes, per cui la RANDOMIZE USR
> finisce non nella parte REM ma nel bel mezzo del codice Basic!
>
> Su uno Spectrum "liscio" l'indirizzo calcolato dalla USR e'
> 23755+56=23811, cioe' sul "+" del "+56" finale... :-) Quindi dovra'
> attraversare "+", "56", un CHR$ 14, un numero floating point uguale a
> $00 $00 $38 $00 $00 (cioe' un JR C a vuoto e qualche NOP), una
> parentesi chiusa, un "due punti", una REM e poi tutto il resto... :-)
Magari non ci ha pensato.
Oppure, ma qui rasentiamo l'esoterismo fatto informatica, avete provato a
disassemblare quella riga rem?
Voglio dire: magari quello che in basic si legge
(PEEK 23635+256*PEEK 23636+56):
in LM ha qualche significato?
Se si trovasse una sequenza di byte che se interpretate dal basic fanno una
cosa e interpretate dello Z80 fanno qualche cos'altro e il programma si avvale
sia dell'interprete basico che dello Z80 per far fare cose diverse alla stessa
sequenza di codice...
=====
//
// In a world without walls and fences
// you would not need windows and gates.
// (Confucio)
==
P'n'P: http://cnn.com/TECH/computing/9804/20/gates.comdex/index.html
__________________________________
Do you Yahoo!?
Exclusive Video Premiere - Britney Spears
http://launch.yahoo.com/promos/britneyspears/
|

|