Manejando Textos y menús de textos

Hablemos de consolas, ordenadores, programacion, emuladores, y cualquier cosa relacionada con el retro
Responder
REHome
Mensajes: 12
Registrado: Dom May 24, 2015 8:32 pm

Manejando Textos y menús de textos

Mensaje por REHome » Mar May 26, 2015 3:28 am

Hola:

Estaba traquiniando este código sacado del tutorial.

No explica mucho sobre este tema, a pesar que quiero hacer lo que me de la gana como un menú y meterme en submenús, borrar pantalla y lo que sea.

Deja claro que hay una Web donde explica de todo.
http://cfievalladolid2.net/tecno/cyr_01 ... /index.htm
No funciona. Un alástima, que quiero aprender a diestro y siniestro.

1) ¿Hay otra Web de lo mismo? Recuerdo que a pesar estar en Inglés, habíamucho ayuda y estaba buenísimo, espero recuperarse.

2) He estado probando los colores de los textos y el fondo negro. ¿Sólo hay 4 colores y el fondo se puede cambiar el color de forma smple o hay que usar tiles como siempre?

Imagen
Código de ejemplo con imagen fija.

Código: Seleccionar todo

 do
  ink 0
  locate 1,1 'Posición X,Y donde comienza los textos.
  Print "     *** Colores del ink ***"
  Print ""
  Print "Color 0"
  Print "Color 1"
  ink 2
  Print "Color 2"
  ink 3
  Print "Color 3"
  ink 4
  Print "Color 4"
  ink 5
  Print "Color 5"
  ink 6
  Print "Color 6"
  ink 7
  Print "Color 7"
  ink 8
  Print "Color 8"
  ink 9
  Print "Color 9"
  ink 10
  Print "Color 10"
  ink 11
  Print "Color 11"
  ink 12
  Print "Color 12"
  ink 13
  Print "Color 13"
  ink 14
  Print "Color 14"
  ink 15
  Print "Color 15"
  ink 16
  Print "Color 16"
  ink 17
  Print "Color 17"
  ink 18
  Print "Color 18"
  ink 19
  Print "Color 19"
  ink 20
  Print "Color 20"
  print " presionar A para reproducir"
 
Texto:
 if JoyPad(0).6 then	
  ink 2
  locate 1,1
  Print ""
  Print ""
  Print ""
  Print ""
  print " presionar B para reproducir"
    end if	
      
 loop
Colocar textos fijos está bien. Estoy haciendo pruebas de cada botón que pulse sale una pantalla A o la pantalla B. Eso si, sale cosas raras.

Código: Seleccionar todo

 do

 if JoyPad(0).6 then	
  ink 2
  locate 1,1
  Print "                                      "
  Print "                                      "
  Print "                                      "
  Print "                                      "
  Print "                                      "
  Print "                                      "
  Print "                                      "
  Print "                                      "
  Print "                                      "
  Print "                                      "
  Print "                                      "
  Print "                                      "
  Print "                                      "
  Print "                                      "
  Print "                                      "
  Print "                                      "
  Print "                                      "
  Print "                                      "
  Print "                                      "
  Print "                                      "
  Print "                                      "
  Print "                                      "
  print " Pantalla A"
    end if	
     
 if JoyPad(0).5 then	
  ink 0
  locate 1,1 'Posición X,Y donde comienza los textos.
  Print "     *** Colores del ink ***"
  Print ""
  Print "Color 0"
  Print "Color 1"
  ink 2
  Print "Color 2"
  ink 3
  Print "Color 3"
  ink 4
  Print "Color 4"
  ink 5
  Print "Color 5"
  ink 6
  Print "Color 6"
  ink 7
  Print "Color 7"
  ink 8
  Print "Color 8"
  ink 9
  Print "Color 9"
  ink 10
  Print "Color 10"
  ink 11
  Print "Color 11"
  ink 12
  Print "Color 12"
  ink 13
  Print "Color 13"
  ink 14
  Print "Color 14"
  ink 15
  Print "Color 15"
  ink 16
  Print "Color 16"
  ink 17
  Print "Color 17"
  ink 18
  Print "Color 18"
  ink 19
  Print "Color 19"
  ink 20
  Print "Color 20"
  print " Pantalla B"
    end if	
      
 loop
Al menos esto de entender los textos y menús con submenús y todo me encanta hacerlo, lo que no me sale en este caso.

Saludos.

Avatar de Usuario
theelf
Site Admin
Mensajes: 2530
Registrado: Jue Oct 20, 2011 8:17 pm

Re: Manejando Textos y menús de textos

Mensaje por theelf » Mar May 26, 2015 8:45 am

No entiendo bien tu duda, pero en todo caso, tenes que comenzar leerte el help de basiegaxorz

En mis tutos, no cubri casi nada que estuviera explicado en el archivo de ayuda, no tiene sentido repetir informacion


ink solo permite 4 colores basicos


0 - White
1 - Cyan/Baby blue
2 - Green
3 - Purple/Magenta


Para cualquier otro tipo de colores, tenes que trabajar con paletas normales



El VDP de la megadrive funciona con tiles, TODO son tiles, y eso incluye la fuente del sistema. La fuente de "texto" del sistema ocupa 47 tiles, y comienza en el numero 48

El 0 es el tile de transparencia, del 1 al 46 son diferentes simbolos, del 48 al 96 o asi, no recuerdo, es texto mayusculas y numeros, y hasta el 122 o asi, es minusculas
Adjuntos
Font.zip
(1.02 KiB) Descargado 457 veces

REHome
Mensajes: 12
Registrado: Dom May 24, 2015 8:32 pm

Re: Manejando Textos y menús de textos

Mensaje por REHome » Mar May 26, 2015 11:22 am

