User Tag List

Página 7 de 9 PrimerPrimer ... 3456789 ÚltimoÚltimo
Resultados 91 al 105 de 127

Tema: Programando en MSDOS con VGA

  1. #91

    Fecha de ingreso
    Oct 2012
    Mensajes
    218
    Mencionado
    1 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    4
    Agradecer Thanks Received 
    131
    Thanked in
    Agradecido 41 veces en [ARG:2 UNDEFINED] posts
    Cita Iniciado por princemegahit Ver mensaje
    Queremos video. Yo seré el primero en comentar que eres un farsante , que detrás hay un pentium moviendo eso
    Jaja, Yo también quiero video, lo único que podria fallar es el scroll horizontal, pero eso tendria arreglo, lo malo es que no tengo una vga real, lo mas cercano es pcem o un core en fpga. Lo malo del scroll es que falla en algunas vga y svga, creo que por eso los juegos de commander keen tenian una opcion para que fuese compatible con mas tarjetas

  2. #92

    Fecha de ingreso
    Apr 2006
    Mensajes
    10,558
    Mencionado
    147 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    2,089
    Agradecer Thanks Received 
    3,073
    Thanked in
    Agradecido 1,428 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    15
    Cita Iniciado por mills332 Ver mensaje
    Jaja, Yo también quiero video, lo único que podria fallar es el scroll horizontal, pero eso tendria arreglo, lo malo es que no tengo una vga real, lo mas cercano es pcem o un core en fpga. Lo malo del scroll es que falla en algunas vga y svga, creo que por eso los juegos de commander keen tenian una opcion para que fuese compatible con mas tarjetas
    eso tiene solucion...

    -----Actualizado-----

    Acabo de probarlo en un v20 primero a 10mhz, aqui la musica adlib se oia mal. Luego ese mismo equipo a 4.77, aqui ya se oia perfectamente.

    Impresionante, no hay mas palabras, incluso a 4.77mhz salvo un poco de flicker y alguna escena que se ralentiza un poco.. va tan fino como en el video que habeis visto. Cuando pueda hare un video en condiciones, probando tambien 8088s


  3. El siguiente usuario agradece a JoJo_ReloadeD este mensaje:

    fbustamante (21/01/2021)

  4. #93

    Fecha de ingreso
    Oct 2012
    Mensajes
    218
    Mencionado
    1 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    4
    Agradecer Thanks Received 
    131
    Thanked in
    Agradecido 41 veces en [ARG:2 UNDEFINED] posts
    Cita Iniciado por JoJo_ReloadeD Ver mensaje
    eso tiene solucion...

    -----Actualizado-----

    Acabo de probarlo en un v20 primero a 10mhz, aqui la musica adlib se oia mal. Luego ese mismo equipo a 4.77, aqui ya se oia perfectamente.

    Impresionante, no hay mas palabras, incluso a 4.77mhz salvo un poco de flicker y alguna escena que se ralentiza un poco.. va tan fino como en el video que habeis visto. Cuando pueda hare un video en condiciones, probando tambien 8088s
    Que bueno, o sea que el scroll va suave . Ý que es lo que suena mal en el v20?. Lo de la musica puede ser porque el v20 no tiene los interrupts igual que los de intel, o algo asi... y la musica la reproduce con un interrupt a veces, y otras veces va con el vsync. Luego si hay parpadeos es normal en la parte de arriba de la imagen.

  5. #94

    Fecha de ingreso
    Apr 2006
    Mensajes
    10,558
    Mencionado
    147 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    2,089
    Agradecer Thanks Received 
    3,073
    Thanked in
    Agradecido 1,428 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    15
    Bueno, he grabado un cutrevideo en un v20, en un 8088 aun no he tenido tiempo de hacerlo. He tenido que grabarlo literalmente con el movil en un tft, el upscaler que uso para capturar literalmente se volvia loco entre escena y escena, imagino que usas timings y resoluciones no estandar y de ahi el asunto.



    Finalmente rula la adlib bien en este equipo, por algun motivo teniendolo a 10mhz se le iba la pinza. Ahora esta a 9.5mhz; la primera parte del video es la demo a esa velocidad y luego lo bajo a 4.77, todo sin editar y sin cortes.

    btw, tienes un dm.


  6. #95

    Fecha de ingreso
    Jun 2003
    Ubicación
    Madrid
    Mensajes
    570
    Mencionado
    9 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    26
    Agradecer Thanks Received 
    128
    Thanked in
    Agradecido 61 veces en [ARG:2 UNDEFINED] posts
    Hola a todos,
    es sorprendente lo que has conseguido Mills, enhorabuena. He buscado la versión de la demo de Gameboy color y es aún más alucinante teniendo en cuenta las limitaciones del hardware. Realmente impresionante.
    Saludos!
    El pasado ha pasado y por él nada hay que hacer... el presente es un fracaso y el futuro no se ve... (Cerebros destruidos/Eskorbuto)

  7. #96

    Fecha de ingreso
    Oct 2012
    Mensajes
    218
    Mencionado
    1 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    4
    Agradecer Thanks Received 
    131
    Thanked in
    Agradecido 41 veces en [ARG:2 UNDEFINED] posts
    Cita Iniciado por JoJo_ReloadeD Ver mensaje
    Bueno, he grabado un cutrevideo en un v20, en un 8088 aun no he tenido tiempo de hacerlo. He tenido que grabarlo literalmente con el movil en un tft, el upscaler que uso para capturar literalmente se volvia loco entre escena y escena, imagino que usas timings y resoluciones no estandar y de ahi el asunto.

    Finalmente rula la adlib bien en este equipo, por algun motivo teniendolo a 10mhz se le iba la pinza. Ahora esta a 9.5mhz; la primera parte del video es la demo a esa velocidad y luego lo bajo a 4.77, todo sin editar y sin cortes.

    btw, tienes un dm.
    Muchas gracias por probarlo!.

    Fíjate que el V20 va mejor que el 8086 8 MHz (según pcem) porque la nube de arriba en la escena del homer, no parpadea a 9 Mhz, (en el 8086 emulado no le daba tiempo a borrarla y dibujarla).

    La música suena demasiado rápido, la hice con reality adlib tracker a 50 Hz, y se supone que la había convertido a un archivo imf con la velocidad cambiada para que funcionase bien a 60 Hz. Supongo que podría ser también cosa de los interrupts, que van diferentes. Lo que me alegra es que no parece cambiar de velocidad a pesar de el lío que hice apagando y encendiendo los interrupts para que no interfiriesen en los gráficos.

    Por lo demás, solo vi que el rotozoon se invierte en algunos puntos a 9 Mhz, y no se invierte a 4.77 Mhz, pienso que será algo de las variables, que al llegar a 256 no vuelven a cero por alguna razón, o algo así... jaja.

    El modo es todo el rato el mismo, 320x240 60 Hz, pero tal vez al cambiar algún parámetro, como cuando se estira la vram en el rotozoom, se vuelvan locas las capturadoras, eso ya no lo se.

    Y me encanta como va de bien el scroll, solo se ralentizó un poco a 4.77, pero vamos, que en vez de 60fps tal vez se ponga a 50, todo un logro.

    Gracias a los que os ha gustado (OscarBraindeaD, masteries, DarkDijkstra ...).
    Última edición por mills332; 22/01/2021 a las 12:42

  8. Los siguientes 3 usuarios agradecen a mills332 este post:

    fbustamante (22/01/2021), JoJo_ReloadeD (22/01/2021), masteries (23/01/2021)

  9. #97

    Fecha de ingreso
    Apr 2006
    Mensajes
    10,558
    Mencionado
    147 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    2,089
    Agradecer Thanks Received 
    3,073
    Thanked in
    Agradecido 1,428 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    15
    Otro video de la demo, aqui esta rulando en una placa de IBM 5150, el primer pc de la historia, un 8088 a 4,77mhz:



    Aqui ya muchas partes se le atragantan, hasta la musica adlib se ralentiza xD Aun con todo es un hito estos efectos en un equipo taaan lento.

    Un par de videos mas mostrando los setups usados, primero el anterior, es una placa Xi 8088:



    Y el 5150:



  10. Los siguientes 5 usuarios agradecen a JoJo_ReloadeD este post:

    fbustamante (23/01/2021), Karkayu (23/01/2021), masteries (23/01/2021), selecter25 (23/01/2021), SplinterGU (31/03/2022)

  11. #98

    Fecha de ingreso
    Oct 2007
    Ubicación
    Madrid
    Mensajes
    3,439
    Mencionado
    110 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    327
    Agradecer Thanks Received 
    1,180
    Thanked in
    Agradecido 584 veces en [ARG:2 UNDEFINED] posts

  12. #99

    Fecha de ingreso
    Oct 2012
    Mensajes
    218
    Mencionado
    1 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    4
    Agradecer Thanks Received 
    131
    Thanked in
    Agradecido 41 veces en [ARG:2 UNDEFINED] posts
    Se puede hacer que funcione a 30 fps y funcionaría bien a 4.77, pero para los sprites hay que añadir una especie de doble buffer pequeñito, que complica un poco el código. Lo mismo se aplica al motor de juego que hice, que es practicamente el mismo codigo que utiliza esta demo (excepto algunas cosas).

  13. #100

    Fecha de ingreso
    Sep 2006
    Ubicación
    Malaga
    Mensajes
    7,549
    Mencionado
    47 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    1,660
    Agradecer Thanks Received 
    1,915
    Thanked in
    Agradecido 1,285 veces en [ARG:2 UNDEFINED] posts
    La rotación va mejor de lo que me esperaba.
    No es lo mismo tener diez años de experiencia, que tener un año de experiencia diez veces.


    It is an undisputed truth that the Atari ST gets the best out of coders. No dedicated hardware, just the CPU and a frame buffer! Some call it Spartan, others name it Power Without The Price, and a select few say `challenge accepted'! --- by spkr from smfx

  14. #101

    Fecha de ingreso
    Oct 2012
    Mensajes
    218
    Mencionado
    1 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    4
    Agradecer Thanks Received 
    131
    Thanked in
    Agradecido 41 veces en [ARG:2 UNDEFINED] posts
    Cita Iniciado por swapd0 Ver mensaje
    La rotación va mejor de lo que me esperaba.
    Me ayudó un poco "trixter" en otro foro, por lo visto es muy conocido en cosas de este tipo, y yo tenía un código funcionando a medias, me dijo que si, que esa era la forma más rápida.

    La rotación la hace la CPU claro, lo que hace es guardar una imagen de 256x256 pixels ( = bytes en VGA), y con una función en ensamblador va leyendo bytes y poniendolos en pantalla. Va siguiendo una tabla que le hace saltar un número precalculado de bytes en cada linea que dibuja, y así genera la imagen rotada o con zoom. Como todo son variables de un byte, al llegar a 256 saltan a cero y hace el efecto de "wrap" o volver a cero, como si fuera una textura en hardware moderno, con lo que se repite todo el rato.

    Llenar toda la pantalla seria imposible a 320x240, así que la VGA viene al rescate y puedes escribir un color a 4 pixels de una vez, si estan activados los 4 planos de la vram, con lo que la resolucioón horizontal se reduce a 80. Luego trixter me dijo que la VGA puede estirar la vram en vertical (cosa que yo no sabía), así que si la estiras 4 veces, obtienes una resolución vertical de 60 (de hecho se ve como se estira antes de empezar el rotozoom). Si le añades un poco de bordes negros, pues ya está.

    También había visto un efecto asi en el demo Legend para 286, (pero no tenían la fuente liberada) en un 286 va a 60 fps .

  15. Los siguientes 5 usuarios agradecen a mills332 este post:

    fbustamante (23/01/2021), JoJo_ReloadeD (23/01/2021), masteries (23/01/2021), romeroca (23/01/2021), SplinterGU (31/03/2022)

  16. #102

    Fecha de ingreso
    Apr 2006
    Mensajes
    10,558
    Mencionado
    147 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    2,089
    Agradecer Thanks Received 
    3,073
    Thanked in
    Agradecido 1,428 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    15
    La ultima prueba, en un 286 a 6mhz:



  17. Los siguientes 3 usuarios agradecen a JoJo_ReloadeD este post:

    fbustamante (24/01/2021), masteries (08/03/2021), romeroca (24/01/2021)

  18. #103

    Fecha de ingreso
    Oct 2012
    Mensajes
    218
    Mencionado
    1 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    4
    Agradecer Thanks Received 
    131
    Thanked in
    Agradecido 41 veces en [ARG:2 UNDEFINED] posts

    Mezclando Adlib / Sound Blaster OPL2, con samples PCM.

    Aunque el título del hilo es "programando con VGA", meto esto aquí porque lo estoy guardando todo en el mismo github de siempre (https://github.com/mills32/Little-Game-Engine-for-VGA).

    Recopilando códigos para reproducir samples con Sound Blaster, he conseguido mezclar samples con la música del chip yamaha y el resultado es mejor de lo que esperaba.

    Como siempre, hay drivers creados para PC rápidos y que necesitan mas ram. Así que he creado una pequeña función que carga y reproduce los sonidos muy rápido para que funcione bien en los ordenadores mas lentos y sin utilizar mucha ram.

    Las tarjetas Sound Blaster pueden leer directamente datos de la ram con DMA, pero necesitan que los datos estén dentro de una "página física" de 64K. Esto significa que la ram está dividida en partes de 64K, y si un sonido pasa a otra parte, mecesitas cambiar de "página" para que la función DMA pueda leer los datos. Eso era complicado, lento, y requiere mucha ram, así que estamos limitados a 64K de sonido.

    Pero al final solo he podido utilizar 32K, porque es imposible reservar una página completa usando malloc y calloc. Reservando 32K, puedes saber si ese trozo cae dentro de una página, y si no, reservar los siguientes 32K, que estaremos seguros de que no pasan la frontera a otra página. Los primeros 32K los podemos liberar o utilizar para otra cosa.

    Nombre:  pag2.png
Visitas: 235
Tamaño: 221.6 KB

    Parece que tenemos muy poco espacio para sonidos, pero nos sobra, porque he utilizado sonidos PCM de 8 bit, (8192 y 11025 Hz). Suenan suficientemente bien, y nos caben 15 o 20 samples pequeñitos.

    Para sincronizar la reproducción de sonidos con la música, la función espera a que llegue el comando B0, B1 o B2 del archivo imf, (significa que se ha enviado la instrucción "seleccionar frecuencia" para los canales 0, 1 o 2 del chip OPL2, todo está resumido en el readme de github).

    Además de utilizar sonidos para la percusión en la música, se pueden reproducir sonidos directamente para implementar efectos en el juego. Solo he implementado un canal, para que sea compatible con cualquier Sound Blaster, por tanto, se interrumpirá la reproduccion de samples de la música, si reproducimos un efecto de sonido, y viceversa.

    He grabado estos ejemplos de dosbox porque mi pc metia mucho ruido si los grababa de la Sound Blaster real, pero sirve de ejemplo. La diferencia mas notable, es que los sonidos PCM suenan mucho más claros en el hardware real.

    test1.mp3
    test2.mp3
    test3.mp3
    Última edición por mills332; 07/03/2021 a las 13:44

  19. Los siguientes 3 usuarios agradecen a mills332 este post:

    JoJo_ReloadeD (08/03/2021), Karkayu (08/03/2021), masteries (08/03/2021)

  20. #104

    Fecha de ingreso
    Apr 2006
    Mensajes
    10,558
    Mencionado
    147 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    2,089
    Agradecer Thanks Received 
    3,073
    Thanked in
    Agradecido 1,428 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    15
    Suena cojonudo


  21. #105

    Fecha de ingreso
    Dec 2004
    Mensajes
    28,615
    Mencionado
    199 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    188
    Agradecer Thanks Received 
    2,607
    Thanked in
    Agradecido 1,629 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    11
    La verdad es que suena bien si, y si no consume muchos recursos es un puntazo.
    Google stadia es un fracaso, google stadia funciona mal, google admite su fracaso con stadia la latencia es el problema intrinseco de stadia, el público abandona google stadia, stadia mal.

Página 7 de 9 PrimerPrimer ... 3456789 ÚltimoÚltimo

Permisos de publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •