6 Fixes:
-[FIX] On conditional jumps vm_pc doesn't get updated if jump is not taken. -[FIX] Palette members are reversed -[FIX] Memory offset after each character is wrong -[FIX] LOCATE: cursors are reversed -[FIX] PRINT/PUTCHAR: cursor_y offset is wrong -[FIX] PUTCHAR: parameters are grabbed reversed
This commit is contained in:
248
font.h
248
font.h
@@ -1,132 +1,132 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
unsigned char char_map[2048] = {
|
unsigned char char_map[2048] = {
|
||||||
0xFF, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0xFF, 0xFF, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03,
|
0xFF, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xFF, 0xFF, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0,
|
||||||
0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0xFF, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0xFF,
|
0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0xFF, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0xFF,
|
||||||
0x03, 0x03, 0x03, 0x3F, 0x03, 0x03, 0x03, 0x00, 0xFF, 0x0F, 0x3F, 0x3F, 0x3F, 0x3F, 0x0F, 0xFF,
|
0x0C, 0x18, 0x30, 0x7E, 0x0C, 0x18, 0x30, 0x00, 0xFF, 0xC3, 0xE7, 0xDB, 0xDB, 0xE7, 0xC3, 0xFF,
|
||||||
0x00, 0x01, 0x03, 0x03, 0x0F, 0x0F, 0x03, 0x00, 0x0F, 0x0F, 0x0F, 0x0F, 0xFF, 0x03, 0x3F, 0x00,
|
0x00, 0x01, 0x03, 0x06, 0xCC, 0x78, 0x30, 0x00, 0x3C, 0x66, 0xC3, 0xC3, 0xFF, 0x24, 0xE7, 0x00,
|
||||||
0x00, 0x00, 0x03, 0x03, 0xFF, 0x03, 0x03, 0x00, 0x00, 0x00, 0x03, 0x03, 0xFF, 0x03, 0x03, 0x00,
|
0x00, 0x00, 0x30, 0x60, 0xFF, 0x60, 0x30, 0x00, 0x00, 0x00, 0x0C, 0x06, 0xFF, 0x06, 0x0C, 0x00,
|
||||||
0x03, 0x03, 0x03, 0x03, 0x3F, 0x3F, 0x0F, 0x03, 0x03, 0x0F, 0x3F, 0x3F, 0x03, 0x03, 0x03, 0x03,
|
0x18, 0x18, 0x18, 0x18, 0xDB, 0x7E, 0x3C, 0x18, 0x18, 0x3C, 0x7E, 0xDB, 0x18, 0x18, 0x18, 0x18,
|
||||||
0x03, 0x0F, 0x0F, 0x0F, 0x3F, 0x3F, 0x0F, 0x03, 0x00, 0x03, 0x0F, 0x0F, 0x7F, 0x03, 0x03, 0x00,
|
0x18, 0x5A, 0x3C, 0x99, 0xDB, 0x7E, 0x3C, 0x18, 0x00, 0x03, 0x33, 0x63, 0xFE, 0x60, 0x30, 0x00,
|
||||||
0x0F, 0x0F, 0xFF, 0x3F, 0x3F, 0xFF, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x3F, 0x3F, 0x0F, 0x0F, 0x0F,
|
0x3C, 0x66, 0xFF, 0xDB, 0xDB, 0xFF, 0x66, 0x3C, 0x3C, 0x66, 0xC3, 0xDB, 0xDB, 0xC3, 0x66, 0x3C,
|
||||||
0xFF, 0x0F, 0x0F, 0xFF, 0x0F, 0x0F, 0x0F, 0xFF, 0x0F, 0x3F, 0x3F, 0x3F, 0x7F, 0x0F, 0x0F, 0x0F,
|
0xFF, 0xC3, 0xC3, 0xFF, 0xC3, 0xC3, 0xC3, 0xFF, 0x3C, 0x7E, 0xDB, 0xDB, 0xDF, 0xC3, 0x66, 0x3C,
|
||||||
0x0F, 0x0F, 0x0F, 0x7F, 0x3F, 0x3F, 0x3F, 0x0F, 0x0F, 0x0F, 0x0F, 0x7F, 0x3F, 0x3F, 0x3F, 0x0F,
|
0x3C, 0x66, 0xC3, 0xDF, 0xDB, 0xDB, 0x7E, 0x3C, 0x3C, 0x66, 0xC3, 0xFB, 0xDB, 0xDB, 0x7E, 0x3C,
|
||||||
0x0F, 0x3F, 0x3F, 0x3F, 0x7F, 0x0F, 0x0F, 0x0F, 0x00, 0x01, 0x0F, 0x0F, 0x1F, 0x3F, 0x07, 0x00,
|
0x3C, 0x7E, 0xDB, 0xDB, 0xFB, 0xC3, 0x66, 0x3C, 0x00, 0x01, 0x33, 0x1E, 0xCE, 0x7B, 0x31, 0x00,
|
||||||
0x3F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x3F, 0x03, 0x03, 0x03, 0xFF, 0x03, 0x03, 0x03, 0x00,
|
0x7E, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0xE7, 0x03, 0x03, 0x03, 0xFF, 0x03, 0x03, 0x03, 0x00,
|
||||||
0xFF, 0x0F, 0x0F, 0x03, 0x03, 0x0F, 0x0F, 0xFF, 0x03, 0x03, 0x0F, 0x0F, 0x0F, 0x0F, 0x03, 0x03,
|
0xFF, 0x66, 0x3C, 0x18, 0x18, 0x3C, 0x66, 0xFF, 0x18, 0x18, 0x3C, 0x3C, 0x3C, 0x3C, 0x18, 0x18,
|
||||||
0x0F, 0x0F, 0x0F, 0x03, 0x03, 0x00, 0x03, 0x00, 0x0F, 0x0F, 0x0F, 0xFF, 0x0F, 0x0F, 0x0F, 0x0F,
|
0x3C, 0x66, 0x66, 0x30, 0x18, 0x00, 0x18, 0x00, 0x3C, 0x66, 0xC3, 0xFF, 0xC3, 0xC3, 0x66, 0x3C,
|
||||||
0xFF, 0x3F, 0x3F, 0x3F, 0x7F, 0x0F, 0x0F, 0xFF, 0xFF, 0x0F, 0x0F, 0x7F, 0x3F, 0x3F, 0x3F, 0xFF,
|
0xFF, 0xDB, 0xDB, 0xDB, 0xFB, 0xC3, 0xC3, 0xFF, 0xFF, 0xC3, 0xC3, 0xFB, 0xDB, 0xDB, 0xDB, 0xFF,
|
||||||
0xFF, 0x0F, 0x0F, 0x7F, 0x3F, 0x3F, 0x3F, 0xFF, 0xFF, 0x3F, 0x3F, 0x3F, 0x7F, 0x0F, 0x0F, 0xFF,
|
0xFF, 0xC3, 0xC3, 0xDF, 0xDB, 0xDB, 0xDB, 0xFF, 0xFF, 0xDB, 0xDB, 0xDB, 0xDF, 0xC3, 0xC3, 0xFF,
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0x03, 0x03, 0x00, 0x03, 0x00,
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x18, 0x18, 0x18, 0x00, 0x18, 0x00,
|
||||||
0x0F, 0x0F, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0x0F, 0x7F, 0x0F, 0x7F, 0x0F, 0x0F, 0x00,
|
0x6C, 0x6C, 0x6C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6C, 0x6C, 0xFE, 0x6C, 0xFE, 0x6C, 0x6C, 0x00,
|
||||||
0x03, 0x1F, 0x07, 0x0F, 0x07, 0x1F, 0x03, 0x00, 0x00, 0x0F, 0x0F, 0x03, 0x03, 0x0F, 0x0F, 0x00,
|
0x18, 0x3E, 0x58, 0x3C, 0x1A, 0x7C, 0x18, 0x00, 0x00, 0xC6, 0xCC, 0x18, 0x30, 0x66, 0xC6, 0x00,
|
||||||
0x07, 0x0F, 0x07, 0x1F, 0x1F, 0x0F, 0x1F, 0x00, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
|
0x38, 0x6C, 0x38, 0x76, 0xDC, 0xCC, 0x76, 0x00, 0x18, 0x18, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x00, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x00,
|
0x0C, 0x18, 0x30, 0x30, 0x30, 0x18, 0x0C, 0x00, 0x30, 0x18, 0x0C, 0x0C, 0x0C, 0x18, 0x30, 0x00,
|
||||||
0x00, 0x0F, 0x0F, 0xFF, 0x0F, 0x0F, 0x00, 0x00, 0x00, 0x03, 0x03, 0x3F, 0x03, 0x03, 0x00, 0x00,
|
0x00, 0x66, 0x3C, 0xFF, 0x3C, 0x66, 0x00, 0x00, 0x00, 0x18, 0x18, 0x7E, 0x18, 0x18, 0x00, 0x00,
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x00,
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x30, 0x00, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x00, 0x00,
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x00, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x01, 0x00,
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x06, 0x0C, 0x18, 0x30, 0x60, 0xC0, 0x80, 0x00,
|
||||||
0x1F, 0x0F, 0x1F, 0x1F, 0x1F, 0x0F, 0x1F, 0x00, 0x03, 0x07, 0x03, 0x03, 0x03, 0x03, 0x3F, 0x00,
|
0x7C, 0xC6, 0xCE, 0xD6, 0xE6, 0xC6, 0x7C, 0x00, 0x18, 0x38, 0x18, 0x18, 0x18, 0x18, 0x7E, 0x00,
|
||||||
0x0F, 0x0F, 0x03, 0x0F, 0x03, 0x0F, 0x3F, 0x00, 0x0F, 0x0F, 0x03, 0x07, 0x03, 0x0F, 0x0F, 0x00,
|
0x3C, 0x66, 0x06, 0x3C, 0x60, 0x66, 0x7E, 0x00, 0x3C, 0x66, 0x06, 0x1C, 0x06, 0x66, 0x3C, 0x00,
|
||||||
0x07, 0x0F, 0x0F, 0x0F, 0x7F, 0x03, 0x0F, 0x00, 0x3F, 0x07, 0x03, 0x1F, 0x03, 0x0F, 0x0F, 0x00,
|
0x1C, 0x3C, 0x6C, 0xCC, 0xFE, 0x0C, 0x1E, 0x00, 0x7E, 0x62, 0x60, 0x7C, 0x06, 0x66, 0x3C, 0x00,
|
||||||
0x0F, 0x0F, 0x03, 0x1F, 0x0F, 0x0F, 0x0F, 0x00, 0x3F, 0x0F, 0x03, 0x03, 0x03, 0x03, 0x03, 0x00,
|
0x3C, 0x66, 0x60, 0x7C, 0x66, 0x66, 0x3C, 0x00, 0x7E, 0x66, 0x06, 0x0C, 0x18, 0x18, 0x18, 0x00,
|
||||||
0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x00, 0x0F, 0x0F, 0x0F, 0x1F, 0x03, 0x0F, 0x0F, 0x00,
|
0x3C, 0x66, 0x66, 0x3C, 0x66, 0x66, 0x3C, 0x00, 0x3C, 0x66, 0x66, 0x3E, 0x06, 0x66, 0x3C, 0x00,
|
||||||
0x00, 0x00, 0x03, 0x03, 0x00, 0x03, 0x03, 0x00, 0x00, 0x00, 0x03, 0x03, 0x00, 0x03, 0x03, 0x03,
|
0x00, 0x00, 0x18, 0x18, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x18, 0x18, 0x30,
|
||||||
0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x3F, 0x00, 0x00,
|
0x0C, 0x18, 0x30, 0x60, 0x30, 0x18, 0x0C, 0x00, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7E, 0x00, 0x00,
|
||||||
0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x00, 0x0F, 0x0F, 0x0F, 0x03, 0x03, 0x00, 0x03, 0x00,
|
0x60, 0x30, 0x18, 0x0C, 0x18, 0x30, 0x60, 0x00, 0x3C, 0x66, 0x66, 0x0C, 0x18, 0x00, 0x18, 0x00,
|
||||||
0x1F, 0x0F, 0x3F, 0x3F, 0x3F, 0x03, 0x1F, 0x00, 0x03, 0x0F, 0x0F, 0x0F, 0x3F, 0x0F, 0x0F, 0x00,
|
0x7C, 0xC6, 0xDE, 0xDE, 0xDE, 0xC0, 0x7C, 0x00, 0x18, 0x3C, 0x66, 0x66, 0x7E, 0x66, 0x66, 0x00,
|
||||||
0x3F, 0x0F, 0x0F, 0x1F, 0x0F, 0x0F, 0x3F, 0x00, 0x0F, 0x0F, 0x03, 0x03, 0x03, 0x0F, 0x0F, 0x00,
|
0xFC, 0x66, 0x66, 0x7C, 0x66, 0x66, 0xFC, 0x00, 0x3C, 0x66, 0xC0, 0xC0, 0xC0, 0x66, 0x3C, 0x00,
|
||||||
0x1F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x1F, 0x00, 0x7F, 0x07, 0x07, 0x0F, 0x07, 0x07, 0x7F, 0x00,
|
0xF8, 0x6C, 0x66, 0x66, 0x66, 0x6C, 0xF8, 0x00, 0xFE, 0x62, 0x68, 0x78, 0x68, 0x62, 0xFE, 0x00,
|
||||||
0x7F, 0x07, 0x07, 0x0F, 0x07, 0x03, 0x0F, 0x00, 0x0F, 0x0F, 0x03, 0x03, 0x1F, 0x0F, 0x1F, 0x00,
|
0xFE, 0x62, 0x68, 0x78, 0x68, 0x60, 0xF0, 0x00, 0x3C, 0x66, 0xC0, 0xC0, 0xCE, 0x66, 0x3E, 0x00,
|
||||||
0x0F, 0x0F, 0x0F, 0x3F, 0x0F, 0x0F, 0x0F, 0x00, 0x3F, 0x03, 0x03, 0x03, 0x03, 0x03, 0x3F, 0x00,
|
0x66, 0x66, 0x66, 0x7E, 0x66, 0x66, 0x66, 0x00, 0x7E, 0x18, 0x18, 0x18, 0x18, 0x18, 0x7E, 0x00,
|
||||||
0x0F, 0x03, 0x03, 0x03, 0x0F, 0x0F, 0x0F, 0x00, 0x1F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x1F, 0x00,
|
0x1E, 0x0C, 0x0C, 0x0C, 0xCC, 0xCC, 0x78, 0x00, 0xE6, 0x66, 0x6C, 0x78, 0x6C, 0x66, 0xE6, 0x00,
|
||||||
0x0F, 0x03, 0x03, 0x03, 0x07, 0x0F, 0x7F, 0x00, 0x0F, 0x3F, 0x7F, 0x7F, 0x1F, 0x0F, 0x0F, 0x00,
|
0xF0, 0x60, 0x60, 0x60, 0x62, 0x66, 0xFE, 0x00, 0xC6, 0xEE, 0xFE, 0xFE, 0xD6, 0xC6, 0xC6, 0x00,
|
||||||
0x0F, 0x1F, 0x3F, 0x3F, 0x1F, 0x0F, 0x0F, 0x00, 0x07, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x07, 0x00,
|
0xC6, 0xE6, 0xF6, 0xDE, 0xCE, 0xC6, 0xC6, 0x00, 0x38, 0x6C, 0xC6, 0xC6, 0xC6, 0x6C, 0x38, 0x00,
|
||||||
0x3F, 0x0F, 0x0F, 0x1F, 0x03, 0x03, 0x0F, 0x00, 0x07, 0x0F, 0x0F, 0x0F, 0x1F, 0x0F, 0x1F, 0x00,
|
0xFC, 0x66, 0x66, 0x7C, 0x60, 0x60, 0xF0, 0x00, 0x38, 0x6C, 0xC6, 0xC6, 0xDA, 0xCC, 0x76, 0x00,
|
||||||
0x3F, 0x0F, 0x0F, 0x1F, 0x0F, 0x0F, 0x1F, 0x00, 0x0F, 0x0F, 0x03, 0x0F, 0x03, 0x0F, 0x0F, 0x00,
|
0xFC, 0x66, 0x66, 0x7C, 0x6C, 0x66, 0xE6, 0x00, 0x3C, 0x66, 0x60, 0x3C, 0x06, 0x66, 0x3C, 0x00,
|
||||||
0x3F, 0x0F, 0x03, 0x03, 0x03, 0x03, 0x0F, 0x00, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x00,
|
0x7E, 0x5A, 0x18, 0x18, 0x18, 0x18, 0x3C, 0x00, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x3C, 0x00,
|
||||||
0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x03, 0x00, 0x0F, 0x0F, 0x0F, 0x1F, 0x7F, 0x3F, 0x0F, 0x00,
|
0x66, 0x66, 0x66, 0x66, 0x66, 0x3C, 0x18, 0x00, 0xC6, 0xC6, 0xC6, 0xD6, 0xFE, 0xEE, 0xC6, 0x00,
|
||||||
0x0F, 0x0F, 0x07, 0x07, 0x0F, 0x0F, 0x0F, 0x00, 0x0F, 0x0F, 0x0F, 0x0F, 0x03, 0x03, 0x0F, 0x00,
|
0xC6, 0x6C, 0x38, 0x38, 0x6C, 0xC6, 0xC6, 0x00, 0x66, 0x66, 0x66, 0x3C, 0x18, 0x18, 0x3C, 0x00,
|
||||||
0x7F, 0x0F, 0x07, 0x03, 0x07, 0x0F, 0x7F, 0x00, 0x0F, 0x03, 0x03, 0x03, 0x03, 0x03, 0x0F, 0x00,
|
0xFE, 0xC6, 0x8C, 0x18, 0x32, 0x66, 0xFE, 0x00, 0x3C, 0x30, 0x30, 0x30, 0x30, 0x30, 0x3C, 0x00,
|
||||||
0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x01, 0x00, 0x0F, 0x03, 0x03, 0x03, 0x03, 0x03, 0x0F, 0x00,
|
0xC0, 0x60, 0x30, 0x18, 0x0C, 0x06, 0x02, 0x00, 0x3C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x3C, 0x00,
|
||||||
0x03, 0x0F, 0x3F, 0x03, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF,
|
0x18, 0x3C, 0x7E, 0x18, 0x18, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF,
|
||||||
0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0x03, 0x1F, 0x0F, 0x1F, 0x00,
|
0x30, 0x18, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x0C, 0x7C, 0xCC, 0x76, 0x00,
|
||||||
0x07, 0x03, 0x1F, 0x0F, 0x0F, 0x0F, 0x1F, 0x00, 0x00, 0x00, 0x0F, 0x0F, 0x03, 0x0F, 0x0F, 0x00,
|
0xE0, 0x60, 0x7C, 0x66, 0x66, 0x66, 0xDC, 0x00, 0x00, 0x00, 0x3C, 0x66, 0x60, 0x66, 0x3C, 0x00,
|
||||||
0x07, 0x03, 0x1F, 0x0F, 0x0F, 0x0F, 0x1F, 0x00, 0x00, 0x00, 0x0F, 0x0F, 0x3F, 0x03, 0x0F, 0x00,
|
0x1C, 0x0C, 0x7C, 0xCC, 0xCC, 0xCC, 0x76, 0x00, 0x00, 0x00, 0x3C, 0x66, 0x7E, 0x60, 0x3C, 0x00,
|
||||||
0x07, 0x0F, 0x03, 0x0F, 0x03, 0x03, 0x0F, 0x00, 0x00, 0x00, 0x1F, 0x0F, 0x0F, 0x1F, 0x03, 0x1F,
|
0x1C, 0x36, 0x30, 0x78, 0x30, 0x30, 0x78, 0x00, 0x00, 0x00, 0x3E, 0x66, 0x66, 0x3E, 0x06, 0x7C,
|
||||||
0x07, 0x03, 0x0F, 0x1F, 0x0F, 0x0F, 0x1F, 0x00, 0x03, 0x00, 0x07, 0x03, 0x03, 0x03, 0x0F, 0x00,
|
0xE0, 0x60, 0x6C, 0x76, 0x66, 0x66, 0xE6, 0x00, 0x18, 0x00, 0x38, 0x18, 0x18, 0x18, 0x3C, 0x00,
|
||||||
0x03, 0x00, 0x07, 0x03, 0x03, 0x0F, 0x0F, 0x0F, 0x07, 0x03, 0x0F, 0x0F, 0x0F, 0x0F, 0x1F, 0x00,
|
0x06, 0x00, 0x0E, 0x06, 0x06, 0x66, 0x66, 0x3C, 0xE0, 0x60, 0x66, 0x6C, 0x78, 0x6C, 0xE6, 0x00,
|
||||||
0x07, 0x03, 0x03, 0x03, 0x03, 0x03, 0x0F, 0x00, 0x00, 0x00, 0x0F, 0x7F, 0x1F, 0x1F, 0x0F, 0x00,
|
0x38, 0x18, 0x18, 0x18, 0x18, 0x18, 0x3C, 0x00, 0x00, 0x00, 0x6C, 0xFE, 0xD6, 0xD6, 0xC6, 0x00,
|
||||||
0x00, 0x00, 0x1F, 0x0F, 0x0F, 0x0F, 0x0F, 0x00, 0x00, 0x00, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x00,
|
0x00, 0x00, 0xDC, 0x66, 0x66, 0x66, 0x66, 0x00, 0x00, 0x00, 0x3C, 0x66, 0x66, 0x66, 0x3C, 0x00,
|
||||||
0x00, 0x00, 0x1F, 0x0F, 0x0F, 0x1F, 0x03, 0x0F, 0x00, 0x00, 0x1F, 0x0F, 0x0F, 0x1F, 0x03, 0x0F,
|
0x00, 0x00, 0xDC, 0x66, 0x66, 0x7C, 0x60, 0xF0, 0x00, 0x00, 0x76, 0xCC, 0xCC, 0x7C, 0x0C, 0x1E,
|
||||||
0x00, 0x00, 0x1F, 0x1F, 0x03, 0x03, 0x0F, 0x00, 0x00, 0x00, 0x0F, 0x03, 0x0F, 0x03, 0x1F, 0x00,
|
0x00, 0x00, 0xDC, 0x76, 0x60, 0x60, 0xF0, 0x00, 0x00, 0x00, 0x3C, 0x60, 0x3C, 0x06, 0x7C, 0x00,
|
||||||
0x03, 0x03, 0x1F, 0x03, 0x03, 0x0F, 0x07, 0x00, 0x00, 0x00, 0x0F, 0x0F, 0x0F, 0x0F, 0x1F, 0x00,
|
0x30, 0x30, 0x7C, 0x30, 0x30, 0x36, 0x1C, 0x00, 0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x3E, 0x00,
|
||||||
0x00, 0x00, 0x0F, 0x0F, 0x0F, 0x0F, 0x03, 0x00, 0x00, 0x00, 0x0F, 0x1F, 0x1F, 0x7F, 0x0F, 0x00,
|
0x00, 0x00, 0x66, 0x66, 0x66, 0x3C, 0x18, 0x00, 0x00, 0x00, 0xC6, 0xD6, 0xD6, 0xFE, 0x6C, 0x00,
|
||||||
0x00, 0x00, 0x0F, 0x0F, 0x07, 0x0F, 0x0F, 0x00, 0x00, 0x00, 0x0F, 0x0F, 0x0F, 0x1F, 0x03, 0x1F,
|
0x00, 0x00, 0xC6, 0x6C, 0x38, 0x6C, 0xC6, 0x00, 0x00, 0x00, 0x66, 0x66, 0x66, 0x3E, 0x06, 0x7C,
|
||||||
0x00, 0x00, 0x3F, 0x07, 0x03, 0x07, 0x3F, 0x00, 0x07, 0x03, 0x03, 0x07, 0x03, 0x03, 0x07, 0x00,
|
0x00, 0x00, 0x7E, 0x4C, 0x18, 0x32, 0x7E, 0x00, 0x0E, 0x18, 0x18, 0x70, 0x18, 0x18, 0x0E, 0x00,
|
||||||
0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x00, 0x07, 0x03, 0x03, 0x07, 0x03, 0x03, 0x07, 0x00,
|
0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x00, 0x70, 0x18, 0x18, 0x0E, 0x18, 0x18, 0x70, 0x00,
|
||||||
0x1F, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F,
|
0x76, 0xDC, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xCC, 0x33, 0xCC, 0x33, 0xCC, 0x33, 0xCC, 0x33,
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0x0F, 0x0F, 0x0F, 0x00, 0x00, 0x00, 0x00,
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF0, 0xF0, 0xF0, 0xF0, 0x00, 0x00, 0x00, 0x00,
|
||||||
0x0F, 0x0F, 0x0F, 0x0F, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00,
|
0x0F, 0x0F, 0x0F, 0x0F, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00,
|
||||||
0x00, 0x00, 0x00, 0x00, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F,
|
0x00, 0x00, 0x00, 0x00, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0,
|
||||||
|
0x0F, 0x0F, 0x0F, 0x0F, 0xF0, 0xF0, 0xF0, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xF0, 0xF0, 0xF0,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x0F, 0x0F, 0x0F, 0x0F, 0xF0, 0xF0, 0xF0, 0xF0, 0x0F, 0x0F, 0x0F, 0x0F,
|
||||||
0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0x0F, 0x0F, 0x0F,
|
0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0x0F, 0x0F, 0x0F,
|
||||||
0x00, 0x00, 0x00, 0x00, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F,
|
0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xF0, 0xF0, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||||
0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0x0F, 0x0F, 0x0F,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0x0F, 0x0F, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF,
|
|
||||||
0x0F, 0x0F, 0x0F, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
0x0F, 0x0F, 0x0F, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||||
0x00, 0x00, 0x00, 0x03, 0x03, 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00,
|
0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x18, 0x18, 0x18, 0x18, 0x18, 0x00, 0x00, 0x00,
|
||||||
0x00, 0x00, 0x00, 0x1F, 0x1F, 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0x1F, 0x0F, 0x00, 0x00, 0x00,
|
0x00, 0x00, 0x00, 0x1F, 0x1F, 0x00, 0x00, 0x00, 0x18, 0x18, 0x18, 0x1F, 0x0F, 0x00, 0x00, 0x00,
|
||||||
0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03,
|
0x00, 0x00, 0x00, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18,
|
||||||
0x00, 0x00, 0x00, 0x0F, 0x1F, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x1F, 0x1F, 0x03, 0x03, 0x03,
|
0x00, 0x00, 0x00, 0x0F, 0x1F, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x1F, 0x1F, 0x18, 0x18, 0x18,
|
||||||
0x00, 0x00, 0x00, 0x1F, 0x1F, 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0x1F, 0x0F, 0x00, 0x00, 0x00,
|
0x00, 0x00, 0x00, 0xF8, 0xF8, 0x00, 0x00, 0x00, 0x18, 0x18, 0x18, 0xF8, 0xF0, 0x00, 0x00, 0x00,
|
||||||
0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0xFF, 0xFF, 0x00, 0x00, 0x00,
|
0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x18, 0x18, 0x18, 0xFF, 0xFF, 0x00, 0x00, 0x00,
|
||||||
0x00, 0x00, 0x00, 0x0F, 0x1F, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x1F, 0x1F, 0x03, 0x03, 0x03,
|
0x00, 0x00, 0x00, 0xF0, 0xF8, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0xF8, 0xF8, 0x18, 0x18, 0x18,
|
||||||
0x00, 0x00, 0x00, 0xFF, 0xFF, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0xFF, 0xFF, 0x03, 0x03, 0x03,
|
0x00, 0x00, 0x00, 0xFF, 0xFF, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0xFF, 0xFF, 0x18, 0x18, 0x18,
|
||||||
0x01, 0x07, 0x0F, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0x00, 0x0F, 0x1F, 0x1F, 0x0F, 0x00,
|
0x10, 0x38, 0x6C, 0xC6, 0x00, 0x00, 0x00, 0x00, 0x32, 0x4C, 0x00, 0x66, 0x76, 0x6E, 0x66, 0x00,
|
||||||
0x0F, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x03, 0x07, 0x3F, 0x03, 0x03, 0x07, 0x00,
|
0x66, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x90, 0x94, 0xEE, 0x84, 0x84, 0x83, 0x00,
|
||||||
0x07, 0x03, 0x1F, 0x07, 0x1F, 0x03, 0x07, 0x00, 0x3F, 0x1F, 0x1F, 0x0F, 0x07, 0x07, 0x07, 0x00,
|
0x38, 0x44, 0xBA, 0xA2, 0xBA, 0x44, 0x38, 0x00, 0x7E, 0xF4, 0xF4, 0x74, 0x34, 0x34, 0x34, 0x00,
|
||||||
0x0F, 0x03, 0x07, 0x0F, 0x07, 0x03, 0x0F, 0x00, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
|
0x1E, 0x30, 0x38, 0x6C, 0x38, 0x18, 0xF0, 0x00, 0x18, 0x18, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
0x01, 0x03, 0x03, 0x07, 0x07, 0x0F, 0x01, 0x00, 0x01, 0x03, 0x07, 0x07, 0x03, 0x01, 0x0F, 0x00,
|
0x40, 0xC0, 0x44, 0x4C, 0x54, 0x1E, 0x04, 0x00, 0x40, 0xC0, 0x4C, 0x52, 0x44, 0x08, 0x1E, 0x00,
|
||||||
0x07, 0x01, 0x07, 0x07, 0x1F, 0x0F, 0x01, 0x00, 0x07, 0x07, 0x00, 0x1F, 0x0F, 0x0F, 0x0F, 0x00,
|
0xE0, 0x10, 0x62, 0x16, 0xEA, 0x0F, 0x02, 0x00, 0x32, 0x4C, 0x00, 0xDC, 0x66, 0x66, 0x66, 0x00,
|
||||||
0x03, 0x03, 0x00, 0x3F, 0x00, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x03, 0x03, 0x00, 0x00,
|
0x18, 0x18, 0x00, 0x7E, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, 0x7E, 0x06, 0x06, 0x00, 0x00,
|
||||||
0x03, 0x00, 0x03, 0x03, 0x0F, 0x0F, 0x0F, 0x00, 0x03, 0x00, 0x03, 0x03, 0x03, 0x03, 0x03, 0x00,
|
0x18, 0x00, 0x18, 0x30, 0x66, 0x66, 0x3C, 0x00, 0x18, 0x00, 0x18, 0x18, 0x18, 0x18, 0x18, 0x00,
|
||||||
0x00, 0x00, 0x1F, 0x3F, 0x0F, 0x3F, 0x1F, 0x00, 0x1F, 0x0F, 0x0F, 0x3F, 0x0F, 0x0F, 0x1F, 0x03,
|
0x00, 0x00, 0x73, 0xDE, 0xCC, 0xDE, 0x73, 0x00, 0x7C, 0xC6, 0xC6, 0xFC, 0xC6, 0xC6, 0xF8, 0xC0,
|
||||||
0x00, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x00, 0x0F, 0x03, 0x03, 0x0F, 0x0F, 0x0F, 0x0F, 0x00,
|
0x00, 0x66, 0x66, 0x3C, 0x66, 0x66, 0x3C, 0x00, 0x3C, 0x60, 0x60, 0x3C, 0x66, 0x66, 0x3C, 0x00,
|
||||||
0x00, 0x00, 0x0F, 0x03, 0x1F, 0x03, 0x0F, 0x00, 0x07, 0x0F, 0x0F, 0x7F, 0x0F, 0x0F, 0x07, 0x00,
|
0x00, 0x00, 0x1E, 0x30, 0x7C, 0x30, 0x1E, 0x00, 0x38, 0x6C, 0xC6, 0xFE, 0xC6, 0x6C, 0x38, 0x00,
|
||||||
0x00, 0x03, 0x03, 0x03, 0x07, 0x0F, 0x0F, 0x00, 0x00, 0x00, 0x0F, 0x0F, 0x0F, 0x1F, 0x03, 0x03,
|
0x00, 0xC0, 0x60, 0x30, 0x38, 0x6C, 0xC6, 0x00, 0x00, 0x00, 0x66, 0x66, 0x66, 0x7C, 0x60, 0x60,
|
||||||
0x00, 0x00, 0x00, 0x7F, 0x0F, 0x0F, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x0F, 0x0F, 0x07, 0x00,
|
0x00, 0x00, 0x00, 0xFE, 0x6C, 0x6C, 0x6C, 0x00, 0x00, 0x00, 0x00, 0x7E, 0xD8, 0xD8, 0x70, 0x00,
|
||||||
0x03, 0x03, 0x03, 0x0F, 0x0F, 0x0F, 0x03, 0x03, 0x03, 0x03, 0x03, 0x0F, 0x0F, 0x0F, 0x03, 0x03,
|
0x03, 0x06, 0x0C, 0x3C, 0x66, 0x3C, 0x60, 0xC0, 0x03, 0x06, 0x0C, 0x66, 0x66, 0x3C, 0x60, 0xC0,
|
||||||
0x00, 0x1F, 0x0F, 0x03, 0x07, 0x0F, 0x1F, 0x00, 0x00, 0x00, 0x0F, 0x0F, 0x3F, 0x3F, 0x3F, 0x00,
|
0x00, 0xE6, 0x3C, 0x18, 0x38, 0x6C, 0xC7, 0x00, 0x00, 0x00, 0x66, 0xC3, 0xDB, 0xDB, 0x7E, 0x00,
|
||||||
0x7F, 0x0F, 0x03, 0x03, 0x03, 0x0F, 0x7F, 0x00, 0x00, 0x1F, 0x0F, 0x0F, 0x0F, 0x0F, 0x3F, 0x00,
|
0xFE, 0xC6, 0x60, 0x30, 0x60, 0xC6, 0xFE, 0x00, 0x00, 0x7C, 0xC6, 0xC6, 0xC6, 0x6C, 0xEE, 0x00,
|
||||||
0x03, 0x03, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00,
|
0x18, 0x30, 0x60, 0xC0, 0x80, 0x00, 0x00, 0x00, 0x18, 0x0C, 0x06, 0x03, 0x01, 0x00, 0x00, 0x00,
|
||||||
0x00, 0x00, 0x00, 0x01, 0x03, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x01, 0x03, 0x03, 0x03, 0x03,
|
0x00, 0x00, 0x00, 0x01, 0x03, 0x06, 0x0C, 0x18, 0x00, 0x00, 0x00, 0x80, 0xC0, 0x60, 0x30, 0x18,
|
||||||
0x03, 0x0F, 0x0F, 0x0F, 0x03, 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03,
|
0x18, 0x3C, 0x66, 0xC3, 0x81, 0x00, 0x00, 0x00, 0x18, 0x0C, 0x06, 0x03, 0x03, 0x06, 0x0C, 0x18,
|
||||||
0x00, 0x00, 0x00, 0x03, 0x0F, 0x0F, 0x0F, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03,
|
0x00, 0x00, 0x00, 0x81, 0xC3, 0x66, 0x3C, 0x18, 0x18, 0x30, 0x60, 0xC0, 0xC0, 0x60, 0x30, 0x18,
|
||||||
0x03, 0x03, 0x03, 0x07, 0x07, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x07, 0x07, 0x03, 0x03, 0x03,
|
0x18, 0x30, 0x60, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x18, 0x0C, 0x06, 0x83, 0xC1, 0x60, 0x30, 0x18,
|
||||||
0x03, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x03, 0x0F, 0x3F, 0x3F, 0x0F, 0x0F, 0x3F, 0x3F, 0x0F,
|
0x18, 0x3C, 0x66, 0xC3, 0xC3, 0x66, 0x3C, 0x18, 0xC3, 0xE7, 0x7E, 0x3C, 0x3C, 0x7E, 0xE7, 0xC3,
|
||||||
0x03, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x03, 0x03, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x03,
|
0x03, 0x07, 0x0E, 0x1C, 0x38, 0x70, 0xE0, 0xC0, 0xC0, 0xE0, 0x70, 0x38, 0x1C, 0x0E, 0x07, 0x03,
|
||||||
0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F,
|
0xCC, 0xCC, 0x33, 0x33, 0xCC, 0xCC, 0x33, 0x33, 0xAA, 0x55, 0xAA, 0x55, 0xAA, 0x55, 0xAA, 0x55,
|
||||||
0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03,
|
0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03,
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03,
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0,
|
||||||
0xFF, 0x7F, 0x3F, 0x1F, 0x0F, 0x07, 0x03, 0x01, 0xFF, 0x7F, 0x3F, 0x1F, 0x0F, 0x07, 0x03, 0x01,
|
0xFF, 0xFE, 0xFC, 0xF8, 0xF0, 0xE0, 0xC0, 0x80, 0xFF, 0x7F, 0x3F, 0x1F, 0x0F, 0x07, 0x03, 0x01,
|
||||||
0x01, 0x03, 0x07, 0x0F, 0x1F, 0x3F, 0x7F, 0xFF, 0x01, 0x03, 0x07, 0x0F, 0x1F, 0x3F, 0x7F, 0xFF,
|
0x01, 0x03, 0x07, 0x0F, 0x1F, 0x3F, 0x7F, 0xFF, 0x80, 0xC0, 0xE0, 0xF0, 0xF8, 0xFC, 0xFE, 0xFF,
|
||||||
0x0F, 0x0F, 0x0F, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03,
|
0xAA, 0x55, 0xAA, 0x55, 0x00, 0x00, 0x00, 0x00, 0x0A, 0x05, 0x0A, 0x05, 0x0A, 0x05, 0x0A, 0x05,
|
||||||
0x00, 0x00, 0x00, 0x00, 0x0F, 0x0F, 0x0F, 0x0F, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03,
|
0x00, 0x00, 0x00, 0x00, 0xAA, 0x55, 0xAA, 0x55, 0xA0, 0x50, 0xA0, 0x50, 0xA0, 0x50, 0xA0, 0x50,
|
||||||
0x0F, 0x07, 0x07, 0x03, 0x03, 0x01, 0x01, 0x00, 0x0F, 0x0F, 0x07, 0x07, 0x03, 0x03, 0x01, 0x01,
|
0xAA, 0x54, 0xA8, 0x50, 0xA0, 0x40, 0x80, 0x00, 0xAA, 0x55, 0x2A, 0x15, 0x0A, 0x05, 0x02, 0x01,
|
||||||
0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x0F, 0x0F, 0x00, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x0F,
|
0x01, 0x02, 0x05, 0x0A, 0x15, 0x2A, 0x55, 0xAA, 0x00, 0x80, 0x40, 0xA0, 0x50, 0xA8, 0x54, 0xAA,
|
||||||
0x3F, 0xFF, 0x0F, 0xFF, 0x3F, 0x0F, 0xFF, 0x3F, 0x3F, 0xFF, 0x0F, 0xFF, 0x0F, 0x3F, 0xFF, 0x3F,
|
0x7E, 0xFF, 0x99, 0xFF, 0xBD, 0xC3, 0xFF, 0x7E, 0x7E, 0xFF, 0x99, 0xFF, 0xC3, 0xBD, 0xFF, 0x7E,
|
||||||
0x07, 0x07, 0x7F, 0x7F, 0x7F, 0x01, 0x07, 0x00, 0x01, 0x07, 0x1F, 0x7F, 0x1F, 0x07, 0x01, 0x00,
|
0x38, 0x38, 0xFE, 0xFE, 0xFE, 0x10, 0x38, 0x00, 0x10, 0x38, 0x7C, 0xFE, 0x7C, 0x38, 0x10, 0x00,
|
||||||
0x0F, 0x7F, 0x7F, 0x7F, 0x1F, 0x07, 0x01, 0x00, 0x01, 0x07, 0x1F, 0x7F, 0x7F, 0x01, 0x07, 0x00,
|
0x6C, 0xFE, 0xFE, 0xFE, 0x7C, 0x38, 0x10, 0x00, 0x10, 0x38, 0x7C, 0xFE, 0xFE, 0x10, 0x38, 0x00,
|
||||||
0x00, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x00, 0x00, 0x0F, 0x3F, 0xFF, 0xFF, 0x3F, 0x0F, 0x00,
|
0x00, 0x3C, 0x66, 0xC3, 0xC3, 0x66, 0x3C, 0x00, 0x00, 0x3C, 0x7E, 0xFF, 0xFF, 0x7E, 0x3C, 0x00,
|
||||||
0x00, 0x3F, 0x0F, 0x0F, 0x0F, 0x0F, 0x3F, 0x00, 0x00, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x00,
|
0x00, 0x7E, 0x66, 0x66, 0x66, 0x66, 0x7E, 0x00, 0x00, 0x7E, 0x7E, 0x7E, 0x7E, 0x7E, 0x7E, 0x00,
|
||||||
0x0F, 0x07, 0x07, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x03, 0x3F, 0x03,
|
0x0F, 0x07, 0x0D, 0x78, 0xCC, 0xCC, 0xCC, 0x78, 0x3C, 0x66, 0x66, 0x66, 0x3C, 0x18, 0x7E, 0x18,
|
||||||
0x03, 0x03, 0x03, 0x03, 0x03, 0x0F, 0x1F, 0x07, 0x03, 0x07, 0x0F, 0x0F, 0x03, 0x0F, 0x1F, 0x07,
|
0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x3C, 0x7C, 0x38, 0x18, 0x1C, 0x1E, 0x1B, 0x18, 0x78, 0xF8, 0x70,
|
||||||
0x0F, 0x0F, 0x03, 0x0F, 0x0F, 0x03, 0x0F, 0x0F, 0x01, 0x07, 0x07, 0x07, 0x07, 0x07, 0x1F, 0x1F,
|
0x99, 0x5A, 0x24, 0xC3, 0xC3, 0x24, 0x5A, 0x99, 0x10, 0x38, 0x38, 0x38, 0x38, 0x38, 0x7C, 0xD6,
|
||||||
0x03, 0x0F, 0x3F, 0xFF, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0xFF, 0x3F, 0x0F, 0x03,
|
0x18, 0x3C, 0x7E, 0xFF, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0xFF, 0x7E, 0x3C, 0x18,
|
||||||
0x01, 0x03, 0x07, 0xFF, 0xFF, 0x07, 0x03, 0x01, 0x01, 0x03, 0x07, 0xFF, 0xFF, 0x07, 0x03, 0x01,
|
0x10, 0x30, 0x70, 0xFF, 0xFF, 0x70, 0x30, 0x10, 0x08, 0x0C, 0x0E, 0xFF, 0xFF, 0x0E, 0x0C, 0x08,
|
||||||
0x00, 0x00, 0x03, 0x0F, 0x3F, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x3F, 0x0F, 0x03, 0x00,
|
0x00, 0x00, 0x18, 0x3C, 0x7E, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x7E, 0x3C, 0x18, 0x00,
|
||||||
0x01, 0x07, 0x1F, 0x7F, 0x1F, 0x07, 0x01, 0x00, 0x01, 0x07, 0x1F, 0x7F, 0x1F, 0x07, 0x01, 0x00,
|
0x80, 0xE0, 0xF8, 0xFE, 0xF8, 0xE0, 0x80, 0x00, 0x02, 0x0E, 0x3E, 0xFE, 0x3E, 0x0E, 0x02, 0x00,
|
||||||
0x07, 0x07, 0x07, 0x1F, 0x01, 0x03, 0x03, 0x03, 0x07, 0x07, 0x01, 0x7F, 0x01, 0x03, 0x03, 0x03,
|
0x38, 0x38, 0x92, 0x7C, 0x10, 0x28, 0x28, 0x28, 0x38, 0x38, 0x10, 0xFE, 0x10, 0x28, 0x44, 0x82,
|
||||||
0x07, 0x07, 0x03, 0x1F, 0x03, 0x03, 0x03, 0x03, 0x07, 0x07, 0x03, 0x1F, 0x03, 0x03, 0x03, 0x03,
|
0x38, 0x38, 0x12, 0x7C, 0x90, 0x28, 0x24, 0x22, 0x38, 0x38, 0x90, 0x7C, 0x12, 0x28, 0x48, 0x88,
|
||||||
0x00, 0x0F, 0x03, 0x0F, 0x0F, 0x0F, 0x03, 0x00, 0x0F, 0xFF, 0xFF, 0x03, 0x03, 0x03, 0x03, 0x03,
|
0x00, 0x3C, 0x18, 0x3C, 0x3C, 0x3C, 0x18, 0x00, 0x3C, 0xFF, 0xFF, 0x18, 0x0C, 0x18, 0x30, 0x18,
|
||||||
0x03, 0x0F, 0x3F, 0x03, 0x03, 0x3F, 0x0F, 0x03, 0x00, 0x03, 0x0F, 0xFF, 0x0F, 0x03, 0x00, 0x00
|
0x18, 0x3C, 0x7E, 0x18, 0x18, 0x7E, 0x3C, 0x18, 0x00, 0x24, 0x66, 0xFF, 0x66, 0x24, 0x00, 0x00,
|
||||||
};
|
};
|
||||||
|
|||||||
53
vdp.cpp
53
vdp.cpp
@@ -35,21 +35,21 @@ static int data_stack_pos = 0;
|
|||||||
|
|
||||||
static Uint8 palette[16][4] = {
|
static Uint8 palette[16][4] = {
|
||||||
{ 255, 0, 0, 255 },
|
{ 255, 0, 0, 255 },
|
||||||
{ 255, 0, 255, 0 },
|
{ 0, 255, 0, 255 },
|
||||||
{ 255, 255, 0, 0 },
|
{ 0, 0, 255, 255 },
|
||||||
{ 255, 255, 0, 255 },
|
|
||||||
{ 255, 0, 255, 255 },
|
{ 255, 0, 255, 255 },
|
||||||
{ 255, 255, 255, 0 },
|
{ 255, 255, 0, 255 },
|
||||||
|
{ 0, 255, 255, 255 },
|
||||||
{ 255, 255, 255, 255 },
|
{ 255, 255, 255, 255 },
|
||||||
{ 255, 0, 0, 0 },
|
{ 0, 0, 0, 255 },
|
||||||
{ 255, 0, 0, 128 },
|
{ 128, 0, 0, 255 },
|
||||||
{ 255, 0, 128, 0 },
|
{ 0, 128, 0, 255 },
|
||||||
{ 255, 128, 0, 0 },
|
{ 0, 0, 128, 255 },
|
||||||
{ 255, 128, 0, 128 },
|
{ 128, 0, 128, 255 },
|
||||||
{ 255, 0, 128, 128 },
|
{ 128, 128, 0, 255 },
|
||||||
{ 255, 128, 128, 0 },
|
{ 0, 128, 128, 255 },
|
||||||
{ 255, 128, 128, 128 },
|
{ 128, 128, 128, 255 },
|
||||||
{ 255, 0, 0, 0 },
|
{ 0, 0, 0, 255 },
|
||||||
};
|
};
|
||||||
|
|
||||||
void vdp_init() {
|
void vdp_init() {
|
||||||
@@ -58,16 +58,17 @@ void vdp_init() {
|
|||||||
sdlRenderer = SDL_CreateRenderer(sdlWindow, -1, SDL_RENDERER_PRESENTVSYNC);
|
sdlRenderer = SDL_CreateRenderer(sdlWindow, -1, SDL_RENDERER_PRESENTVSYNC);
|
||||||
//SDL_SetRenderDrawBlendMode(sdlRenderer, SDL_BLENDMODE_BLEND);
|
//SDL_SetRenderDrawBlendMode(sdlRenderer, SDL_BLENDMODE_BLEND);
|
||||||
SDL_RenderSetLogicalSize(sdlRenderer, 152, 120);
|
SDL_RenderSetLogicalSize(sdlRenderer, 152, 120);
|
||||||
SDL_SetRenderDrawColor(sdlRenderer, palette[border][3], palette[border][2], palette[border][1], palette[border][0]);
|
SDL_SetRenderDrawColor(sdlRenderer, palette[border][0], palette[border][1], palette[border][2], palette[border][3]);
|
||||||
|
|
||||||
for (int i = 0; i < 16 * 12; i++) screen_map[i] = i;
|
for (int i = 0; i < 16 * 12; i++) screen_map[i] = 32;
|
||||||
|
for (int i = 0; i < 16 * 12; i++) screen_color[i] = color;
|
||||||
//jtexture texture = (jtexture)malloc(sizeof(jtexture_t));
|
//jtexture texture = (jtexture)malloc(sizeof(jtexture_t));
|
||||||
//FILE* f = fopen("font.png", "rb");
|
//FILE* f = fopen("font.png", "rb");
|
||||||
//if (!f) { error = 2; return; }
|
//if (!f) { error = 2; return; }
|
||||||
//int c;
|
//int c;
|
||||||
//int size = 128;
|
//int size = 128;
|
||||||
//Uint8* buffer = stbi_load_from_file(f, &size, &size, &c, 4);
|
//Uint8* buffer = stbi_load_from_file(f, &size, &size, &c, 4);
|
||||||
sdlTexture = SDL_CreateTexture(sdlRenderer, SDL_PIXELFORMAT_ARGB8888, SDL_TEXTUREACCESS_STATIC, 128, 128);
|
sdlTexture = SDL_CreateTexture(sdlRenderer, SDL_PIXELFORMAT_ABGR8888, SDL_TEXTUREACCESS_STATIC, 128, 128);
|
||||||
//SDL_UpdateTexture(sdlTexture, NULL, buffer, 128 * sizeof(Uint32));
|
//SDL_UpdateTexture(sdlTexture, NULL, buffer, 128 * sizeof(Uint32));
|
||||||
//SDL_SetTextureBlendMode(sdlTexture, SDL_BLENDMODE_BLEND);
|
//SDL_SetTextureBlendMode(sdlTexture, SDL_BLENDMODE_BLEND);
|
||||||
//stbi_image_free(buffer);
|
//stbi_image_free(buffer);
|
||||||
@@ -102,12 +103,12 @@ static void flip() {
|
|||||||
if (*cm & 8) memcpy(sbt, palette[*sc & 0x0F], 4); else memcpy(sbt, palette[*sc >> 4], 4); sbt += 4;
|
if (*cm & 8) memcpy(sbt, palette[*sc & 0x0F], 4); else memcpy(sbt, palette[*sc >> 4], 4); sbt += 4;
|
||||||
if (*cm & 4) memcpy(sbt, palette[*sc & 0x0F], 4); else memcpy(sbt, palette[*sc >> 4], 4); sbt += 4;
|
if (*cm & 4) memcpy(sbt, palette[*sc & 0x0F], 4); else memcpy(sbt, palette[*sc >> 4], 4); sbt += 4;
|
||||||
if (*cm & 2) memcpy(sbt, palette[*sc & 0x0F], 4); else memcpy(sbt, palette[*sc >> 4], 4); sbt += 4;
|
if (*cm & 2) memcpy(sbt, palette[*sc & 0x0F], 4); else memcpy(sbt, palette[*sc >> 4], 4); sbt += 4;
|
||||||
if (*cm & 1) memcpy(sbt, palette[*sc & 0x0F], 4); else memcpy(sbt, palette[*sc >> 4], 4); sbt += 512;
|
if (*cm & 1) memcpy(sbt, palette[*sc & 0x0F], 4); else memcpy(sbt, palette[*sc >> 4], 4); sbt += (512-32+4);
|
||||||
cm++;
|
cm++;
|
||||||
}
|
}
|
||||||
sm++; sc++; sb += 32;
|
sm++; sc++; sb += 32;
|
||||||
}
|
}
|
||||||
sb += 3584;
|
sb += 3584; //3584;
|
||||||
}
|
}
|
||||||
SDL_UpdateTexture(sdlTexture, NULL, screen_buffer, 128 * sizeof(Uint32));
|
SDL_UpdateTexture(sdlTexture, NULL, screen_buffer, 128 * sizeof(Uint32));
|
||||||
SDL_RenderClear(sdlRenderer);
|
SDL_RenderClear(sdlRenderer);
|
||||||
@@ -123,19 +124,19 @@ void vdp_cmd_out(const unsigned char& value) {
|
|||||||
Uint8 n;
|
Uint8 n;
|
||||||
switch (value) {
|
switch (value) {
|
||||||
case VDP_CMD_LOCATE:
|
case VDP_CMD_LOCATE:
|
||||||
cursor_y = data_stack[--data_stack_pos]; cursor_x = data_stack[--data_stack_pos]; break;
|
cursor_x = data_stack[--data_stack_pos]; cursor_y = data_stack[--data_stack_pos]; break;
|
||||||
case VDP_CMD_PRINT:
|
case VDP_CMD_PRINT:
|
||||||
for (int i = 0; i < data_stack_pos; i++) {
|
for (int i = data_stack_pos-1; i >= 0; i--) {
|
||||||
screen_map[cursor_x + (cursor_y << 7)] = data_stack[i];
|
screen_map[cursor_x + (cursor_y << 4)] = data_stack[i];
|
||||||
screen_color[cursor_x + (cursor_y << 7)] = color;
|
screen_color[cursor_x + (cursor_y << 4)] = color;
|
||||||
cursor_x++; if (cursor_x == 16) { cursor_x = 0; cursor_y++; }
|
cursor_x++; if (cursor_x == 16) { cursor_x = 0; cursor_y++; }
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case VDP_CMD_PUTCHAR:
|
case VDP_CMD_PUTCHAR:
|
||||||
cursor_x = data_stack[data_stack_pos - 4];
|
cursor_x = data_stack[data_stack_pos - 1];
|
||||||
cursor_y = data_stack[data_stack_pos - 3];
|
cursor_y = data_stack[data_stack_pos - 2];
|
||||||
screen_map[cursor_x + (cursor_y << 7)] = data_stack[data_stack_pos-2];
|
screen_map[cursor_x + (cursor_y << 4)] = data_stack[data_stack_pos-3];
|
||||||
screen_color[cursor_x + (cursor_y << 7)] = data_stack[data_stack_pos - 1];
|
screen_color[cursor_x + (cursor_y << 4)] = data_stack[data_stack_pos - 4];
|
||||||
break;
|
break;
|
||||||
case VDP_CMD_SETCHAR:
|
case VDP_CMD_SETCHAR:
|
||||||
n = data_stack[data_stack_pos - 9];
|
n = data_stack[data_stack_pos - 9];
|
||||||
|
|||||||
32
vm.cpp
32
vm.cpp
@@ -138,7 +138,9 @@ const int vm_step() {
|
|||||||
if (sleeping) return vm_cycles;
|
if (sleeping) return vm_cycles;
|
||||||
|
|
||||||
char val, val2;
|
char val, val2;
|
||||||
switch (vm_program[vm_pc++]) {
|
OPS opcode = (OPS)vm_program[vm_pc++];
|
||||||
|
|
||||||
|
switch (opcode) {
|
||||||
|
|
||||||
case OP_NOP: vm_cycles++; break;
|
case OP_NOP: vm_cycles++; break;
|
||||||
case OP_PUSH: stack_push(vm_datastack, vm_program[vm_pc++]); vm_cycles++; break;
|
case OP_PUSH: stack_push(vm_datastack, vm_program[vm_pc++]); vm_cycles++; break;
|
||||||
@@ -163,25 +165,25 @@ const int vm_step() {
|
|||||||
case OP_INCZ: rZ++; vm_cycles++; break;
|
case OP_INCZ: rZ++; vm_cycles++; break;
|
||||||
case OP_DECZ: rZ--; vm_cycles++; break;
|
case OP_DECZ: rZ--; vm_cycles++; break;
|
||||||
case OP_JMP: vm_pc = WORD(); vm_cycles++; break;
|
case OP_JMP: vm_pc = WORD(); vm_cycles++; break;
|
||||||
case OP_JNT: if (stack_pop(vm_datastack) == 0) { vm_pc = WORD(); } vm_cycles++; break;
|
case OP_JNT: if (stack_pop(vm_datastack) == 0) { vm_pc = WORD(); } else vm_pc+=2; vm_cycles++; break;
|
||||||
case OP_JTR: if (stack_pop(vm_datastack) != 0) { vm_pc = WORD(); } vm_cycles++; break;
|
case OP_JTR: if (stack_pop(vm_datastack) != 0) { vm_pc = WORD(); } else vm_pc+=2; vm_cycles++; break;
|
||||||
case OP_JSR: stack_push(vm_callstack, vm_pc + 2); stack_push(vm_callstack, rX & 255); stack_push(vm_callstack, rX >> 8); stack_push(vm_callstack, rY); stack_push(vm_callstack, rZ); vm_pc = WORD(); vm_cycles++; break;
|
case OP_JSR: stack_push(vm_callstack, vm_pc + 2); stack_push(vm_callstack, rX & 255); stack_push(vm_callstack, rX >> 8); stack_push(vm_callstack, rY); stack_push(vm_callstack, rZ); vm_pc = WORD(); vm_cycles++; break;
|
||||||
case OP_RET: rZ = stack_pop(vm_callstack); rY = stack_pop(vm_callstack); rX = (stack_pop(vm_callstack) << 8) + stack_pop(vm_callstack); vm_pc = stack_pop(vm_callstack); vm_cycles++; break;
|
case OP_RET: rZ = stack_pop(vm_callstack); rY = stack_pop(vm_callstack); rX = (stack_pop(vm_callstack) << 8) + stack_pop(vm_callstack); vm_pc = stack_pop(vm_callstack); vm_cycles++; break;
|
||||||
case OP_CALL: external_calls[vm_program[vm_pc++]](vm_datastack); vm_cycles++; break;
|
case OP_CALL: external_calls[vm_program[vm_pc++]](vm_datastack); vm_cycles++; break;
|
||||||
case OP_RJ: vm_pc += vm_program[vm_pc]; vm_cycles++; break;
|
case OP_RJ: vm_pc += vm_program[vm_pc]; vm_cycles++; break;
|
||||||
case OP_RB: vm_pc -= vm_program[vm_pc]+1; vm_cycles++; break;
|
case OP_RB: vm_pc -= vm_program[vm_pc]+1; vm_cycles++; break;
|
||||||
case OP_RJZ: if (stack_pop(vm_datastack) == 0) vm_pc += vm_program[vm_pc]; vm_cycles++; break;
|
case OP_RJZ: if (stack_pop(vm_datastack) == 0) vm_pc += vm_program[vm_pc]; else vm_pc++; vm_cycles++; break;
|
||||||
case OP_RJN: if (stack_pop(vm_datastack) != 0) vm_pc += vm_program[vm_pc]; vm_cycles++; break;
|
case OP_RJN: if (stack_pop(vm_datastack) != 0) vm_pc += vm_program[vm_pc]; else vm_pc++; vm_cycles++; break;
|
||||||
case OP_RBZ: if (stack_pop(vm_datastack) == 0) vm_pc -= vm_program[vm_pc]+1; vm_cycles++; break;
|
case OP_RBZ: if (stack_pop(vm_datastack) == 0) vm_pc -= vm_program[vm_pc] + 1; else vm_pc++; vm_cycles++; break;
|
||||||
case OP_RBN: if (stack_pop(vm_datastack) != 0) vm_pc -= vm_program[vm_pc]+1; vm_cycles++; break;
|
case OP_RBN: if (stack_pop(vm_datastack) != 0) vm_pc -= vm_program[vm_pc] + 1; else vm_pc++; vm_cycles++; break;
|
||||||
case OP_RJYZ: if (rY == 0) vm_pc += vm_program[vm_pc]; vm_cycles++; break;
|
case OP_RJYZ: if (rY == 0) vm_pc += vm_program[vm_pc]; else vm_pc++; vm_cycles++; break;
|
||||||
case OP_RJYN: if (rY != 0) vm_pc += vm_program[vm_pc]; vm_cycles++; break;
|
case OP_RJYN: if (rY != 0) vm_pc += vm_program[vm_pc]; else vm_pc++; vm_cycles++; break;
|
||||||
case OP_RBYZ: if (rY == 0) vm_pc -= vm_program[vm_pc]+1; vm_cycles++; break;
|
case OP_RBYZ: if (rY == 0) vm_pc -= vm_program[vm_pc] + 1; else vm_pc++; vm_cycles++; break;
|
||||||
case OP_RBYN: if (rY != 0) vm_pc -= vm_program[vm_pc]+1; vm_cycles++; break;
|
case OP_RBYN: if (rY != 0) vm_pc -= vm_program[vm_pc] + 1; else vm_pc++; vm_cycles++; break;
|
||||||
case OP_RJZZ: if (rZ == 0) vm_pc += vm_program[vm_pc]; vm_cycles++; break;
|
case OP_RJZZ: if (rZ == 0) vm_pc += vm_program[vm_pc]; else vm_pc++; vm_cycles++; break;
|
||||||
case OP_RJZN: if (rZ != 0) vm_pc += vm_program[vm_pc]; vm_cycles++; break;
|
case OP_RJZN: if (rZ != 0) vm_pc += vm_program[vm_pc]; else vm_pc++; vm_cycles++; break;
|
||||||
case OP_RBZZ: if (rZ == 0) vm_pc -= vm_program[vm_pc]+1; vm_cycles++; break;
|
case OP_RBZZ: if (rZ == 0) vm_pc -= vm_program[vm_pc] + 1; else vm_pc++; vm_cycles++; break;
|
||||||
case OP_RBZN: if (rZ != 0) vm_pc -= vm_program[vm_pc]+1; vm_cycles++; break;
|
case OP_RBZN: if (rZ != 0) vm_pc -= vm_program[vm_pc] + 1; else vm_pc++; vm_cycles++; break;
|
||||||
case OP_ADD: stack_push(vm_datastack, stack_pop(vm_datastack) + stack_pop(vm_datastack)); vm_cycles++; break;
|
case OP_ADD: stack_push(vm_datastack, stack_pop(vm_datastack) + stack_pop(vm_datastack)); vm_cycles++; break;
|
||||||
case OP_SUB: stack_push(vm_datastack, stack_pop(vm_datastack) - stack_pop(vm_datastack)); vm_cycles++; break;
|
case OP_SUB: stack_push(vm_datastack, stack_pop(vm_datastack) - stack_pop(vm_datastack)); vm_cycles++; break;
|
||||||
case OP_MUL: stack_push(vm_datastack, stack_pop(vm_datastack) * stack_pop(vm_datastack)); vm_cycles++; break;
|
case OP_MUL: stack_push(vm_datastack, stack_pop(vm_datastack) * stack_pop(vm_datastack)); vm_cycles++; break;
|
||||||
|
|||||||
Reference in New Issue
Block a user