Karoshi MSX Community

Desarrollo MSX => Desarrollo (Español/Spanish) => Mensaje iniciado por: samsaga2 en 22 de Febrero de 2012, 04:22:47 pm



Título: screen 4 y 212 pixels
Publicado por: samsaga2 en 22 de Febrero de 2012, 04:22:47 pm
¿Existe la posiblidad de poner el screen 4 con 212 pixels en lugar de 192?

vdp(10) = vdp(10) or 128

Es que busco en internet y veo que algunos dicen que si y otros que no. En cambio en la documentación del portar.txt pone bien claro 192 pixels.


Título: Re: screen 4 y 212 pixels
Publicado por: MsxKun en 22 de Febrero de 2012, 04:29:23 pm
Claro que se puede. Mirate el Pengo, es Screen4 y usa 212 pixels....


Título: Re: screen 4 y 212 pixels
Publicado por: SapphiRe_MSX en 22 de Febrero de 2012, 06:01:19 pm
Claro que se puede. Mirate el Pengo, es Screen4 y usa 212 pixels....

Incluso Screen 0 si te pones...


Título: Re: screen 4 y 212 pixels
Publicado por: MsxKun en 22 de Febrero de 2012, 06:08:59 pm
Claro que se puede. Mirate el Pengo, es Screen4 y usa 212 pixels....

Incluso Screen 0 si te pones...

Incluso mas de 212 pixels si hace falta  ;D (ver algunos juegos Matrosos)


Título: Re: screen 4 y 212 pixels
Publicado por: samsaga2 en 24 de Febrero de 2012, 10:48:07 am
¿Si hago simplemente un r#9=128 pueden haber efectos secundarios? ¿O seleccionar 60hz puede que haga que no funcione en algunos ordenadores?

Lo digo porque veo hasta el RG7SAV pero no encuentro el sitio donde se guarda el registro 9 del vdp.

Incluso mas de 212 pixels si hace falta  ;D (ver algunos juegos Matrosos)

Eññ? Como te no sea que te estés refiriendo al modo entrelazado...


Título: Re: screen 4 y 212 pixels
Publicado por: Jon_Cortazar en 24 de Febrero de 2012, 10:56:21 am
samsaga2: me parece que se refieren al overscan, con lo que se puede conseguir hasta 224 pixels de alto, no?


Título: Re: screen 4 y 212 pixels
Publicado por: MsxKun en 24 de Febrero de 2012, 01:47:11 pm
samsaga2: me parece que se refieren al overscan, con lo que se puede conseguir hasta 224 pixels de alto, no?

Pos si.


Título: Re: screen 4 y 212 pixels
Publicado por: MsxKun en 24 de Febrero de 2012, 01:54:36 pm
¿Si hago simplemente un r#9=128 pueden haber efectos secundarios? ¿O seleccionar 60hz puede que haga que no funcione en algunos ordenadores?

Lo digo porque veo hasta el RG7SAV pero no encuentro el sitio donde se guarda el registro 9 del vdp.

Incluso mas de 212 pixels si hace falta  ;D (ver algunos juegos Matrosos)

Eññ? Como te no sea que te estés refiriendo al modo entrelazado...


Hay una copia de los registros en RAM (en casa lo miro). Si tocas un registro conviene actualizar ese valor en RAM para llevar un control. No pongas un valor a pelo. Lee el valor, y pon el bit que quieras cambiar y luego escribe ese valor.

Lo de 60hz no debe pasar nada, pero no todas las teles lo soportan bien. Hoy dia que apenas quedan CRT's pos no se...
Aunque recuerda que un programa a 60hz siempre va mas apurado de tiempo, asi que tendras que afinar todo mas, pero lo suyo es hacer las cosas ya pensando en 60hz. Si rula ahi, a 50 hz ira sin problemas.

El entrelazado en SC4 no va a funcionar, al menos asi a priori... Si lo activas en SC4 igual pasan cosas raras... Nunca lo he probado  :D


Título: Re: screen 4 y 212 pixels
Publicado por: samsaga2 en 24 de Febrero de 2012, 04:54:02 pm
Hay una copia de los registros en RAM (en casa lo miro). Si tocas un registro conviene actualizar ese valor en RAM para llevar un control. No pongas un valor a pelo. Lee el valor, y pon el bit que quieras cambiar y luego escribe ese valor.

