Karoshi MSX Community
05 de Julio de 2021, 08:00:43 pm *
Bienvenido(a), Visitante. Por favor, ingresa o regístrate.

Ingresar con nombre de usuario, contraseña y duración de la sesión
Noticias:
 
   Inicio   Ayuda Buscar Ingresar Registrarse  
Páginas: [1] 2 3 ... 5
  Imprimir  
Autor Tema: Empezando de 0  (Leído 30583 veces)
0 Usuarios y 1 Visitante están viendo este tema.
doraemonppc
Karoshi Maniac
****
Mensajes: 358



WWW
« : 20 de Marzo de 2007, 01:45:13 pm »

Buenas a todos!
Estoy empezandome a liar con mi nueva novia el asm
Me gustaria que me respondierais 4 temas.
Como desarrollais? AsMSX + BlueMSX ? Alguna sugerencia de configuracion o metodologia de trabajo ? Algun editor preferido?
Podriais poner una "plantilla" de codigo de rom que no haga nada para empezar a ezperimentar a partir des de ahí?
Si no os molesta ire poniendo un poco en este post los pequeños avances que haga, preguntas tipicas etc.
Por cierto, por donde empiezo?
Cargar un sprite y moverlo seria un primer paso?

Venga, gracias por vuestra ayuda!
PD: He buscado un post de este estilo por el foro pero todo ya era mas avanzado. Espero que no sean preguntas ya respuestas...
En línea

- El ensamblador con sangre entra-
SapphiRe
Visitante
« Respuesta #1 : 20 de Marzo de 2007, 02:31:24 pm »

Como desarrollais? AsMSX + BlueMSX ? Alguna sugerencia de configuracion o metodologia de trabajo ? Algun editor preferido?

En efecto, mi forma de trabajar es esa. Edito con UltraEdit al que tengo configurado con la sintáxis del ensamblador del Z80 (una gozada) y luego para compilar simplemente lanzo un archivo compila.bat que comprime todos los gráficos, músicas y datos y llama al asMSX. Por último hago un start de la rom generada y se abre directamente el BlueMSX (o pasa a primer plano si ya estaba abierto).

Citar
Cargar un sprite y moverlo seria un primer paso?

Yo buscaría algo más simple como el típico "Hola Mundo" en Screen 0 y luego en Screen 1 antes de meterme con Sprites...

Saludos
--
Sph.
En línea
pitpan
Karoshi Forum's Guru
*******
Mensajes: 1812


« Respuesta #2 : 20 de Marzo de 2007, 02:32:20 pm »

Buenas, DoraemonPPC. Me gusta ver que la gente se anima con el ensamblador.

¿Qué configuración uso? Pues la que tu propones: asMSX y BlueMSX. Como editor, utilizo el prehistórico EDIT del MS-DOS, que me viene bien y me permite tener varios ficheros de texto abiertos a la vez. Lo que suelo hacer es tener siempre el código fuente que estoy editando y el MSX Red Book cargado, por si me surge alguna duda. Tienes una copia del MSX Red Book aquí: http://www.robsy.net/tredbook.txt

Como plantilla, no necesitas ninguna, ya que el asMSX hace todo lo necesario para generar la ROM por la patilla. Te dejo una cabecera de ejemplo para que vayas probando:

Código:
.bios ; Define las etiquetas con las rutinas de la BIOS del MSX
.page 2 ; Sitúa el código a partir de 8000h
.rom ; Define que se va a crear una ROM
.start INIT ; Indica que se ejecutará el código situado a partir de la etiqueta INIT

INIT:
; Aquí viene tu programa

Como temas para empezar, creo que lo mejor es que te familiarices con el ensamblador del Z80 y la VDP del MSX. Más que nada, porque la gente que viene del BASIC (no sé si es tu caso), cree que la VDP del MSX funciona en modo "bitmap", cuando en realidad funciona siempre en modo "tiled" y el BASIC se encarga de simular el modo "bitmap". Con modo bitmap me refiero a pintar líneas, círculos, etc. Con modo tiled me refiero a que todo funciona mediante patrones de 8x8 píxeles.

