User Tag List

Página 8 de 9 PrimerPrimer ... 456789 ÚltimoÚltimo
Resultados 106 al 120 de 127

Tema: Programando en MSDOS con VGA

  1. #106

    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
    Más pruebas extrañas en MS_DOS, en este caso quise comprobar si el modo texto se podria utilizar como un modo "map/tile" de consolas. Estos modos utilizan una parte de la memoria de video para guardar caracteres o tiles, y otra parte para guardar un mapa de como dibujarlos en pantalla.

    En el caso de la VGA, el modo texto puede guardar unos 512 caracteres de 8x8 pixeles (dos colores cada uno), pero solo he conseguido que acceda a 256 caracteres. Puede mostrar mapas compuestos de 80x50 tiles (con caracteres de 8x8 pixeles), en resoluciones de 720x400 (dejando separaciones entre los tiles), o 640x400 (sin separaciones, este modo no funciona en monitores modernos).

    Los caracteres se cargan desde imagenes png, modificando unos puertos de la VGA, que están pensados para cambiar la fuente del texto, pero también sirven para esto .

    Además podemos utilizar el scroll por hardware y actualizar una columna o una fila de tiles fuera de la parte visible, en un proceso muy rápido que a penas utiliza CPU. Sólamente tenemos que actualizar 80+50 => 130 x 2 = 260 bytes, ya que cada celda corresponde a dos bytes, un byte para el caracter y otro para definir los dos colores (16 colores para el fondo, 16 para el "texto").

    Este modo VGA solo tiene un sprite rectangular que parpadea y solo se puede poner en posiciones multiplos de 8 (o sea, el cursor). Dibujar sprites "de verdad "se puede lograr reservando unos cuantos caracteres para guardar y actualizar gráficos, pero en las pruebas que he hecho, el proceso es muy lento, o se ve muy mal, haciendo que este modo sea poco práctico para hacer juegos bonitos.



    Parece ser que la tarjeta EGA no es compatible con este modo de caracteres 8x8, aunque debería funcionar igual.

    No he subido aun el código fuente a ningún sitio, porque está muy desordenado, he comprobado que funciona en vga real, y no necesita a penas cpu para mostrar el mapa, (los sprites ya son otra historia).
    Última edición por mills332; 21/06/2021 a las 14:06

  2. Los siguientes 4 usuarios agradecen a mills332 este post:

    DarkDijkstra (21/06/2021), JoJo_ReloadeD (22/06/2021), romeroca (21/06/2021), swapd0 (21/06/2021)

  3. #107

    Fecha de ingreso
    Nov 2005
    Ubicación
    Excartagenero
    Mensajes
    23,651
    Mencionado
    276 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    5,994
    Agradecer Thanks Received 
    5,821
    Thanked in
    Agradecido 3,794 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    1
    Mola!!

    Por lo que entiendo estas usando caracteres redefinidos?? o sea que es modo texto, verdad?

    Aunque sin sprites no hay gloria :P

  4. #108

    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 josepzin Ver mensaje
    Mola!!

    Por lo que entiendo estas usando caracteres redefinidos?? o sea que es modo texto, verdad?

    Aunque sin sprites no hay gloria :P
    Si, mira al principio como se ven los caracteres de texto, y luego se ve el cursor negro por la parte de arriba del mapa

    Pero es que las limitaciones de colores y lo complejo de los sprites hacen que merezca mas la pena el modo grafico, incluso para los 8088.


    En cuanto pasas encima de algo, a penas se ve a mario, y ademas se mueve en saltos de 8 en 8 pixeles. Moverlo pixel a pixel requiere mucha ram, o mucha cpu, porque necesita 16 celdas en el caso de este ejemplo. Y si ademas hago operaciones para que se fusionen los graficos de fondo con el sprite, para que quede mejor, ya añades un monton de cosas mas, no se, lo veo mucho mas lento que el modo grafico, pero habria que probarlo.
    Nombre:  game_000.png
