Lo he ensamblado con el pasmo (org 63000, como la versión 2.0), sacado la tabla de entradas, etc. He pillado el listado de la demo que va en un snapshot en la versión 2.0 y tras sacar el charset, el listado que corre en esa versión es este:
Código: Seleccionar todo
1 CLEAR 62999
3 LOAD "fsp2demo.fnt" CODE 64600
4 LOAD "fsp20.bin" CODE 63000
10 POKE 63000,1
20 POKE 63006,0 : POKE 63007,1 : POKE 63008,2 : POKE 63009,3
30 POKE 63042,7 : POKE 63043,6 : POKE 63044,6 : POKE 63045,6
40 POKE 63050,1
50 POKE 63056,16 : POKE 63057,17 : POKE 63058,18 : POKE 63059,19
60 POKE 63092,6 : POKE 63093,4 : POKE 63094,4 : POKE 63095,4
70 POKE 63100,0 : POKE 63150,0
100 CLS : FOR I=0 TO 175 STEP 8 : PLOT 0,0 : DRAW PAPER INT(RND*8); INK INT(RND*8); 255,I : PLOT 255,175 : DRAW PAPER INT(RND*8); INK INT(RND*8); -255,-I : NEXT I
110 LET PX=5 : LET PY=10 : LET EX=25 : LET EY=10
120 LET EMX=1 : LET EMY=1
130 POKE 63002,PX : POKE 63003,PY : POKE 63004,PX : POKE 63005,PY
140 POKE 63052,EX : POKE 63053,EY : POKE 63054,EX : POKE 63055,EY
150 RANDOMIZE USR 63204
180 GO SUB 9998
190 POKE 23658,8
200 IF INKEY$ ="O" THEN IF PX>0 THEN LET PX=PX-1 : POKE 63006,8 : POKE 63007,9 : POKE 63008,10 : POKE 63009,11
210 IF INKEY$ ="P" THEN IF PX<30 THEN LET PX=PX+1 : POKE 63006,0 : POKE 63007,1
: POKE 63008,2 : POKE 63009,3
220 IF INKEY$ ="Q" THEN IF PY>0 THEN LET PY=PY-1
230 IF INKEY$ ="A" THEN IF PY<22 THEN LET PY=PY+1
240 IF INKEY$ =" " THEN GO SUB 9999 : STOP
250 LET EX=EX+EMX : IF EX=0 OR EX=30 THEN LET EMX=-EMX
260 LET EY=EY+EMY : IF EY=0 OR EY=22 THEN LET EMY=-EMY
300 POKE 63002,PX : POKE 63003,PY
310 POKE 63052,EX : POKE 63053,EY
320 RANDOMIZE USR 63446
330 GO TO 200
9997 STOP
9998 POKE 23606,88 : POKE 23607,251 : RETURN
9999 POKE 23606,0 : POKE 23607,60 : RETURN
Igual lo tengo delante ¿alguna pista?
Un saludo.