theelf escribió: En mis tutos, no cubri casi nada que estuviera explicado en el archivo de ayuda, no tiene sentido repetir informacion
Hola:

La duda es ser capaz de crear textos en pantalla y navegar entre menús. Por cada botón un menú, si pulsas el botón z por poner un ejemplo, vuelves a la pantalla principal, si pulsas START limpia toda la pantalla, si pulsas cualquier botón, por ejemplo el btón A, llega a un mensaje de texto que dice Pantalla A para saber que has pulsado botón A.

Imagen

En cuanto a no tiene sentido repetir información, más bien tu información en español, la forma de expresarte, si vale la pena y mucho. Así que ánimos y adelante. Aún así echaré un ojo a esa ayuda que me cuesta comprenderla todavía. ;)

Voy a revisar el código que pusiste.

Avatar de Usuario
theelf
Site Admin
Mensajes: 2530
Registrado: Jue Oct 20, 2011 8:17 pm

Re: Manejando Textos y menús de textos

Mensaje por theelf » Mar May 26, 2015 12:06 pm

No entiendo que quieres hacer... un menu y poder navegar por el?

REHome
Mensajes: 12
Registrado: Dom May 24, 2015 8:32 pm

Re: Manejando Textos y menús de textos

Mensaje por REHome » Mar May 26, 2015 12:20 pm

Hola:

Exacto. Navegar por él. Cuando domine esto, navegaré imagenes con textos incluidos también, esto será más adelante. Y haré un mini tutorial de este tipo de cosas para no olvidarme, :)

Son detallitos que hay que tener en cuenta aunque parezca tonterías, menos el que está aprendiendo que es su origen los tutos.

Una pregunta.
¿En el cartucho de la Mega Drive, pulsando botones, puedes controlar algunos pines de su EPROM donde está guardado la ROM o alguna parte de la placa?

Me refiero cambiado algún pin estado lógico 0 ó 1.

Saludos.

Avatar de Usuario
theelf
Site Admin
Mensajes: 2530
Registrado: Jue Oct 20, 2011 8:17 pm

Re: Manejando Textos y menús de textos

Mensaje por theelf » Mar May 26, 2015 12:55 pm

Pero sabes programar?

Un menu no tiene mas secreto que hacer un case, y ya



Sobre lo de la eprom, para acceder a direciones de memoria tendras que hacerlo en asm, si no dominas un poco de asm, no podras

Si no queres liarte con asm, echa un vistazo a este codigo para un ramdisk, puede ayudar a lo que estas buscando

http://devster.proboards.com/thread/488

REHome
Mensajes: 12
Registrado: Dom May 24, 2015 8:32 pm

Re: Manejando Textos y menús de textos

Mensaje por REHome » Mar May 26, 2015 4:55 pm

Hola:

No estoy acostumbrado a programar MD, uso varios lenguajes, está bien hacer este tipo de tutos entre los que habrán en el futuro y es bueno.

Estoy haciendo un tutorial en pdf sobre programación y no se mucho programar, me pego media vida para hacer algo que funcione, ejejjee.

Descargar tutorial en pdf (aún incompleto, se está desarrollando). 27 MB.

Si quieren los ejemplos que también los tengo mem lo dicen lo subo y pongo el enlace.Esto no tiene nada que ver con SNES ni MD, es para que te hagas una idea que en el futuro haré algún tutorial de MD sobre programación básica con este tipo de tutoriales.

Espero que en el futuro sigas haciendo tutoriales de cualquier tipo, eso si, puedes crear un tema que se centrenen ello, hacer ejemplos y explicarlo en cada persona que quieran participar, luego se hace una recopilación en un solo post donde hay que cuidarlo. ;)

En cuanto al asm, no he manejado el de MD, solo el 8085, 8086 y ahora con el asm de los PIC que si manejo, lo bueno que cuando tengas ideas de como funciona los asm, te adaptas rápido a otros, eso si, también requiere su tiempo.

Echaré un ojo a la Web que me pusiste.
http://devster.proboards.com/thread/488

Por eso preguntaba si la eprom del cartucho de la mega drive se puede controlar niveles bajo de algún pin para activarlo y desactivarlo, así hago cositas más hallá de jugar. ;) Solo saber si existe esa posibilidad.

Salu2.

Avatar de Usuario
theelf
Site Admin
Mensajes: 2530
Registrado: Jue Oct 20, 2011 8:17 pm

Re: Manejando Textos y menús de textos

Mensaje por theelf » Mar May 26, 2015 7:41 pm

Sigo sin entender que queres, un menu? como dije, es un simple case

Si lo queres mas facil, podes usar IF, aunque sera mas codigo, algo asi por ejemplo

Tanto usar botones como menu, es lo mismo para ir a un menu X que quieras. Usa el goto y listo

Te dejo un ejemplo




Sobre lo que comentas de controlar algo fisico, eso seria a travez del puerto de joystick, pero ya es algo complejo

Para un menu de multiples roms, tendrias que basicamente redireccionar cada una a la direccion donde la megadrive busca el primer sector de memoria para comenzar

Ya te digo, que primero veas de usar alguna solucion ya echa, si no, bueno, es cuestion de ponerse a ver cuales son las direcciones de memoria, y escribir algunas lineas de asm
Adjuntos
menu.zip
(1.3 KiB) Descargado 412 veces

REHome
Mensajes: 12
Registrado: Dom May 24, 2015 8:32 pm

Re: Manejando Textos y menús de textos

Mensaje por REHome » Mié May 27, 2015 1:04 am

Hola:

Gracias. Voy a observar a fondo el archivo.

El puerto de el mando de la MegaDrive o JoyStick son datos de entrada, ejjejejjeje. Lo estudiaré a fondo haber si se puede hacer algo.

:)

Responder