Lo de 60hz no debe pasar nada, pero no todas las teles lo soportan bien. Hoy dia que apenas quedan CRT's pos no se...
Aunque recuerda que un programa a 60hz siempre va mas apurado de tiempo, asi que tendras que afinar todo mas, pero lo suyo es hacer las cosas ya pensando en 60hz. Si rula ahi, a 50 hz ira sin problemas.

El entrelazado en SC4 no va a funcionar, al menos asi a priori... Si lo activas en SC4 igual pasan cosas raras... Nunca lo he probado  :D

Bueno he podido encontrar donde se guarda el registro 9 (http://www.angelfire.com/art2/unicorndreams/msx/RR-RAM.html).

Ahora tengo que mirar porque esto no hace nada:

Código:
        ld a,(RG9SAV)
        or 128
        out (0x99),a
        ld a,0x89
        out (0x99),a

Se me queda igual de alto. Algo estaré haciendo mal.


Título: Re: screen 4 y 212 pixels
Publicado por: MsxKun en 24 de Febrero de 2012, 05:05:29 pm
Ops, se me ha olvidado mirarlo... Me he liado con mi codigo y se me ha olvidado todo.

Tienes patrones en la VRAM en esas lineas extra?
Acuerdate de guardar el registro en RAM tras mangonearlo...

Código:
ld a,(RG9SAV)
or 128
ld (RG9SAV),a   ; <--- esto


Título: Re: screen 4 y 212 pixels
Publicado por: samsaga2 en 24 de Febrero de 2012, 05:29:06 pm
Nada y no entiendo porque no funciona:

Código:
        RG9SAV equ 0xffe8

        ;; chgmod
        ld a,4
        call 0x005f

        ;; 212 lines
        di
        ld a,(RG9SAV)
        or 128
        out (0x99),a
        ld (RG9SAV),a
        ld a,0x89
        out (0x99),a
        ei


Título: Re: screen 4 y 224 pixels
Publicado por: zilogZ80a en 24 de Febrero de 2012, 06:44:34 pm
Hola chicos.

Aqui tienes el codigo ASM para hacer lo que quieres usando la BIOS para el ensamblador asMSX.

Código:
;---------------------------------------------------------
; PONER SCREEN 4 y ACTIVAR MODO DE 224 LINEAS
;---------------------------------------------------------

; Variables de sistema
RG9SAV equ $FFE8 ; Content of VDP(9) register (R#9)

;---------------------------------------------------------
; DIRECTIVAS PARA EL ENSAMBLADOR ( asMSX )
;---------------------------------------------------------
.bios ; Definir Nombres de las llamadas a la BIOS
.page 2 ; Definir la dirección del código irá en 8000h
.rom ; esto es para indicar que crearemos una ROM
.start INICIO ; Inicio del Código de nuestro Programa
; Seguir la norma del Standard MSX
dw 0,0,0,0,0,0 ; 12 ceros

;---------------------------------------------------------
; INICIO DEL PROGRAMA
;---------------------------------------------------------
INICIO:

ld a,4 ; seleccionar Screen 4
call CHGMOD ; 05Fh BIOS - Change VDP mode

ld a,[RG9SAV] ; leemos la copia del Registro 9 en RAM
or 10000000b ; ponemos a 1 el bit 7
ld b,a ; lo pasamos a B   B=Valor a escribir
ld c,9 ; C= numero de registro a modificar
call WRTVDP ; 047h - BIOS - Write to any VDP registerr



Título: Re: screen 4 y 212 pixels
Publicado por: samsaga2 en 28 de Febrero de 2012, 04:56:08 pm
Me voy acercando al problema. Las 212 se me ponen correctamente pero después más adelante se anulan solas sin tocar el registro 9 del VDP. Me da la impresión que es al cambiar de página, al hacer set adjust o al cambiar el scroll vertical que se me anula y vuelve a las 192 lineas.


Título: Re: screen 4 y 212 pixels
Publicado por: samsaga2 en 01 de Marzo de 2012, 12:47:16 pm
Vale, lo admito, soy idiota XD. Ni por un momento se me había ocurrido pensar que con las lineas extras no hay tres bancos si no cuatro. Y claro, el cuarto lo dejaba siempre a cero.

Al menos esto me ha venido bien para descubrir el openmsx-debugger que esta realmente bien. Sobretodo para ver los registros del vdp.




Título: Re: screen 4 y 212 pixels
Publicado por: MsxKun en 01 de Marzo de 2012, 02:50:23 pm
Vale, lo admito, soy idiota XD. Ni por un momento se me había ocurrido pensar que con las lineas extras no hay tres bancos si no cuatro. Y claro, el cuarto lo dejaba siempre a cero.

Al menos esto me ha venido bien para descubrir el openmsx-debugger que esta realmente bien. Sobretodo para ver los registros del vdp.


Pues no sera porque no se te haya dicho xD Mira mi mensaje mas arriba... "Tienes patrones en la VRAM en esas lineas extra?" El caso es que vale, puedes tener patrones pero no estar definidos... cierto :P Lo cual me recuerda una cosa... Recuerdas el famoso modo mixto para SC2 que te permitia usar solo 1 tabla de patrones?  Pero que no era muy standar y en segun que VDPs no funciona? En SC4 si que funciona ^^


Título: Re: screen 4 y 212 pixels
Publicado por: Mortimer en 01 de Marzo de 2012, 09:09:47 pm
Pues no sera porque no se te haya dicho xD Mira mi mensaje mas arriba... "Tienes patrones en la VRAM en esas lineas extra?" El caso es que vale, puedes tener patrones pero no estar definidos... cierto :P Lo cual me recuerda una cosa... Recuerdas el famoso modo mixto para SC2 que te permitia usar solo 1 tabla de patrones?  Pero que no era muy standar y en segun que VDPs no funciona? En SC4 si que funciona ^^

Y yo que yo iba a preguntar el otro día que esas líneas extras de dónde tomaban los patrones, te hubiera ayudado sin saberlo  :)

Sobre el 'modo mixto' lo que digo siempre, que está documentado por TI y funciona en todos los TMS originales y sus sucesores, el único problema son los vdps 'compatibles' de otros fabricantes...  :(


Título: Re: screen 4 y 212 pixels
Publicado por: MsxKun en 01 de Marzo de 2012, 09:16:52 pm
Sobre el 'modo mixto' lo que digo siempre, que está documentado por TI y funciona en todos los TMS originales y sus sucesores, el único problema son los vdps 'compatibles' de otros fabricantes...  :(

:D Jiejie.. Si esta documentado por TI, pero no por la norma MSX, es como si nada.


Título: Re: screen 4 y 212 pixels
Publicado por: samsaga2 en 02 de Marzo de 2012, 11:23:06 am
No le veo demasiada ventaja usar ese truquillo. Mejor tener los tres bancos, siempre puedes usar los dos superiores para el juego y el inferior para puntuación. Así puedes usar los 256 tiles para dibujar y no tener que malgastarlos en números y letras (por ejemplo).


Título: Re: screen 4 y 212 pixels
Publicado por: MsxKun en 02 de Marzo de 2012, 12:10:26 pm
Pues segun para que vayas a hacer las tiene (y buen buenas), y segun para que pues no, como todo.  :saimazoom:


Título: Re: screen 4 y 212 pixels
Publicado por: Mortimer en 02 de Marzo de 2012, 01:53:06 pm
El Technical Data Book también dice 'TI TMS9918A Compatible', y eso sí que no lo estarían cumpliendo... Pero bueno, tampoco es algo demasiado útil, salvo que por ejemplo te hiciera falta redefinir muchos patrones y por velocidad no dé tiempo a hacerlo más de una vez para cada banco.


Título: Re: screen 4 y 212 pixels
Publicado por: MsxKun en 03 de Marzo de 2012, 11:43:11 am
El Technical Data Book también dice 'TI TMS9918A Compatible', y eso sí que no lo estarían cumpliendo... Pero bueno, tampoco es algo demasiado útil, salvo que por ejemplo te hiciera falta redefinir muchos patrones y por velocidad no dé tiempo a hacerlo más de una vez para cada banco.

Y no veas que juego da eso :)  Puedes hacer ciertos efectos muy chulos. Al tener que redefinir 3 bancos, te limitas mas, porque vas mas pillado.
Pero repito, si Konami ni otras no lo usaron en su dia, por algo sera. Si ASCII permitio que se usaran esos chips por algo sera...
En todo caso ya da igual :D