こんなのもできた。
#include "osecpu_asm.h"
OSECPU_HEADER();
#define LMEMPP(reg, typ, preg) LMEM(reg, typ, preg); DB(0); PADDI(preg, typ, preg, 1)
#define SMEMPP(reg, typ, preg) SMEM(reg, typ, preg); DB(0); PADDI(preg, typ, preg, 1)
R04 = 0x100; R06 = 256; R07 = 256; PCALL(P1B); // open_window(256, 256);
R11 = 0; // y
LOOP(1, 0); // CONTINUEを使う回数, BREAKを使う回数.
R10 = 0; // x
LOOP(1, 0); // CONTINUEを使う回数, BREAKを使う回数.
R00 = R10 << 16;
R01 = R11 << 8;
R00 += R01; // 00xxyy00
SMEMPP(R00, T_UINT32, P04);
R10++;
CMPIJNE(R10, 256, CONTINUE);
ENDLOOP0(); // BREAKを使わない場合用、省略可能.
R11++;
CMPIJNE(R11, 256, CONTINUE);
ENDLOOP0(); // BREAKを使わない場合用、省略可能.
R04 = 0x101; R06 = 256; R07 = 256; R08 = 0; R09 = 0; PCALL(P1B); // flush(256, 256, 0, 0);
R04 = 0x102; R05 = 10000; PCALL(P1B); // sleep(10.000sec);