compudanzas/src/tutorial_de_uxn.gmo

142 lines
3.9 KiB
Plaintext

# tutorial de uxn
una guía de inicio para programar la computadora varvara basada en el núcleo {uxn}, y un pausado complemento a la documentación oficial.
=> https://wiki.xxiivv.com/site/uxntal.html uxntal
=> https://wiki.xxiivv.com/site/uxnemu.html uxnemu
el tutorial está dividido en 8 días (o secciones), ya que puede ser seguido junto al taller.
(al día de hoy, este es un trabajo en proceso)
# día 1
en esta primera sección del tutorial vamos a hablar de los aspectos básicos de la computadora uxn llamada varvara, su paradigma de programación, su arquitectura, y por qué podrías queres aprender a programar en ella.
también vamos a saltar directo a nuestros primeros programas simples para demostrar conceptos fundamentales que desarrollaremos en los días siguientes.
{tutorial de uxn día 1}
# día 2
en esta sección vamos a empezar a explorar los aspectos visuales de la computadora varvara: ¡hablamos sobre los aspectos fundamentales del dispositivo de pantalla para que podamos empezar a dibujar en ella!
también discutiremos el trabajo con cortos (2 bytes) además de los números de un sólo byte en uxntal.
{tutorial de uxn día 2}
# día 3
aquí introducimos el uso del dispositivo controlador en la computadora varvara: esto nos permite agregar interactividad a nuestros programas, y empezar a implementar control de flujo en uxntal.
también hablamos de instrucciones lógicas y de manipulación de la pila en uxntal.
{tutorial de uxn día 3}
# día 4
aquí hablamos del bucle de animación del ordenador varvara, a través de su vector de dispositivo de pantalla.
también hablamos del uso de la memoria del programa como un espacio para datos usando "variables".
{tutorial de uxn día 4}
# día 5
¡proximamente!
# índice tentativo
este índice está aquí y ahora como referencia de la estructura general del tutorial.
## día 1: aspectos básicos
* ¿por qué uxn?
* notación {postfix}
* arquitectura de la computadora uxn
* instalación y toolchain
* un hola mundo muy básico
* etiquetas, macros y runas
* un hola mundo mejorado
* imprimir un dígito
instrucciones nuevas: LIT, DEO, ADD, SUB
=> https://git.sr.ht/~rabbits/uxn/ uxn repo
## día 2: la pantalla
* modo corto
* colores del sistema
* dibujar pixeles
* sprites: formato chr, nasu
* dibujar sprites sprites
* operaciones en la pila
* practica: reoetición manual de un sprite
instructiones nuevas: DEI, MUL, DIV, SWP, OVR, ROT, DUP, POP
modo nuevo: modo corto
=> https://wiki.xxiivv.com/site/nasu.html nasu
## día 3: interactividad con el teclado
* vector de controlador
* control de flujo: condicionales, saltos relativos y absolutos
* runas para direcciones
* botón y tecla
* máscaras bitwise
* práctica: mover/cambiar sprite con el teclado
instrucciones nuevas: EQU, NEQ, JCN, JMP, AND, ORA, EOR, SFT
## día 4: bucles y animación
* control de flujo: repetición de un sprite
* vector de pantalla
* variables: página cero, relativas, absolutas
* offsets en direcciones
* timing de animación
* práctica: sprite animado
instrucciones nuevas: LTH, GTH, STZ, STR, STA, LDZ, LDR, LDA
## día 5: interactividad con el mouse
* dispositivo y vector del mouse
* Pila de retorno y modo
* subrutinas: parametros, llamada y retorno
* práctica: sprite como puntero
* práctica: herramienta de dibujo simple
instrucciones nuevas: STH, JSR
modo nuevo: modo de retorno
## día 6: audio
* el dispositivo de audio
* samples como sprites de audio
* adsr
* pitch
* práctica: pequeño instrumento musical
## día 7: modo de retención y otros dispositivos
* modo de retención
* re-escribiendo código con modo de retención
* dispositivo de archivo: guardando y cargando un estado simple
* dispositivo de fecha y hora: leyendo fecha y hora
* práctica: visualización de fecha y hora
modo nuevo: modo de retención
## día 8: tiempo de demo
* comparte lo que has creado :)
# apoyo
si este tutorial te ha sido de ayuda, considera compartirlo y brindarle tu {apoyo} :)