Pues por mi perfecto.
De C y C++ no tengo problemas .. sin embargo de programar a bajo nivel para MSX .. pues .. hombre .. he montado algun que otro emulador y tambien un interprete MSXBASIC .. vamos .. que al menos se por donde van los tiros.
Ya he conseguido hacer funcionar el SDCC y perfecto .. la verdad es que se comporta bien y tiene muchas opciones para optimizar codigo.
Lo que si es un poco complicado es lo de montar la ROM. Al menos he conseguido que el BLUEMSX se pete al cargarla :-) ya es algo.
typedef unsigned int u_int;
sfr at 0x98 vdp98;
sfr at 0x99 vdp99;
void set_mode(u_int mode)
{
mode; //for avoid warning
_asm
push bc
push ix
ld c, 6(ix)
ld b, 7(ix)
push bc
pop ix
call 5
pop ix
pop bc
_endasm;
}
void main (void)
{
set_mode (2);
while (1)
{
}
}
esta pinta tiene el programa C con el que he empezado a trabajar .. con el siguiente bat .. monto la ROM ...
sdcc -mz80 --code-loc 0x8010 --data-loc 0xC000 --no-std-crt0 prueba.c
hex2bin -e rom prueba.ihx
copy /b rom_header.bin + /b prueba.rom /b tmp.rom
fillfile tmp.rom final.rom 16368
donde rom_header.bin es un archivo binario de 16 bytes con la cabecera de la ROM ...
0x41 0x42 0x10 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
y el exe fillfile me lo he montado yo para rellenar con 0x00 y completar al tamaño especificado (16Kb) un archivo.
Asi tengo un fina.rom de 16kb tope guay .. que no funciona!!
o esa impresion me da.
HELP!!!!!