Visitas: 563
Tamaño: 192.7 KB
    Última edición por mills332; 21/06/2021 a las 15:44

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

    josepzin (21/06/2021), tSuKiYoMi (22/06/2021)

  6. #109

    Fecha de ingreso
    Nov 2005
    Ubicación
    Excartagenero
    Mensajes
    23,651
    Mencionado
    276 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    5,994
    Agradecer Thanks Received 
    5,821
    Thanked in
    Agradecido 3,794 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    1
    Si, claro, se entiende! cuando usas caracteres redefinidos no hay otra opción que los sprites se superpongan asi y hagan color clash. A menos que tengas un C64 y uses los sprites por hardware :P

  7. #110

    Fecha de ingreso
    Oct 2007
    Ubicación
    Madrid
    Mensajes
    3,441
    Mencionado
    112 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    329
    Agradecer Thanks Received 
    1,183
    Thanked in
    Agradecido 586 veces en [ARG:2 UNDEFINED] posts
    Cita Iniciado por mills332 Ver mensaje
    Si, mira al principio como se ven los caracteres de texto, y luego se ve el cursor negro por la parte de arriba del mapa

    Pero es que las limitaciones de colores y lo complejo de los sprites hacen que merezca mas la pena el modo grafico, incluso para los 8088.


    En cuanto pasas encima de algo, a penas se ve a mario, y ademas se mueve en saltos de 8 en 8 pixeles. Moverlo pixel a pixel requiere mucha ram, o mucha cpu, porque necesita 16 celdas en el caso de este ejemplo. Y si ademas hago operaciones para que se fusionen los graficos de fondo con el sprite, para que quede mejor, ya añades un monton de cosas mas, no se, lo veo mucho mas lento que el modo grafico, pero habria que probarlo.
    Necesita pre-desplazar los gráficos, para ahorrar memoria puede guardar sólo los predesplazamientos de 2 en 2 píxeles.
    Y también necesitará optimizar el código para cada pre-desplazamiento, vamos sprites compilados.

    Se está metiendo en una fiesta muy gorda xD

    Creo que los gráficos pre-desplazados hay que dejarlos para las máquinas que de verdad los necesitaban para obtener un buen rendimiento,

  8. #111

    Fecha de ingreso
    Sep 2006
    Ubicación
    Malaga
    Mensajes
    7,561
    Mencionado
    47 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    1,668
    Agradecer Thanks Received 
    1,922
    Thanked in
    Agradecido 1,289 veces en [ARG:2 UNDEFINED] posts
    Hay muchos juegos para Atari xe/xl que van asi, modo texto y los sprites van por software redefiniendo caracteres, aunque no necesitas tener los tiles pre-rotados porque tienes scroll por hardware.
    Última edición por swapd0; 21/06/2021 a las 20:17
    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

  9. #112

    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
    Mas curiosidades para MS-DOS y ordenadores super lentos.



    A lo tonto a ver que salía, y me ha quedado muy bien. Se pueden hacer cosas estilo Spectrum perfectamente, además al tener scroll y ser un modo organizado en mapas, es mucho más rápido mover todo. Simular los sprites es algo lento, si que se pueden poner 3 o 4 en un 8088, pero el codigo es un poco malo según está.

    No pude evitar usar el mapa de la demo que hice en game boy, tenía que hacer el parallax, porque podía .

  10. Los siguientes 9 usuarios agradecen a mills332 este post:

    fbustamante (28/03/2022), JoJo_ReloadeD (30/03/2022), josepzin (30/03/2022), Karkayu (28/03/2022), selecter25 (29/03/2022), SplinterGU (31/03/2022), Sr.Polilla (29/03/2022), swapd0 (28/03/2022), tSuKiYoMi (30/03/2022)

  11. #113

    Fecha de ingreso
    Sep 2006
    Ubicación
    Malaga
    Mensajes
    7,561
    Mencionado
    47 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    1,668
    Agradecer Thanks Received 
    1,922
    Thanked in
    Agradecido 1,289 veces en [ARG:2 UNDEFINED] posts
    Mola!!!!!
    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

  12. #114

    Fecha de ingreso
    Sep 2009
    Ubicación
    Málaga
    Mensajes
    4,141
    Mencionado
    95 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    8,750
    Agradecer Thanks Received 
    1,344
    Thanked in
    Agradecido 775 veces en [ARG:2 UNDEFINED] posts
    ¡Guay!

    Hace más el que quiere que el que puede.

    Proyectos: Wizor (100%). Bennu File Manager (100%). Remake gráfico Echo 99%.

  13. #115

    Fecha de ingreso
    Apr 2003
    Ubicación
    HACAPULCO (MEHICO)
    Mensajes
    60,846
    Mencionado
    131 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    403
    Agradecer Thanks Received 
    3,464
    Thanked in
    Agradecido 2,134 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    24
    que pasada

  14. #116

    Fecha de ingreso
    Oct 2007
    Ubicación
    Madrid
    Mensajes
    3,441
    Mencionado
    112 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    329
    Agradecer Thanks Received 
    1,183
    Thanked in
    Agradecido 586 veces en [ARG:2 UNDEFINED] posts

  15. #117

    Fecha de ingreso
    Sep 2005
    Mensajes
    15,202
    Mencionado
    247 Post(s)
    Tagged
    1 Tema(s)
    Agradecer Thanks Given 
    675
    Agradecer Thanks Received 
    1,847
    Thanked in
    Agradecido 1,264 veces en [ARG:2 UNDEFINED] posts
    Se nota que hay un gran trabajo detrás, y mucho mimo por los detalles. Enhorabuena
    PROYECTOS REALIZADOS: FrikiMusic, Motor Scroll Tileado v3.2, Venturer2X (GP2X/WIZ), Echo, Screen Break Time
    PROYECTOS EN MARCHA (algunos): Bennu GP2X: 95% (necesito ayuda) ¡Antes de Halloween!: 92% SpaceH2H: 8%

  16. #118

    Fecha de ingreso
    Jun 2007
    Mensajes
    2,181
    Mencionado
    14 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    26
    Agradecer Thanks Received 
    101
    Thanked in
    Agradecido 65 veces en [ARG:2 UNDEFINED] posts
    Es una pasada de demo, mola muchísimo!


  17. #119

    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
    Enhorabuena, ese scroll parallax con varios planos está muy, muy logrado!
    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)

  18. #120

    Fecha de ingreso
    Apr 2010
    Ubicación
    JULY CITY
    Mensajes
    1,525
    Mencionado
    2 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    342
    Agradecer Thanks Received 
    99
    Thanked in
    Agradecido 63 veces en [ARG:2 UNDEFINED] posts
    Vaya pasada tío. ¿Te resulto difícil encontrar documentación actualizada sobre como empezar a programar para MS-DOS?

Página 8 de 9 PrimerPrimer ... 456789 Ú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
  •