Autor Tema: [SPEC] - Pintar en las líneas bajas de la pantalla  (Leído 983 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado empardopo

  • Admin
  • *
  • Mensajes: 22129
  • Gracias 763
  • Espero mejorar al KungFu Master!
    • Mi canal de Youtube
  • Ciudad: Norte de África
  • Pais: Escoña
  • Iniciales nick: EPP
[SPEC] - Pintar en las líneas bajas de la pantalla
« en: Mayo 16, 2020, 07:49:13 am »
Advertisement
Para el que no lo sepa el spectrum en baja resolución (osea en modo carácter) es como si fuera una plantilla de 22 filas x 31 columnas empezando ambas por la 0; osea, si hiciera un:

Código: [Seleccionar]
PRINT AT 0,0;"A"
pintaría una A en la esquina superior izquierda de la pantalla (Y,X) donde la primera Y serían las filas de forma que cuando el número crece iríamos bajando hasta llegar a la última que sería la 21 y las X serían las columnas y conforme crecen nos vamos yendo hacia la derecha hasta el tope que sería 31.

Por lo tanto la última fila donde podríamos pintar (la más baja, esa Y de la que hablaba) sería la 21; no obstante el spectrum reserva un par de líneas más bajas para cuando el ordenador necesita mostrarnos alguna información especial como el mensaje de scroll por ejemplo al llenarse la pantalla...

El caso es que por ejemplo si ejecutamos:

Código: [Seleccionar]
PRINT #0;"HOLA"
Este HOLA nos lo pinta por debajo de la fila 22 (Y=21) pero no tendríamos control de la columna donde pintar como tenemos con el modificador AT

Pues bien, mirad este pequeño código...

Código: [Seleccionar]
10 POKE 23659,0
20 PRINT AT 22,0;"X"'"Y"
30 PAUSE 0
40 POKE 23659,2

Como se aprecia pintamos con el AT más abajo y eso es porque el POKE 23659 es el que controla el límite de donde pintar... El valor inicial es 2 y lo recomendable es pokear a 0, pintar lo que necesitamos y luego volver a dejar el valor inicial de 2 para no tener problemas ya que si hubiera algún scroll el equipo se puede bloquear (osea, el programita que estemos programando crashearía).

He leído por ahí, que con el POKE 23692,0 se oculta el scroll teniendo luego que volverlo al valor inicial de 1 pero en mi caso para lo que necesitaba usé el anterior y me funcionó bien.

Saludo



Desconectado Zael

  • VIP
  • *
  • Mensajes: 2106
  • Gracias 11
    • Ancient Bits
  • Iniciales nick: ZAE
Re:[SPEC] - Pintar en las líneas bajas de la pantalla
« Respuesta #1 en: Mayo 18, 2020, 02:37:38 pm »

¡Muy bueno eso del PRINT #0 y PRINT #1 para esas líneas 22 y 23, yo lo descubrí también durante el TXT.

Pero lo que me dí cuenta es que sólo lo puedes usar si quedan líneas libres hasta la 21. Si tienes llenas las 21 líneas habituales, entonces al hacer PRINT #0 te "come" la línea 21.

Y lo del POKE ese para indicarle donde empezar no tenía ni idea... ¡gracias, @empardopo, te estás convirtiendo en toda una "putilla del BASIC"!  ;) ;)






Desconectado empardopo

  • Admin
  • *
  • Mensajes: 22129
  • Gracias 763
  • Espero mejorar al KungFu Master!
    • Mi canal de Youtube
  • Ciudad: Norte de África
  • Pais: Escoña
  • Iniciales nick: EPP
Re:[SPEC] - Pintar en las líneas bajas de la pantalla
« Respuesta #2 en: Mayo 21, 2020, 08:57:33 pm »
 ¡Muy bueno eso del PRINT #0 y PRINT #1 para esas líneas 22 y 23, yo lo descubrí también durante el TXT.

Pero lo que me dí cuenta es que sólo lo puedes usar si quedan líneas libres hasta la 21. Si tienes llenas las 21 líneas habituales, entonces al hacer PRINT #0 te "come" la línea 21.

Y lo del POKE ese para indicarle donde empezar no tenía ni idea... ¡gracias, @empardopo, te estás convirtiendo en toda una "putilla del BASIC"!  ;) ;)

A ver si hago un pequeño video de una cosita tonta que hice hace una semanita y donde ve furulando lo que comentaba... Con este método no borras nada de pantalla porque haces un print at así que escribes donde quieres, jeje.

Saludos

 


* Salón Recreativo #59 (01-03-2025 / 30-03-2025)  Autor: periko Foro: Salón Recreativo FaseBonus 21/03/2025 (14:36)
* [ZX Spectrum] Donkey Kong  Autor: Zael Foro: Recomendaciones de juegos 21/03/2025 (09:59)
* [Amiga] Donkey Kong  Autor: Zael Foro: Recomendaciones de juegos 21/03/2025 (09:49)
* Reto 324 - Vasara  Autor: empardopo Foro: Competiciones y concursos 20/03/2025 (19:40)
* Reto 325 - Car Action (set 2)  Autor: empardopo Foro: Competiciones y concursos 20/03/2025 (19:01)
* Van dos y se cae el del medio - Hilo de cachondeo general  Autor: empardopo Foro: Offtopic 20/03/2025 (18:52)
* Ofertas Amazon  Autor: empardopo Foro: Offtopic 20/03/2025 (18:41)
* Ayuda con Spectrum +2  Autor: empardopo Foro: Seccion Hardware 20/03/2025 (18:28)
* ¿A qué estáis jugando ahora mismo?  Autor: jmpuk Foro: Offtopic 18/03/2025 (05:32)
* Están muy callados los culerdos, no?  Autor: empardopo Foro: Offtopic 17/03/2025 (21:22)
* [Amiga] Rick Dangerous Pack  Autor: empardopo Foro: Recomendaciones de juegos 17/03/2025 (21:19)
* Amiga Games + F24.01022025  Autor: empardopo Foro: Emuladores 17/03/2025 (18:21)
* [N3DS] Red Viper - Emulando Virtual Boy como Dios manda  Autor: jmpuk Foro: Noticias de emuladores 16/03/2025 (18:15)
* [Recomendación] Cine para los findes en casa (bueno, bonito y barato)  Autor: joselopez Foro: Offtopic 16/03/2025 (07:06)
* [Amiga] Night Shift  Autor: empardopo Foro: Recomendaciones de juegos 14/03/2025 (18:57)
* Duda entre dos tarjetas gráficas para usar con IA  Autor: treme Foro: Offtopic 14/03/2025 (01:59)
* ¿Cómo poner scanlines en mameUI64 versión 0.130?  Autor: Zael Foro: Seccion Video 09/03/2025 (13:14)
* Salón Recreativo FaseBonus - Preparativos y Sugerencias  Autor: Zael Foro: Salón Recreativo FaseBonus 09/03/2025 (12:57)
* [Amiga] Operation Wolf  Autor: empardopo Foro: Recomendaciones de juegos 08/03/2025 (13:37)
* La revolución que suponen las IA generativas de imágenes a partir de texto  Autor: empardopo Foro: Offtopic 06/03/2025 (19:17)
* [Amiga] Glubble  Autor: empardopo Foro: Recomendaciones de juegos 06/03/2025 (18:55)
* [Amiga] King's Valley  Autor: Zael Foro: Recomendaciones de juegos 02/03/2025 (19:07)
* [Amiga] Chuck Rock II:Son of Chuck  Autor: empardopo Foro: Recomendaciones de juegos 23/02/2025 (19:22)

Reto 324 - Vasara