Lo que propones, posicionar un sprite y moverlo, es un buen ejemplo. Pero prueba primero a hacer cosas más sencillas, tipo "Hola, mundo!" y semejantes. Otra fuente de inspiración es ver cómo resolverías en ensamblador pequeños programas en BASIC, es decir, cómo lograrías la misma funcionalidad. Y te recomiendo que te pasees por la sección de Snipets del foro y que destripes también los programas de ejemplo que vienen con el asMSX.

Juega mucho con el ensamblador y ten paciencia. Creo que es el mejor consejo. Y si necesitas que te echemos un cable, estamos por aquí para eso.
En línea
doraemonppc
Karoshi Maniac
****
Mensajes: 358



WWW
« Respuesta #3 : 20 de Marzo de 2007, 02:53:30 pm »

En efecto, mi forma de trabajar es esa. Edito con UltraEdit al que tengo configurado con la sintáxis del ensamblador del Z80 (una gozada) y luego para compilar simplemente lanzo un archivo compila.bat que comprime todos los gráficos, músicas y datos y llama al asMSX. Por último hago un start de la rom generada y se abre directamente el BlueMSX (o pasa a primer plano si ya estaba abierto).

Esos scripts y config del ultra edit .. podrian pasarse ?

Merci!
En línea

- El ensamblador con sangre entra-
Dioniso
Visitante
« Respuesta #4 : 20 de Marzo de 2007, 02:57:03 pm »

Esos scripts y config del ultra edit .. podrian pasarse ?

Yo me hice uno para el TNIasm, que es el que utilizo. También utilizo el BlueMSX.
En línea
SapphiRe
Visitante
« Respuesta #5 : 20 de Marzo de 2007, 03:18:15 pm »

Esos scripts y config del ultra edit .. podrian pasarse ?

La sintaxis de un montón de cosas para el UltraEdit: http://www.ultraedit.com/index.php?name=Content&pa=showpage&pid=40

Los scripts de compilación dependen del programa que esté realizando, pero lo básico sería:

Código:
asmsx.exe micodigo.asm
start micodigo.rom
En línea
Dioniso
Visitante
« Respuesta #6 : 20 de Marzo de 2007, 03:29:30 pm »

La sintaxis de un montón de cosas para el UltraEdit: http://www.ultraedit.com/index.php?name=Content&pa=showpage&pid=40

Ostras ... qué put@d@!!! Yo me lo curré desde cero!!! No vi el de Z80 ... Sad De todas formas también tengo incluidos los comandos especiales del TNIasm en color rojo.
En línea
doraemonppc
Karoshi Maniac
****
Mensajes: 358



WWW
« Respuesta #7 : 20 de Marzo de 2007, 10:47:25 pm »

Perfecto, el coloreo de la sintaxis ya l tengo puesto, el asmsx rulando.
Ahora a ver si configuro el ultraedit para ke tire el asmsx y despues pruebe la rom en el bluemsx.
Gracias por la ayuda!
En línea

- El ensamblador con sangre entra-
nerlaska
Karoshi Excellent Member
******
Mensajes: 1102


Programador


WWW Email
« Respuesta #8 : 21 de Marzo de 2007, 06:32:57 am »

Ay señor .. pásame tu email que te envío el doc para programar cosas usando el SDCC Smiley
Yo como siempre llevando a la perversión a todo el que se preste! Smiley
En línea

MSX4EVER2GETHER
www.nerlaska.com
SapphiRe
Visitante
« Respuesta #9 : 21 de Marzo de 2007, 12:15:03 pm »

Ay señor .. pásame tu email que te envío el doc para programar cosas usando el SDCC Smiley
Yo como siempre llevando a la perversión a todo el que se preste! Smiley

