
#include "osecpu_ask.h"
Int32s c:R00, x:R01, y:R02;
api_openWin(256, 256);
// c = 0;
for (x = 0; x != 256; x++) {
for (y = 0; y != 256; y++) {
api_drawPoint(MODE_COL24, c, x, y);
c += 0x100;
}
}
+0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +a +b +c 0000: 05 e2 59 0b b0 61 bb 62 bb 45 23 00 bb
prompt>osectols tool:dumpfr in:app0100_.ose
0000: 05e2 OSECPU-VMアプリの2バイトのシグネチャ
0004: 5_90_bb_0 api_openWin(256, 256);
000a: 6_1_bb for (R01 = 0; R01 != 256; R01++) { ...
000e: 6_2_bb for (R02 = 0; R02 != 256; R02++) { ...
0012: 4_5_2_3 api_drawPoint(MODE_COL24, R00, R01, R02);
0016: 0_0_bb R00 += 0x100;

#include "osecpu_ask.h"
Int32s x:R01, y:R02, c:R00;
api_openWin(256, 256);
for (y = 0; y != 256; y++) {
for (x = 0; x != 256; x++) {
c = x ^ y;
c *= 0x10101;
api_drawPoint(MODE_COL24, c, x, y);
}
}prompt>osectols tool:dumpfr in:app0115_.ose
0000: 05e2
0004: 5_90_bb_0 api_openWin(256, 256);
000a: 6_2_bb for (R01 = 0; R01 != 256; R01++) { ...
000e: 6_1_bb for (R02 = 0; R02 != 256; R02++) { ...
0012: 4_91_2_0_0 R00 = R01 ^ R02;
0018: 96_2_7510101 R00 *= 0x10101;
0022: 4_5_2_3 api_drawPoint(MODE_COL24, R00, R01, R02);
#include "osecpu_ask.h"
#define L_func LOCAL(0)
LOCALLABELS(1);
#define func(x1, y1, x2, y2, c) R00=c; R01=x1; R02=y1; R03=x2; R04=y2; CALL(L_func);
// main
do {
Int32s ax:R01, ay:R02, bx:R03, by:R04, count:R00;
for (count = 0; count != 13; count++) {
api_openWin(768, 768);
func(256, 256, 512, 256, count);
func(512, ay, bx, 512, count);
func(ax, 512, 256, by, count);
func(256, ay, bx, 256, count);
api_sleep(0, 1024);
}
}
api_end();
beginFunc(L_func);
do {
Int32s ax:R01, ay:R02, bx:R03, by:R04, count:R00;
Int32s ux:R05, uy:R06, tx:R07, ty:R08;
count--;
if (count >= 0) {
// ux = (by - ay + ax + bx) / 2;
// uy = (ax - bx + ay + by) / 2;
tx = ax + by; ty = bx - ay;
ux = tx + ty; uy = tx - ty;
ux /= 2; uy /= 2;
tx = bx; ty = by;
func(ax, ay, ux, uy, count);
func(ux, uy, tx, ty, count);
} else {
// count = -1;
api_drawLine(MODE_COL3, count, ax, ay, bx, by);
}
}
endFunc();
prompt>osectols tool:dumpfr in:app0116_.ose
0000: 05e2
0004: 6_0_8d for (R00 = 0; R00 != 13; R00++) {
0008: 5_90_e300_0 api_openWin(768, 768);
0010: 2_bb_1 R01 = 256;
0014: 2_bb_2 R02 = 256;
0018: 2_d98_3 R03 = 512;
001d: 2_bb_4 R04 = 256;
0021: be_1 CALL(L_func);
0024: 2_d98_1 R01 = 512;
0029: 2_d98_4 R04 = 512;
002e: be_1 CALL(L_func);
0031: 2_d98_2 R02 = 512;
0036: 2_bb_3 R03 = 256;
003a: be_1 CALL(L_func);
003d: 2_bb_1 R01 = 256;
0041: 2_bb_4 R04 = 256;
0045: be_1 CALL(L_func);
0048: 5_89_0_d99 api_sleep(0, 1024);
004f: bc beginFunc(L_func);
0051: 0_6_bf R00--;
0055: a2_2_0 if (count >= 0) { ...
0059: 4_0_4_6_87 (以下省略)
005f: 4_95_6_b5_88
0067: 4_0_5_0_5
006c: 4_95_4_6_6
0072: 99_5_1
0076: 99_3_1
007a: 2_b5_9b
007f: 2_b6_9c
0084: 2_b5_3
0088: 2_b5_4
008c: be_0
008f: 2_b3_1
0093: 2_b3_2
0097: 2_b7_3
009b: 2_b7_4
009f: be_0
00a2: 3_2
00a4: 1
00a5: 4_5_3_0
00a9: 1| コメント | お名前 | NameLink | |