Abadia del Crimen MSX2 y Problemas con Diskettera

Page 1/2
| 2

By HB-F9S

Champion (440)

HB-F9S's picture

27-10-2011, 22:17

Hola,
Estoy intendado cargar la Abadia del crimen de MSX2 en diskette, y cuando está apunto de cargar me dice que "out of memory in 110" El ordenador es un phillips 8245.
Otra duda, con algunos juegos, una vez cargados, sigue funcionando la diskettera, se puede parar de alguna manera? Por qué puede ser?
Muchas gracias!!

Login or register to post comments

By Paulbrk

Hero (611)

Paulbrk's picture

28-10-2011, 01:05

Creo que al reiniciar tienes que dejar pulsado control, eso libera un espacio de memoria que es lo que le falta al juego.

Tienes que dejar pulsado la tecla control desde que enciendes el ordenador hasta que se oye un pitido despues del logo de MSX2.

By assembler

Champion (414)

assembler's picture

28-10-2011, 11:14

Para lo de la disquetera, había que modificar el cargador del juego para que el último bloque que carga lo haga sin el ,r
Luego se hace una pequeña espera para que se apague la luz, y ejecutar el bloque con defusr=&H[direcciondecarga]:a=usr(0)

Eso sí, tienes que buscar cual es la dirección de ejecución de ese fichero...

By HB-F9S

Champion (440)

HB-F9S's picture

28-10-2011, 20:19

Hola Assember,
Cómo modifico el cargador del juego? Cuando entro en el diskette sólo hay archivos .saw, .bas, ABADIA.2..3..4..5..6 y un archivo LOADER
Qué es lo que tengo qué modificar?
Muchas gracias!

By assembler

Champion (414)

assembler's picture

28-10-2011, 22:19

El .bas será el autoexec.
Para no tener problema, arranca el ordenador sin el disco, y una vez arrancado, mete el disco

Carga el loader con LOAD"LOADER"
La ultima linea debe ser un BLOAD"loquesea.6",R
Quita el ,R
Ahora viene lo mas complicado: tienes que localizar la direccion de ejecución del programa (ahí me pillas, no se como se hace en los ficheros de disco, pero no debe ser complicado)
Cuando la tengas, en un numero de linea posterior al bload al que le has quitado el ,r
Pones
100 For a=1 to 10000:NeXT
110 Defusr=&hxxxx:a=usr(0)
Los números de linea tienen que estar después de la del bload, y las XXXX las sustituyes por la direccion de ejecucion

By odiseaMSX

Champion (419)

odiseaMSX's picture

29-10-2011, 21:34

Manten pulsadas tambien la tecla CTRL junto con la tecla STOP, y enciende el F9S sin soltar esas dos teclas hasta que te aparezca el BASIC. Esto te libera
la memoria que usa la agenda, además que no te la inicia esta agenda, saltará directamente al BASIC.

By HB-F9S

Champion (440)

HB-F9S's picture

30-10-2011, 16:31

Muchas gracias!
Ya carga perfectamenta el juego!!

By manolito74

Paragon (1288)

manolito74's picture

30-10-2011, 19:18

Hola:

Para saber la dirección de ejecución hay por ahí programillas que leen el bloque y te dan las 3 direcciones: inicio, final, ejecución.

En otro momento (no estoy en mi ordenador) a ver si busco un programilla de esos Basic y lo pongo por aquí. El que quiera también me puede mandar un mail a mi dirección de GMAIL josemanuel74 y se lo mando.

Saludetes. ;-)

By HB-F9S

Champion (440)

HB-F9S's picture

31-10-2011, 10:09

Hola manolito74!
Mail enviado!
Gracias!

By Guillian

Prophet (3516)

Guillian's picture

31-10-2011, 10:54

Por si a alguno le interesa:
- Parar la unidad de disco: defusr=&hfd9f:for i = 0 to 255: a=usr(0):next
- Ejecutar el último BLOAD cargado: defusr=peek(&hfcbf)+256*peek(&hfcc0):a=usr(0)

By assembler

Champion (414)

assembler's picture

31-10-2011, 10:59

¿Que hay en la dirección 0xFD9F?

Page 1/2
| 2