Aaaaaaah, herejeeee... no pervertirás a más fieles seguidores del assembler!!! Grin Grin Grin Grin
En línea
doraemonppc
Karoshi Maniac
****
Mensajes: 358



WWW
« Respuesta #10 : 25 de Marzo de 2007, 03:12:18 am »

Como es que este pedazo de codigo me escribe 2 A's por pantalla¿
Yo solo queria poner una  Shocked
Que es lo que hago mal¿
.bios ; Define las etiquetas con las rutinas de la BIOS del MSX
.page 2 ; Sitúa el código a partir de 8000h
.rom ; Define que se va a crear una ROM
.start INIT ; Indica que se ejecutará el código situado a partir de la etiqueta INIT

INIT:    NOP      //empieza mi programa
LD     A,'A'       //Cargo la letra a en A
CALL    CHPUT   //Escribo la A
RET          //Cierro programa


Muchas gracias por escuchar mis preguntas de novato total, pero es que los inicios son muy duros y vuestro ombro me ha gustado  Roll Eyes
« Última modificación: 25 de Marzo de 2007, 03:53:36 am por doraemonppc » En línea

- El ensamblador con sangre entra-
nerlaska
Karoshi Excellent Member
******
Mensajes: 1102


Programador


WWW Email
« Respuesta #11 : 25 de Marzo de 2007, 07:02:44 am »

RET cierro programa? :-)
Yo pa mi que al hacer RET vuelves al CHPut .. o sea ... que vuelves a hacer un Call CHPUT.
Una ROM en principio debería terminar en algo como while (1); o lo que es lo mismo .. JP o JR sobre su misma dirección.
En línea

MSX4EVER2GETHER
www.nerlaska.com
kabish
Karoshi Maniac
****
Mensajes: 470


caspaflims@hotmail.com
« Respuesta #12 : 25 de Marzo de 2007, 10:26:21 am »

En efecto, con RET sales de una subrutina. Tendrias q poner algo al final como ..

FINAL:
         jr FINAL

.. vamos q en basic seria algo como "100 goto 100".


Sobre la sintaxis, yo uso el TEXPAD con la sintaxis para Z80 q te puedes bajar de msx.org

De todas formas yo aprendi un monton con los textos de "Easymbler" del maestro konamiman. Te los puedes bajar de su pagina y ademas creo recordar q tenian un ejemplo como el q tu buscas.

http://www.konamiman.com/msx/msx-s.html#easymbler

Y ademas en riguroso castellano. Tongue

Suerte.
En línea
doraemonppc
Karoshi Maniac
****
Mensajes: 358



WWW
« Respuesta #13 : 26 de Marzo de 2007, 01:49:28 pm »

De todas formas yo aprendi un monton con los textos de "Easymbler" del maestro konamiman.
Es mi libro de culto  Shocked

Parece que voy avanzando, ya pongo cadenas de texto, las situo por pantalla, leo teclado, utilizo la pila ....hago programas simples del estilo si escribes esto pasa lo otro y si escribes lo de mas alla pos pasa otra cosa.

Ahora la cosa se pone seria con el tema de los modos graficos, que ayer por la noche ya me quede atascado  Embarrassed

Alguna literatura recomendada para los primeros pasos con la vdp???
En línea

- El ensamblador con sangre entra-
jltursan
Karoshi Forum's Guru
*******
Mensajes: 1516


¿Que es lo que has aprendido hoy?


WWW Email
« Respuesta #14 : 26 de Marzo de 2007, 02:05:22 pm »

Um, igual está sería una buena ocasión para que de paso se fuera preparando un tutorial básico para manejar el VDP... Roll Eyes
En línea

Doom dee doom dee doom
Páginas: [1] 2 3 ... 5
  Imprimir  
 
Ir a:  

Impulsado por MySQL Impulsado por PHP Powered by SMF 1.1.21 | SMF © 2013, Simple Machines XHTML 1.0 válido! CSS válido!