Karoshi MSX Community
05 de Julio de 2021, 01:00:58 pm *
Bienvenido(a), Visitante. Por favor, ingresa o regístrate.

Ingresar con nombre de usuario, contraseña y duración de la sesión
Noticias:
 
   Inicio   Ayuda Buscar Ingresar Registrarse  
Páginas: [1]
  Imprimir  
Autor Tema: Necesito snippet para roms de 32kb  (Leído 3849 veces)
0 Usuarios y 1 Visitante están viendo este tema.
Darth_Fistro
Karoshi Hero
*****
Mensajes: 507


Email
« : 07 de Febrero de 2006, 08:43:00 pm »

¡Hola!

Es que he sobrepasado los 16kbs y ahora no encuentro el snippet de Robsy para reconocer roms de 32kb.

El caso es que me pasa ahora algo muy raro. Cuando ejecuto el juego, y llevo unos 20 segundos jugando, se bloquea todo. Lo he revisado de arriba a abajo pero no encuentro que haya introducido nada raro. Especifiqué la rom como size 32. ¿Puede esto tener algo que ver?  Embarrassed
En línea

MSX FOREVER (hasta que saquen un ZX81 con TMS, PSG y 64K de RAM)
Darth_Fistro
Karoshi Hero
*****
Mensajes: 507


Email
« Respuesta #1 : 07 de Febrero de 2006, 08:52:20 pm »

Pues debe ser eso, porque cuando me dió el error, se pasaba de los 16 pillando la rutina del Caruso, que la tengo al final de la rom. Ahora he deshabilitado los calls al Caruso y la rom de 32 funciona perfectamente. Así que parece que el acceso a esos 16kb extra da problemas  Undecided
En línea

MSX FOREVER (hasta que saquen un ZX81 con TMS, PSG y 64K de RAM)
pitpan
Karoshi Forum's Guru
*******
Mensajes: 1812


« Respuesta #2 : 07 de Febrero de 2006, 11:13:15 pm »

Pues a ver si puede Jon sacarlo del site original, porque aquí no lo tengo. El problema es que la BIOS se da por satisfecha cuando localiza la primera página ROM, esto es, los primeros 16 KB. Por eso tienes que localizar la segunda página manualmente, y eso era lo que hacía el snippet, incluyendo un adecuado tratamiento de slots y subslots, por si se te ocurre lanzar tu juego en un expansor de slots.
En línea
jltursan
Karoshi Forum's Guru
*******
Mensajes: 1516


¿Que es lo que has aprendido hoy?


WWW Email
« Respuesta #3 : 07 de Febrero de 2006, 11:15:06 pm »

Pues con el permiso de Robsy, aquí la tienes :

Código:
;------------------------------------------------
; Esta es la rutina para hacer funcionar ROMs
; de 32 KB sin problemas. Lo unico que tienes
; que hacer es asegurarte de usar las siguientes
; directivas del asMSX:
; .bios
; .page 1
; .rom
; Y ya esta. Espero que esto ayude!
; Edu R.
; 20 de Abril de 2005
;------------------------------------------------

;------------------------------------------------
LOCALIZAR_SEGUNDA_PAGINA:
; Rutina que localiza la segunda pagina de 16 KB
; de una ROM de 32 KB ubicada en 4000h
; -Basada en la rutina de Konami-
; Compatible con carga en RAM
; Compatible con expansores de slots
;------------------------------------------------
; Comprobacion de RAM/ROM
ld hl,4000h
ld b,[hl]
xor a
ld [hl],a
ld a,[hl]
or a
jr nz,@@ROM
; El programa esta en RAM - no buscar
ld [hl],b
ret
@@ROM:
di
; Slot primario
call RSLREG
rrca
rrca
and 03h
; Slot secundario
ld c,a
ld hl,0FCC1h
add a,l
ld l,a
ld a,[hl]
and 80h
or c
ld c,a
inc l
inc l
inc l
inc l
ld a,[hl]
; Definir el identificador de slot
and 0ch
or c
ld h,80h
; Habilitar permanentemente
call ENASLT
ei
ret
;------------------------------------------------
En línea

Doom dee doom dee doom
Darth_Fistro
Karoshi Hero
*****
Mensajes: 507


Email
« Respuesta #4 : 08 de Febrero de 2006, 03:26:31 pm »

Mil gracias, ahora todo va como la seda  Kiss Kiss Kiss
En línea

MSX FOREVER (hasta que saquen un ZX81 con TMS, PSG y 64K de RAM)
Páginas: [1]
  Imprimir  
 
Ir a:  

Impulsado por MySQL Impulsado por PHP Powered by SMF 1.1.21 | SMF © 2013, Simple Machines XHTML 1.0 válido! CSS válido!