From 617a6317886551eae95f0e117da6428016db5c09 Mon Sep 17 00:00:00 2001 From: Wei-ju Wu Date: Tue, 20 Sep 2016 12:39:18 -0700 Subject: [PATCH] added playfield1 program to hardware --- hardware/Makefile | 7 +- hardware/playfield1.c | 149 +++++++++++++++++++++++++++++ hardware/test-320x200.h | 204 ++++++++++++++++++++++++++++++++++++++++ 3 files changed, 358 insertions(+), 2 deletions(-) create mode 100644 hardware/playfield1.c create mode 100644 hardware/test-320x200.h diff --git a/hardware/Makefile b/hardware/Makefile index ad82673..be7b933 100644 --- a/hardware/Makefile +++ b/hardware/Makefile @@ -1,13 +1,16 @@ CC=vc +kick13 CFLAGS=-c99 -I$(NDK_INC) -DDEBUG -O2 -all: startup sprites +all: startup sprites playfield1 clean: - rm -f *.o startup sprites + rm -f *.o startup sprites playfield1 startup: startup.o $(CC) $(CFLAGS) $^ -lamiga -lauto -o $@ sprites: sprites.o $(CC) $(CFLAGS) $^ -lamiga -lauto -o $@ + +playfield1: playfield1.o + $(CC) $(CFLAGS) $^ -lamiga -lauto -o $@ diff --git a/hardware/playfield1.c b/hardware/playfield1.c new file mode 100644 index 0000000..5b1082b --- /dev/null +++ b/hardware/playfield1.c @@ -0,0 +1,149 @@ +#include +#include + +#include +#include +#include +#include +#include +#include +#include + +#include "test-320x200.h" + +/* + * A simple setup to display a playfield with a depth of 1 bit. + */ +extern struct Custom custom; +extern struct CIA ciaa, ciab; +extern struct Library *GfxBase; + +// VBCC Inline assembly +void waitmouse(void) = "waitmouse:\n\tbtst\t#6,$bfe001\n\tbne\twaitmouse"; + +#define EXEC_BASE (4L) +#define TASK_PRIORITY 127 +#define VFREQ_PAL 50 +#define WB_SCREEN_NAME "Workbench" + +#define BPLCON0 0x100 +#define COLOR00 0x180 +#define SPR0PTH 0x120 +#define SPR0PTL 0x122 +#define BPL1PTH 0x0e0 +#define BPL1PTL 0x0e2 + + +#define BPLCON0_COLOR (1 << 9) + +#define COLOR0 0x00a +#define COLOR1 0xfff + +#define COP_MOVE(addr, data) addr, data +#define COP_WAIT_END 0xffff, 0xfffe + +static UWORD __chip coplist[] = { + COP_MOVE(BPL1PTH, 0), + COP_MOVE(BPL1PTL, 0), + COP_WAIT_END, + COP_WAIT_END +}; + +static struct Screen *wbscreen; +static ULONG oldresolution; + +static void ApplySpriteFix(void) +{ + if (wbscreen = LockPubScreen(WB_SCREEN_NAME)) { + struct TagItem video_control_tags[] = { + {VTAG_SPRITERESN_GET, SPRITERESN_ECS}, + {TAG_DONE, 0} + }; + struct TagItem video_control_tags2[] = { + {VTAG_SPRITERESN_SET, SPRITERESN_140NS}, + {TAG_DONE, 0} + }; + VideoControl(wbscreen->ViewPort.ColorMap, video_control_tags); + oldresolution = video_control_tags[0].ti_Data; + VideoControl(wbscreen->ViewPort.ColorMap, video_control_tags2); + MakeScreen(wbscreen); + RethinkDisplay(); + } +} + +static void UnapplySpriteFix(void) +{ + if (wbscreen) { + struct TagItem video_control_tags[] = { + {VTAG_SPRITERESN_SET, oldresolution}, + {TAG_DONE, 0} + }; + VideoControl(wbscreen->ViewPort.ColorMap, video_control_tags); + MakeScreen(wbscreen); + UnlockPubScreen(NULL, wbscreen); + } +} + +static BOOL init_display(UWORD lib_version) +{ + BOOL is_pal; + + LoadView(NULL); // clear display, reset hardware registers + WaitTOF(); // 2 WaitTOFs to wait for 1. long frame and + WaitTOF(); // 2. short frame copper lists to finish (if interlaced) + + // Kickstart > 3.0: fix sprite bug + if (lib_version >= 39) { + ApplySpriteFix(); + is_pal = (((struct GfxBase *) GfxBase)->DisplayFlags & PAL) == PAL; + } else { + // Note: FS-UAE reports 0 this, so essentially, there is no information + // for 1.x + printf("PAL/NTSC: %d\n", (int) ((struct ExecBase *) EXEC_BASE)->VBlankFrequency); + is_pal = ((struct ExecBase *) EXEC_BASE)->VBlankFrequency == VFREQ_PAL; + } + return is_pal; +} + +static void reset_display(struct View *current_view, UWORD lib_version) +{ + if (lib_version >= 39) UnapplySpriteFix(); + LoadView(current_view); + WaitTOF(); + WaitTOF(); + custom.cop1lc = (ULONG) ((struct GfxBase *) GfxBase)->copinit; + RethinkDisplay(); +} + +int main(int argc, char **argv) +{ + // translated startup.asm + struct Task *current_task = FindTask(NULL); + BYTE old_prio = SetTaskPri(current_task, TASK_PRIORITY); + struct View *current_view = ((struct GfxBase *) GfxBase)->ActiView; + UWORD lib_version = ((struct Library *) GfxBase)->lib_Version; + + BOOL is_pal = init_display(lib_version); + + custom.bplcon0 = 0x1200; // use bitplane 1 = BPU 001, composite color enable + custom.bplcon1 = 0; // horizontal scroll value = 0 for all playfields + custom.bpl1mod = 0; // modulo = 0 for odd bitplanes + custom.ddfstrt = 0x0038; + custom.ddfstop = 0x00d0; + custom.diwstrt = 0x2c81; + custom.diwstop = 0xf4c1; + custom.color[0] = COLOR0; // background red + custom.color[1] = COLOR1; // color 1 is yellow + + // Initialize copper list with image data address + coplist[1] = (((ULONG) imdata) >> 16) & 0xffff; + coplist[3] = ((ULONG) imdata) & 0xffff; + + // and point to the copper list + custom.cop1lc = (ULONG) coplist; + + waitmouse(); + + reset_display(current_view, lib_version); + return 0; +} diff --git a/hardware/test-320x200.h b/hardware/test-320x200.h new file mode 100644 index 0000000..555d369 --- /dev/null +++ b/hardware/test-320x200.h @@ -0,0 +1,204 @@ +/* Ensure that this data is within chip memory or you'll see nothing !!! */ +UWORD __chip imdata[] = { + // plane 0 + 0xe000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x007f,0xffff, + 0xf800,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x00ff,0xffff, + 0xfe00,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x03ff,0xffff, + 0xff00,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x07ff,0xffff, + 0xff80,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x07ff,0xffff, + 0xffe0,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0fff,0xffff, + 0xfff0,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0fff,0xffff, + 0xfff8,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0fff,0xf1ff, + 0xfffc,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0fff,0xe03f, + 0xfffe,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x07ff,0xe003, + 0xffff,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x07ff,0xe000, + 0xffff,0x8000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x07ff,0xe000, + 0xffff,0xc000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x03ff,0xf000, + 0xffff,0xf000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x7fff,0xffff,0xffff,0x8000,0x03ff,0xf800, + 0xffff,0xf800,0x001f,0xffff,0xffff,0xff80,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0003,0xffff,0xffff,0xffff,0xf000,0x01ff,0xf800, + 0xffff,0xfc00,0x00ff,0xffff,0xffff,0xffe0,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x000f,0xffff,0xffff,0xffff,0xfc00,0x01ff,0xfc00, + 0xffff,0xff00,0x3fff,0xffff,0xffff,0xffff,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x1fff,0xffff,0xffff,0xffff,0xfff8,0x00ff,0xfc00, + 0xf9ff,0xff80,0xffff,0xffff,0xffff,0xffff,0xe000,0x0000,0x0000,0x000f,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xc07f,0xfe00, + 0xf8ff,0xffc3,0xffff,0xffff,0xffff,0xffff,0xf800,0x0000,0x007f,0xf0ff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xf87f,0xfe00, + 0xf87f,0xffff,0xffff,0xffff,0xffff,0xffff,0xfe00,0x0000,0x0fff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xfe7f,0xfe00, + 0xfc1f,0xffff,0xffff,0xffff,0xffff,0xffff,0xffc0,0x001f,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xff00, + 0xfc0f,0xffff,0xffff,0xffff,0xffff,0xffff,0xffe0,0x00ff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xff00, + 0xfc07,0xffff,0xffff,0xffff,0xffff,0xffff,0xfff0,0x07ff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xff00, + 0xfe01,0xffff,0xffff,0xc000,0x0000,0x3fff,0xfffe,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xe000,0x0000,0x0001,0xffff,0xffff,0xff00, + 0xfe01,0xffff,0xfffc,0x0000,0x0000,0x03ff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0x0000,0x0000,0x0000,0x3fff,0xffff,0xff00, + 0xff00,0xffff,0xffe0,0x0000,0x0000,0x00ff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xfffc,0x0000,0x0000,0x0000,0x0fff,0xffff,0xff00, + 0xff01,0xffff,0xff00,0x0000,0x0000,0x003f,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffe0,0x0000,0x0000,0x0000,0x01ff,0xffff,0xff01, + 0xff87,0xffff,0xfe00,0x0000,0x0000,0x0001,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xfc00,0x0000,0x0000,0x0000,0x0000,0x0001,0xffff,0xff01, + 0xffff,0xffff,0xff00,0x0000,0x0000,0x0001,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xfe00,0x0000,0x0000,0x0000,0x0000,0x0000,0x7fff,0xff01, + 0xffff,0xffff,0xff80,0x0000,0x0000,0x0001,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xff80,0x0000,0x0000,0x0000,0x0000,0x0000,0x1fff,0xff03, + 0xffff,0xffff,0xffe0,0x0000,0x0000,0x001f,0xffff,0xffff,0xfc00,0x0001,0xffff,0xffff,0xfffe,0x0000,0x0000,0x0000,0x0000,0x0000,0x00ff,0xff03, + 0xffff,0xffff,0xfff0,0x0000,0x0000,0x007f,0xffff,0xffff,0xc000,0x0000,0x07ff,0xffff,0xffff,0xc000,0x0000,0x0000,0x0000,0x0000,0x003f,0xfe07, + 0xffff,0xffff,0xfff8,0x0000,0x0000,0x01ff,0xffff,0xfffc,0x0000,0x0000,0x0007,0xffff,0xffff,0xf800,0x0000,0x0000,0x0000,0x0000,0x001f,0xfc07, + 0xffff,0xffff,0xfffe,0x0000,0x0000,0x07ff,0xffff,0xfff0,0x0000,0x0000,0x0000,0x3fff,0xffff,0xfe00,0x0000,0x0000,0x0000,0x0000,0x000f,0xfc07, + 0xffff,0xfe07,0xffff,0x8000,0x0000,0x7fff,0xffff,0xff80,0x0000,0x0000,0x0000,0x007f,0xffff,0xffe0,0x0000,0x0000,0x0000,0x0000,0x0000,0x000f, + 0xffff,0xf801,0xffff,0xc000,0x0003,0xffff,0xffff,0xff80,0x0000,0x0000,0x0000,0x000f,0xffff,0xfff8,0x0000,0x0000,0x0000,0x0000,0x0000,0x000f, + 0xffff,0xf000,0xffff,0xe000,0x003f,0xffff,0xffff,0xff00,0x0000,0x0000,0x0000,0x0007,0xffff,0xfffc,0x0000,0x0000,0x0000,0x0000,0x0000,0x000f, + 0xffff,0xc000,0x7fff,0xf000,0x07ff,0xffff,0xffff,0xff00,0x0000,0x0000,0x0000,0x0001,0xffff,0xfffe,0x0000,0x0000,0x0000,0x0000,0x0000,0x000f, + 0x3ffe,0x0000,0x1fff,0xfe07,0xffff,0xffff,0xf8ff,0xfe00,0x0000,0x0000,0x0000,0x0000,0x1fff,0xffff,0xc000,0x0000,0x0000,0x0000,0x0000,0x001f, + 0x1ff8,0x0000,0x0fff,0xffff,0xffff,0xffff,0xc07f,0xfe00,0x0000,0x0000,0x0000,0x0000,0x01ff,0xffff,0xe000,0x0000,0x0000,0x0000,0x0000,0x001f, + 0x0fe0,0x0000,0x07ff,0xffff,0xffff,0xffff,0x803f,0xfc00,0x0000,0x0000,0x0000,0x0000,0x003f,0xffff,0xf000,0x0000,0x0000,0x0000,0x0000,0x001f, + 0x0000,0x0000,0x01ff,0xffff,0xffff,0xfff0,0x000f,0xf000,0x0000,0x0000,0x0000,0x0000,0x0000,0xffff,0xfc00,0x0000,0x0000,0x0000,0x0000,0x003f, + 0x0000,0x0000,0x007f,0xffff,0xffff,0xffc0,0x0007,0xc000,0x0000,0x0000,0x0000,0x0000,0x0000,0x3fff,0xfe00,0x0000,0x0000,0x0000,0x0000,0x003f, + 0x0000,0x0000,0x003f,0xffff,0xffff,0xff00,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0fff,0xfe00,0x0000,0x0000,0x0000,0x0000,0x003f, + 0x0000,0x0000,0x001f,0xffff,0xffff,0xfc00,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x03ff,0xff00,0x0000,0x0000,0x0000,0x0000,0x007f, + 0x0000,0x0000,0x0007,0xffff,0xffff,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x00ff,0xffc0,0x0000,0x0000,0x0000,0x0000,0x00ff, + 0x0000,0x0000,0x0001,0xffff,0xfff0,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x007f,0xffc0,0x0000,0x0000,0x0000,0x0000,0x00ff, + 0x0000,0x0000,0x0000,0xffff,0xfe00,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x003f,0xffe0,0x0000,0x0000,0x0000,0x0000,0x00ff, + 0x0000,0x0000,0x0000,0x1fff,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x000f,0xfff0,0x0000,0x0000,0x0000,0x0000,0x01ff, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0007,0xfff8,0x0000,0x0000,0x0000,0x0000,0x03ff, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0003,0xfff8,0x0000,0x0000,0x0000,0x0000,0x03ff, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0003,0xfffc,0x0000,0x0000,0x0000,0x0000,0x03ff, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x000f,0xe000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0xfffe,0x0000,0x0000,0x0000,0x0000,0x07ff, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x003f,0xf800,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0xffff,0x0000,0x0000,0x0000,0x0000,0x07ff, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x007f,0xfe00,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x7fff,0x0000,0x0000,0x0000,0x0000,0x0fff, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x03ff,0xffc0,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x3fff,0x8000,0x0000,0x0000,0x0000,0x0fff, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x07ff,0xffe0,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x1fff,0x8000,0x0000,0x0000,0x0000,0x0fff, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x0fff,0xfff8,0x0000,0x0000,0x0000,0x0000,0x1fe0,0x0000,0x0000,0x1fff,0xc000,0x0000,0x0000,0x0000,0x0fff, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x1fff,0xfffc,0x0000,0x0000,0x0000,0x0000,0xfff8,0x0000,0x0000,0x0fff,0xc000,0x0000,0x0000,0x0000,0x0fff, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x3fff,0xffff,0x8000,0x0000,0x0000,0x001f,0xfffe,0x0000,0x0000,0x07ff,0xe000,0x0000,0x0000,0x0000,0x1fff, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x7fff,0xffff,0xc000,0x0000,0x0000,0x00ff,0xfffe,0x0000,0x0000,0x07ff,0xe000,0x0000,0x0000,0x0000,0x1fff, + 0x0000,0x0000,0x0000,0x0000,0x0000,0xffff,0xffff,0xe000,0x0000,0x0000,0x07ff,0xffff,0x0000,0x0000,0x03ff,0xf000,0x0000,0x0000,0x0000,0x1fff, + 0x0000,0x0000,0x0000,0x0000,0x0000,0xffff,0xffff,0xf000,0x0000,0x0001,0xffff,0xffff,0x0000,0x0000,0x03ff,0xf000,0x0000,0x0000,0x0000,0x1fff, + 0x0000,0x0000,0x0000,0x0000,0x0001,0xfffc,0x3fff,0xfc00,0x0000,0x001f,0xffff,0xfffe,0x0000,0x0000,0x01ff,0xf800,0x0000,0x0000,0x0000,0x3fff, + 0x0000,0x0000,0x0000,0x0000,0x0001,0xfff8,0x1fff,0xfe00,0x0000,0x01ff,0xffff,0xfffc,0x0000,0x0000,0x01ff,0xf800,0x0000,0x0000,0x0000,0x3fff, + 0x0000,0x0000,0x0000,0x0000,0x0001,0xfff8,0x07ff,0xff00,0x003f,0xffff,0xffff,0xfff8,0x0000,0x0000,0x01ff,0xf800,0x0000,0x0000,0x0000,0x7fff, + 0x0000,0x0000,0x0000,0x0000,0x0003,0xffe0,0x00ff,0xffe0,0x0fff,0xffff,0xffff,0xff00,0x0000,0x0000,0x00ff,0xfc00,0x0000,0x0000,0x0000,0x7ffe, + 0x0000,0x0000,0x0000,0x0000,0x0003,0xffe0,0x00ff,0xffff,0xffff,0xffff,0xffff,0xf800,0x0000,0x0000,0x007f,0xfc00,0x0000,0x0000,0x0000,0xfffc, + 0x0000,0x0000,0x0000,0x0000,0x0003,0xffe0,0x00ff,0xffff,0xffff,0xffff,0xffff,0xc000,0x0000,0x0000,0x007f,0xfc00,0x0000,0x0000,0x0000,0xfffc, + 0x0000,0x0000,0x0000,0x0000,0x0003,0xffe0,0x01ff,0xffff,0xffff,0xffff,0xfffe,0x0000,0x0000,0x0000,0x007f,0xfc00,0x0000,0x0000,0x0001,0xfff8, + 0x0000,0x0000,0x0000,0x07ff,0xf80f,0xfff9,0xffff,0xffff,0xffff,0xffff,0xff80,0x0000,0x0000,0x0000,0x007f,0xfc00,0x0000,0x0000,0x0003,0xfff8, + 0x0000,0x0000,0x0000,0x0fff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xf000,0x0000,0x0000,0x0000,0x003f,0xfc00,0x0000,0x0000,0x0003,0xfff0, + 0x0000,0x0000,0x0000,0x1fff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0x8000,0x0000,0x0000,0x0000,0x003f,0xfc00,0x0000,0x0000,0x0007,0xfff0, + 0x0000,0x0000,0x0000,0x3fff,0xffff,0xffff,0xffff,0xffff,0xffff,0xfff8,0x0000,0x0000,0x0000,0x0000,0x003f,0xfc00,0x0000,0x0000,0x0007,0xffe0, + 0x0000,0x0000,0x0000,0x3fff,0xffff,0xffff,0xffff,0xffff,0xfffe,0x0000,0x0000,0x0000,0x0000,0x0000,0x003f,0xfc00,0x0000,0x0000,0x000f,0xffc0, + 0x0000,0x0000,0x0000,0x3fff,0xffff,0xffff,0xffff,0xffff,0xffe0,0x0000,0x0000,0x0000,0x0000,0x0000,0x003f,0xfc00,0x0000,0x0000,0x000f,0xffc0, + 0x0000,0x0000,0x0000,0x3fff,0xffff,0xffff,0xffff,0xffff,0xffc0,0x0000,0x0000,0x0000,0x0000,0x0000,0x003f,0xfc00,0x0000,0x0000,0x000f,0xffc0, + 0x0000,0x0000,0x0000,0x1fff,0xffff,0xffff,0xfffe,0x0fff,0xffc0,0x0000,0x0000,0x0000,0x0000,0x0000,0x003f,0xfc00,0x0000,0x0000,0x001f,0xff80, + 0x0000,0x0000,0x0000,0x0fff,0xffff,0xffff,0xfff0,0x01ff,0xffe0,0x0000,0x0000,0x0000,0x0000,0x0000,0x003f,0xfc00,0x0000,0x0000,0x001f,0xff80, + 0x0000,0x0000,0x0000,0x07ff,0xffff,0xffff,0xffe0,0x007f,0xffe0,0x0000,0x0000,0x0000,0x0000,0x0000,0x003f,0xfc00,0x0000,0x0000,0x001f,0xff00, + 0x0000,0x0000,0x0000,0x007f,0xffff,0xffff,0xfff8,0x000f,0xfff8,0x0000,0x0000,0x0000,0x0000,0x0000,0x003f,0xfc00,0x0000,0x0000,0x003f,0xff00, + 0x0000,0x0000,0x0000,0x0003,0xffff,0xffff,0xfffc,0x0007,0xfffc,0x0000,0x0000,0x0000,0x0000,0x0000,0x007f,0xfc00,0x0000,0x0000,0x003f,0xfe00, + 0x0000,0x0000,0x0000,0x0000,0xffff,0xffff,0xfffc,0x0003,0xfffe,0x0000,0x0000,0x0000,0x0000,0x0000,0x007f,0xfc00,0x0000,0x0000,0x003f,0xfe00, + 0x0000,0x0000,0x0000,0x0000,0x3fff,0xffff,0xfffe,0x0001,0xffff,0x0000,0x0000,0x0000,0x0000,0x0000,0x007f,0xfc00,0x0000,0x0000,0x003f,0xfe00, + 0x0000,0x0000,0x0000,0x0000,0x0fff,0xffff,0xfffc,0x0000,0x7fff,0xc000,0x0000,0x0000,0x0000,0x0000,0x007f,0xfc00,0x0000,0x0000,0x003f,0xfe00, + 0x0000,0x0000,0x0000,0x0000,0x03ff,0xffff,0xfffc,0x0000,0x3fff,0xe000,0x0000,0x0000,0x0000,0x0000,0x00ff,0xfc00,0x0000,0x0000,0x003f,0xfc00, + 0x0000,0x0000,0x0000,0x0000,0x01ff,0xffff,0xfffc,0x0000,0x1fff,0xf000,0x0000,0x0000,0x0000,0x0000,0x00ff,0xfc00,0x0000,0x0000,0x003f,0xfc00, + 0x0000,0x0000,0x0000,0x0000,0x003f,0xffff,0xfff8,0x0000,0x1fff,0xf800,0x0000,0x0000,0x0000,0x0000,0x00ff,0xfc00,0x0000,0x0000,0x007f,0xfc00, + 0x0000,0x0000,0x0000,0x0000,0x0001,0xffff,0xfff8,0x0000,0x07ff,0xfe00,0x0000,0x0000,0x0000,0x0000,0x01ff,0xf800,0x0000,0x0000,0x007f,0xfc00, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x7fff,0xfffc,0x0000,0x03ff,0xff00,0x0000,0x0000,0x0000,0x0000,0x01ff,0xf000,0x0000,0x0000,0x007f,0xfc00, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x1fff,0xffff,0x8000,0x01ff,0xff80,0x0000,0x0000,0x0000,0x0000,0x01ff,0xf000,0x0000,0x0000,0x00ff,0xfc00, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x01ff,0xffff,0xff00,0x007f,0xffe0,0x0000,0x0000,0x0000,0x0000,0x01ff,0xf000,0x0000,0x0000,0x01ff,0xfc00, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x007f,0xffff,0xffe0,0x003f,0xfff0,0x0000,0x0000,0x0000,0x0000,0x01ff,0xf000,0x0000,0x0000,0x01ff,0xfc00, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x001f,0xffff,0xfffe,0x001f,0xfff8,0x0000,0x0000,0x0000,0x0000,0x01ff,0xe000,0x0000,0x0000,0x03ff,0xf800, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x0007,0xffff,0xffff,0xc00f,0xfffc,0x0000,0x0000,0x0000,0x0000,0x03ff,0xe000,0x0000,0x0000,0x03ff,0xf800, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x7fff,0xffff,0xffef,0xfffe,0x0000,0x0060,0x0000,0x0000,0x03ff,0xe000,0x0000,0x0000,0x07ff,0xe000, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x1fff,0xffff,0xffff,0xffff,0x0000,0x03fc,0x0000,0x0000,0x03ff,0xe000,0x0000,0x0000,0x07ff,0xe000, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x07ff,0xffff,0xffff,0xffff,0x8000,0x0fff,0x0000,0x0000,0x03ff,0xe000,0x0000,0x0000,0x07ff,0xc000, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x003f,0xffff,0xffff,0xffff,0xc000,0x3fff,0xe000,0x0000,0x07ff,0xe000,0x0000,0x0000,0x07ff,0xc000, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0007,0xffff,0xffff,0xffff,0xe000,0x7fff,0xf800,0x0000,0x0fff,0xc000,0x0000,0x0000,0x07ff,0xc000, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x7fff,0xffff,0xffff,0xf000,0xffff,0xfc00,0x0000,0x0fff,0xc000,0x0000,0x0000,0x07ff,0xc000, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x07ff,0xffff,0xffff,0xf801,0xffff,0xff00,0x0000,0x0fff,0xc000,0x0000,0x0000,0x07ff,0x8000, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x001f,0xffff,0xffff,0xfc03,0xffff,0xffc0,0x0000,0x1fff,0x8000,0x0000,0x0000,0x07ff,0x8000, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0001,0xffff,0xffff,0xff03,0xffff,0xffc0,0x0000,0x3fff,0x0000,0x0000,0x0000,0x07ff,0x8000, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x1fff,0xffff,0xff87,0xffff,0xffe0,0x0000,0x3fff,0x0000,0x0000,0x0000,0x07ff,0x8000, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x003f,0xffff,0xffff,0xffff,0xfff0,0x0000,0x7ffe,0x0000,0x0000,0x0000,0x07ff,0x8000, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x000f,0xffff,0xffff,0xffff,0xfff8,0x0000,0x7ffe,0x0000,0x0000,0x0000,0x07ff,0x8000, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0001,0xffff,0xffff,0xffff,0xfff8,0x0000,0xfffc,0x0000,0x0000,0x0000,0x07ff,0x8000, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x7fff,0xffff,0xffc7,0xfffc,0x0000,0xfffc,0x0000,0x0000,0x0000,0x07ff,0x8000, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x03e0,0x0000,0x0000,0x0000,0x07ff,0xffff,0xffff,0xfffe,0x0001,0xfff8,0x0000,0x0000,0x0000,0x07ff,0x8000, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x7ffc,0x0000,0x0000,0x0000,0x007f,0xffff,0xffff,0xffff,0x0001,0xfff8,0x0000,0x0000,0x0000,0x07ff,0x8000, + 0x0000,0x0000,0x0000,0x0000,0x0003,0xffff,0x0000,0x0000,0x0000,0x001f,0xffff,0xffff,0xffff,0x8003,0xfff0,0x0000,0x0000,0x0000,0x07ff,0x8000, + 0x0000,0x0000,0x0000,0x0000,0x000f,0xffff,0xc000,0x0000,0x0000,0x0007,0xffff,0xffff,0xffff,0xc003,0xfff0,0x0000,0x0000,0x0000,0x07ff,0x8000, + 0x0000,0x0000,0x0000,0x0000,0x003f,0xffff,0xf000,0x0000,0x0000,0x0000,0xffff,0xffff,0xffff,0xf80f,0xffe0,0x0000,0x0000,0x0000,0x0fff,0x8000, + 0x0000,0x0000,0x0000,0x0000,0x007f,0xffff,0xf800,0x0000,0x0000,0x0000,0x7fff,0xffff,0xffff,0xfc0f,0xffe0,0x0000,0x0000,0x0000,0x0fff,0x8000, + 0x0000,0x0000,0x0000,0x0000,0x00ff,0xffff,0xfc00,0x0000,0x0000,0x0000,0x3fff,0xffff,0xffff,0xfe1f,0xffc0,0x0000,0x0000,0x0000,0x0fff,0x8000, + 0x0000,0x0000,0x0000,0x0000,0x00ff,0xffff,0xff00,0x0000,0x0000,0x0000,0x1fff,0xffff,0xffff,0xffff,0xff80,0x0000,0x0000,0x0000,0x0fff,0x8000, + 0x0000,0x0000,0x0000,0x0000,0x01ff,0xffff,0xff80,0x0000,0x0000,0x0000,0x0fff,0xffff,0xffff,0xffff,0xff80,0x0000,0x0000,0x0000,0x1fff,0x8000, + 0x0000,0x0000,0x0000,0x0000,0x01ff,0xffff,0xffc0,0x0000,0x0000,0x0000,0x07ff,0xffff,0xffff,0xffff,0xff00,0x0000,0x0000,0x0000,0x1fff,0x8000, + 0x0000,0x0000,0x0000,0x0000,0x01ff,0xffff,0xffc0,0x0000,0x0000,0x0000,0x03ff,0xf07f,0xffff,0xffff,0xfe00,0x0000,0x0000,0x0000,0x1fff,0x0000, + 0x0000,0x0000,0x0000,0x0000,0x00ff,0xffff,0xfff0,0x0000,0x0000,0x0000,0x01ff,0xe003,0xffff,0xffff,0xfc00,0x0000,0x0000,0x0000,0x1fff,0x0000, + 0x0000,0x0000,0x0000,0x0000,0x00ff,0xffff,0xfff0,0x0000,0x0000,0x0000,0x007f,0x8000,0xffff,0xffff,0xf800,0x0000,0x0000,0x0000,0x1fff,0x0000, + 0x0000,0x0000,0x0000,0x0000,0x007f,0xffff,0xfff8,0x0000,0x0000,0x0000,0x001f,0x0000,0x3fff,0xffff,0xf000,0x0000,0x0000,0x0000,0x1fff,0x0000, + 0x0000,0x0000,0x0000,0x0000,0x001f,0xffff,0xfffc,0x0000,0x0000,0x0000,0x0000,0x0001,0xffff,0xffff,0xc000,0x0000,0x0000,0x0000,0x1ffe,0x0000, + 0x0000,0x0000,0x0000,0x0000,0x000f,0xffff,0xfffe,0x0000,0x0000,0x0000,0x0003,0xffff,0xffff,0xffff,0xe000,0x0000,0x0000,0x0000,0x3ffe,0x0000, + 0x0000,0x0000,0x0000,0x0000,0x0003,0xffff,0xfffe,0x0000,0x0000,0x0000,0x001f,0xffff,0xffff,0xffff,0xf000,0x0000,0x0000,0x0000,0x3ffe,0x0000, + 0x0000,0x0000,0x0000,0x0000,0x0001,0xffff,0xffff,0x0000,0x0000,0x0000,0x007f,0xffff,0xffff,0xffff,0xf800,0x0000,0x0000,0x0000,0x3ffe,0x0000, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x3fff,0xffff,0x8000,0x0007,0xffff,0xffff,0xffff,0xffff,0xffff,0xfc00,0x0000,0x0000,0x0000,0x3ffe,0x0000, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x1fff,0xffff,0xc000,0x003f,0xffff,0xffff,0xffff,0xffff,0xffff,0xfe00,0x0000,0x0000,0x0000,0x7ffe,0x0000, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x07ff,0xffff,0xf000,0x07ff,0xffff,0xffff,0xffff,0xffff,0xffff,0xff00,0x0000,0x0000,0x0000,0x7ffe,0x0000, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x01ff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xfff8,0x0fff,0xff80,0x0000,0x0000,0x0000,0x7ffc,0x0000, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x007f,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffe0,0x03ff,0xffc0,0x0000,0x0000,0x0000,0x7ffc,0x0000, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x001f,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xff80,0x00ff,0xffe0,0x0000,0x0000,0x0000,0x7ffc,0x0000, + 0x0000,0x0000,0x0000,0x0000,0x0000,0x0007,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xfe00,0x007f,0xffe0,0x0000,0x0000,0x0000,0x7ffc,0x0000, + 0x0000,0x7e00,0x0000,0x0000,0x0000,0x0000,0x7fff,0xffff,0xffff,0xffff,0xffff,0x8000,0x0000,0x001f,0xfff0,0x0000,0x0000,0x0000,0xfff8,0x0000, + 0x0000,0xff00,0x0000,0x0000,0x0000,0x0000,0x3fff,0xffff,0xffff,0xffff,0xfffc,0x0000,0x0000,0x000f,0xfff8,0x0000,0x0000,0x0000,0xfff8,0x0000, + 0x0001,0xff80,0x0000,0x0000,0x0000,0x0000,0x1fff,0xffff,0xffff,0xffff,0xfff0,0x0000,0x0000,0x0007,0xfffc,0x0000,0x0000,0x0000,0xfff8,0x0000, + 0x0003,0xffc0,0x0000,0x0000,0x0000,0x0000,0x0fff,0xffff,0xffff,0xf000,0x0000,0x0000,0x0000,0x0007,0xfffc,0x0000,0x0000,0x0000,0xfff8,0x0000, + 0x0003,0xffc0,0x0000,0x0000,0x0000,0x0000,0x03ff,0xffff,0xfff0,0x0000,0x0000,0x0000,0x0000,0x0001,0xfffe,0x0000,0x0000,0x0001,0xfff8,0x0000, + 0x0003,0xffc0,0x0000,0x0000,0x0000,0x0000,0x00ff,0xfffe,0x0000,0x0000,0x0000,0x0000,0x0000,0x0001,0xfffe,0x0000,0x0000,0x0001,0xfff0,0x0000, + 0x0003,0xffc0,0x0000,0x0000,0x0000,0x0000,0x007f,0xfffc,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0xffff,0x0000,0x0000,0x0001,0xfff0,0x0000, + 0x0003,0xffc0,0x0000,0x0000,0x0000,0x0000,0x001f,0xfffe,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x7fff,0x0000,0x0000,0x0001,0xfff0,0x0000, + 0x0003,0xffc0,0x0000,0x0000,0x0000,0x0000,0x0007,0xffff,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x3fff,0x0000,0x0000,0x0001,0xfff0,0x0000, + 0x0003,0xffc0,0x0000,0x0000,0x0000,0x0000,0x0003,0xffff,0x8000,0x0000,0x0000,0x0000,0x0000,0x0000,0x3ffe,0x0000,0x0000,0x0001,0xfff0,0x0000, + 0x0003,0xffc0,0x0000,0x0000,0x0000,0x0000,0x0001,0xffff,0xc000,0x0000,0x0000,0x0000,0x0000,0x0000,0x1ffe,0x0000,0x0000,0x0001,0xffe0,0x0000, + 0x0003,0xffc0,0x0000,0x0000,0x0000,0x0000,0x0000,0x7fff,0xf000,0x0000,0x0000,0x0000,0x0000,0x0000,0x07f8,0x0000,0x0000,0x0001,0xffe0,0x0000, + 0x0003,0xffc0,0x0000,0x0000,0x0000,0x0000,0x0000,0x3fff,0xf800,0x0000,0x0000,0x0000,0x0000,0x0000,0x01e0,0x0000,0x0000,0x0001,0xffe0,0x0000, + 0x0003,0xffc0,0x0000,0x0000,0x0000,0x0000,0x0000,0x0fff,0xf800,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0001,0xffe0,0x0000, + 0x0007,0xffc0,0x0000,0x0000,0x0000,0x0000,0x0000,0x03ff,0xfe00,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0001,0xffe0,0x0000, + 0x0007,0xffc0,0x0000,0x0000,0x0000,0x0000,0x0000,0x01ff,0xff00,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0001,0xffe0,0x0000, + 0x0007,0xffc0,0x0000,0x0000,0x0000,0x0000,0x0000,0x00ff,0xffc0,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0001,0xffe0,0x0000, + 0x0007,0xffc0,0x0000,0x0000,0x0000,0x0000,0x0000,0x007f,0xffe0,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0001,0xffe0,0x0000, + 0x000f,0xffc0,0x0000,0x0000,0x0000,0x0000,0x0000,0x001f,0xfffc,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0001,0xffe0,0x0000, + 0x000f,0xffc0,0x0000,0x0000,0x0000,0x0000,0x0000,0x001f,0xfffe,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0001,0xffe0,0x0000, + 0x000f,0xffc0,0x0000,0x0000,0x0000,0x0000,0x0000,0x000f,0xffff,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0001,0xffe0,0x0000, + 0x001f,0xff80,0x0000,0x0000,0x0000,0x0000,0x0000,0x0003,0xffff,0xe000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0001,0xfff0,0x0000, + 0x001f,0xff00,0x0000,0x0000,0x0000,0x0000,0x0000,0x0001,0xffff,0xf000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0001,0xfff0,0x0000, + 0x003f,0xff00,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0xffff,0xf800,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0001,0xfff0,0x0000, + 0x003f,0xff00,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x3fff,0xfe00,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0001,0xfff0,0x0000, + 0x007f,0xfe00,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x07ff,0xffc0,0x0000,0x001f,0xf000,0x0000,0x0000,0x0000,0x0000,0x0001,0xfff8,0x0000, + 0x007f,0xfe00,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x03ff,0xffe0,0x0000,0x007f,0xf800,0x0000,0x0000,0x0000,0x0000,0x0001,0xfff8,0x0000, + 0x007f,0xfc00,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x01ff,0xfff0,0x0000,0x01ff,0xfc00,0x0000,0x0000,0x0000,0x0000,0x0000,0xfffc,0x0000, + 0x007f,0xfc00,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x00ff,0xfffc,0x0000,0x07ff,0xfc00,0x0000,0x0000,0x0000,0x0000,0x0000,0xfffc,0x0000, + 0x00ff,0xfc00,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x001f,0xffff,0x0000,0x7fff,0xfe00,0x0000,0x0000,0x0000,0x0000,0x0000,0x7ffe,0x0000, + 0x00ff,0xf800,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x000f,0xffff,0xc000,0xffff,0xfe00,0x0000,0x0000,0x0000,0x0000,0x0000,0x7ffe,0x0000, + 0x01ff,0xf800,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0007,0xffff,0xf007,0xffff,0xfc00,0x0000,0x0000,0x0000,0x0000,0x0000,0x3ffe,0x0000, + 0x01ff,0xf000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0xffff,0xffff,0xffff,0xf800,0x0000,0x0000,0x0000,0x0000,0x0000,0x3ffe,0x0000, + 0x03ff,0xf000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x3fff,0xffff,0xffff,0xe000,0x0000,0x0000,0x0000,0x0000,0x0000,0x3fff,0x0000, + 0x03ff,0xf000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x1fff,0xffff,0xffff,0xc000,0x0000,0x0000,0x0000,0x0000,0x0000,0x1fff,0x0000, + 0x07ff,0xe000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0fff,0xffff,0xffff,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x1fff,0x0000, + 0x0fff,0xe000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x01ff,0xffff,0xfff0,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x1fff,0x8000, + 0x1fff,0xc000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x00ff,0xffff,0xffc0,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x1fff,0x8000, + 0x3fff,0xc000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x007f,0xffff,0xff80,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0fff,0x8000, + 0xffff,0x8000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0007,0xffff,0xf800,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0fff,0xc000, + 0xffff,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0001,0xffff,0xe000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x07ff,0xe000, + 0xfffe,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x7fff,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x07ff,0xe000, + 0xfffe,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x07ff,0xe000, + 0xfffc,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x03ff,0xf000, + 0xfffc,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x01ff,0xf000, + 0xffff,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x01ff,0xf800, + 0xffff,0xf000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x00ff,0xfc00, + 0xffff,0xf800,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x00c0,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x00ff,0xfc00, + 0xffff,0xfc00,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x03f0,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x007f,0xfe00, + 0xffff,0xfe00,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x07f8,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x007f,0xfe00, + 0xffff,0xff00,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0ffe,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x003f,0xff00, + 0xffff,0xff00,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x1ffe,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x003f,0xff00, + 0xffff,0xff80,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x1fff,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x001f,0xff80, + 0xffff,0xffc0,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x1fff,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x001f,0xff80, + 0xffff,0xffc0,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x1fff,0xc000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x000f,0xffc0, + 0xff9f,0xffe0,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x1fff,0xe000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x000f,0xffc0, + 0xffcf,0xffe0,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0fff,0xf000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0007,0xffc0, + 0xffff,0xfff0,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x07ff,0xfc00,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0007,0xffe0, + 0xffff,0xfff0,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x07ff,0xfe00,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0003,0xffe0, + 0xffff,0xfff0,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x03ff,0xfe00,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0003,0xffe0, + 0xffff,0xfff0,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x01ff,0xff00,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0003,0xfff0, + 0xffff,0xfff0,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x00ff,0xff00,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0003,0xfff8, + 0xffff,0xffe0,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x007f,0xff00,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0001,0xfff8, + 0xffff,0xffe0,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x003f,0xff00,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0001,0xfffc, + 0xffff,0xff80,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x000f,0xfe00,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0xffff, + 0xffff,0xff00,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0003,0xfc00,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0xffff +};