sábado, 26 de junio de 2021

Subo a github

 Intento tener el programa o juego en GitHub. Es lo más fácil que conozco para intercambiarlo. 

jueves, 24 de junio de 2021

Más rápido comparar con 0?

 Me pregunto , supongamos el caso de una entidad, con posición x, igual a 4.

Le vamos restando una unidad. Cuando llegue a 0, impedimos que se reste más, antes o en esta comprobación.

Si x llega a -1, se pone a 0. En un número U8(sin signo), esto no es posible. 

En tal caso, en ensamblador¿ sería más óptimo  comparar con 0(jz) o con Carry(JC).?


miércoles, 23 de junio de 2021

Ahora,en C

Ahora, aprendiendo C, todo es más fácil de entender y programar.
Espero me sirva como trampolín para hacer el primer juego para Cpc.

viernes, 12 de febrero de 2021

ECS mejorado en Ensamblador para CPC

 Esta vez pongo un pequeño programa, como base para le expansion de  un ECS. Esta creado en ensamblador. tiene pocos comentarios, espero os sirva.

.module cpct_functions.h.s

.globl cpct_disableFirmware_asm
.globl cpct_waitVSYNC_asm
.globl cpct_scanKeyboard_f_asm
.globl cpct_isKeyPressed_asm
.globl cpct_setVideoMode_asm
.globl cpct_drawSolidBox_asm
.globl cpct_getScreenPtr_asm
.globl cpct_drawSprite_asm
.module main.s
.include "cpctelera.h.s"
.include "cpct_functions.h.s"
.include "man/game.h.s"



.area _DATA
.area _CODE

_main::
    ;;desactiva firmware
call cpct_disableFirmware_asm
    ;;init game manager
call man_game_init

    ;loop forever
loop:
    call man_game_update
    ;waitNVsyncs 2
    call cpct_waitVSYNC_asm
    call man_game_render
    jr loop