Manual para crear un disco de autoarranque para el ZX Spectrum +3.
¿Cómo hacer un disco arrancable por menú de ZX Spectrum +3?
- zup
- Amiga 2500
- Mensajes: 3012
- Registrado: 04 Sep 2009, 20:07
- Sistema Favorito: Spectrum 16Kb/48Kb
- primer_sistema: Spectrum 16Kb/48Kb
- consola_favorita: Nintendo DS/3DS
- Primera consola: Nintendo GameBoy
- Ubicación: Navarra
- Gracias dadas: 86 veces
- Gracias recibidas: 356 veces
- Contactar:
Re: ¿Cómo hacer un disco arrancable por menú de ZX Spectrum +3?
Hay (al menos) otros dos métodos para hacerlo, pero no son "para usuarios". Hablo de memorieta.
El menos complicado es crear en el directorio raíz un fichero con el nombre * (exactamente eso, un asterisco). Necesitarás un editor de disco para hacerlo, y no tiene demasiadas ventajas (al ser un fichero con un nombre ilegal hace que no se pueda cotillear tan fácil en sus contenidos, por otra parte con un editor de disco lo puedes renombrar y quitar esa "protección").
La segunda parte es la que utilizan los juegos comerciales. Si el contenido del sector de arranque cumple unas condiciones (esencialmente, un checksum), el Spectrum cargará este sector al final de la RAM 7 (dirección 0xFE00) y saltará a la dirección 0xFE10. A partir de ahí debería estar un programa en código máquina que sea capaz de cargar el resto del juego desde disco. La ventaja de este método es que tu disco no tiene que ser un disco con formato "legal", lo que dificulta la copia y el destripado del juego.
El orden de carga para el Spectrum +3 sería:
1.- Boot sector.
2.- Archivo *.
3.- Archivo disk.
4.- Cinta.
NOTA: Obviamente, estas "protecciones" eran relativamente eficaces cuando los hackers o piratas usaban Spectrums... con un emulador siempre estás a dos teclas de poder examinar cargadores, juegos y todo lo que quieras.
El menos complicado es crear en el directorio raíz un fichero con el nombre * (exactamente eso, un asterisco). Necesitarás un editor de disco para hacerlo, y no tiene demasiadas ventajas (al ser un fichero con un nombre ilegal hace que no se pueda cotillear tan fácil en sus contenidos, por otra parte con un editor de disco lo puedes renombrar y quitar esa "protección").
La segunda parte es la que utilizan los juegos comerciales. Si el contenido del sector de arranque cumple unas condiciones (esencialmente, un checksum), el Spectrum cargará este sector al final de la RAM 7 (dirección 0xFE00) y saltará a la dirección 0xFE10. A partir de ahí debería estar un programa en código máquina que sea capaz de cargar el resto del juego desde disco. La ventaja de este método es que tu disco no tiene que ser un disco con formato "legal", lo que dificulta la copia y el destripado del juego.
El orden de carga para el Spectrum +3 sería:
1.- Boot sector.
2.- Archivo *.
3.- Archivo disk.
4.- Cinta.
NOTA: Obviamente, estas "protecciones" eran relativamente eficaces cuando los hackers o piratas usaban Spectrums... con un emulador siempre estás a dos teclas de poder examinar cargadores, juegos y todo lo que quieras.
I have traveled across the universe and through the years to find Her. Sometimes going all the way is just a start.
Además vendo cosas!
Además vendo cosas!
- cpcbegin
- MSX Turbo R
- Mensajes: 285
- Registrado: 31 May 2013, 05:32
- Sistema Favorito: Amstrad CPC
- primer_sistema: Amstrad CPC
- consola_favorita: (Otro)
- Primera consola: (Otro)
- Ubicación: Málaga
- Gracias dadas: 145 veces
- Gracias recibidas: 128 veces
- Contactar:
Re: ¿Cómo hacer un disco arrancable por menú de ZX Spectrum +3?
Muy interesantes esos métodos que como dices son más bien para programadores muy avanzados.
La opción del archivo DISK la veo bastante accesible para quienes no dominamos el código máquina y abre la puerta a crear menús para tus compilaciones que se puedan crear por cursores, números y joysticks como el que hice para Amstrad CPC.
La opción del archivo DISK la veo bastante accesible para quienes no dominamos el código máquina y abre la puerta a crear menús para tus compilaciones que se puedan crear por cursores, números y joysticks como el que hice para Amstrad CPC.
¿Quién está conectado?
Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 9 invitados