|
Message
From: cvs at opencores.org<cvs@o...>
Date: Sat May 24 23:44:46 CEST 2008
Subject: [cvs-checkins] MODIFIED: z80soc ...
Date: 00/08/05 24:23:44 Modified: z80soc/DE1/ROM SoC_DE1.z8a rom.hex rom.vhd Log: Version 0.6 Revision Changes Path 1.2 z80soc/DE1/ROM/SoC_DE1.z8a http://www.opencores.org/cvsweb.shtml/z80soc/DE1/ROM/SoC_DE1.z8a.diff?r1=1.1&r2=1.2 (In the diff below, changes in quantity of whitespace are not shown.) Index: SoC_DE1.z8a =================================================================== RCS file: /cvsroot/rrred/z80soc/DE1/ROM/SoC_DE1.z8a,v retrieving revision 1.1 retrieving revision 1.2 diff -u -b -r1.1 -r1.2 --- SoC_DE1.z8a 24 May 2008 15:26:24 -0000 1.1 +++ SoC_DE1.z8a 24 May 2008 21:44:46 -0000 1.2 @@ -46,14 +46,14 @@ push de call delay call rotate - ld a,(7FDDH) ; get z80soc version + ld a,(7FDDH) or a jr z,looppr2 call s3e_routine ; Is Z80-S3E looppr2: - call read_kbd pop de pop bc + call read_kbd or a jr z,loopprint cp 41h @@ -66,6 +66,7 @@ ld a,l out (11h),a ; Use HEX display if DE1 looppr3: + ld a,l ld (de),a inc de dec bc @@ -103,7 +104,7 @@ call delay ; Call sub-routine to delay some time inc hl ; Add 1 to the memory location ld a,(hl) ; Read the value in the memory - cp 0FFh ; check if equal 255 + cp FFh ; check if equal 255 jr nz,skip2_de1 ; If not equal 255, continue loop2 ; end of First execution call read_key0 ; Wait until KEY0 is pressed @@ -147,7 +148,7 @@ out (92h),a ; video cursor y = 0 ld bc,1200 clean_loop: - ld a,20h + ld a,2Eh out (90h),a ; print character to video ; cursor x,y is automatically updated ; by hardware @@ -197,7 +198,7 @@ rotate: ; save first line of box ld hl,411Eh - ld de,9000h + ld de,B000h ld bc,30 ldir ; move all lines up @@ -222,13 +223,11 @@ djnz loop_rotate ; now get back the first line saved in 9000h ; and put on the last line of box - ld hl,9000h + ld hl,B000h ld bc,30 ldir ret s3e_routine: - push bc - push de ; print message in LCD display ; Check of Rotary Knob is moving call read_rot @@ -251,8 +250,6 @@ ld hl,9100h call printmsg dec_jump: - pop de - pop bc ret set_lcd: ld de,9100h @@ -265,54 +262,54 @@ ldir ret read_rot: - CALL DELAY_MULT
- LD A,0
- RET NZ
+ ;CALL DELAY_MULT
+ ;LD A,0
+ ;RET NZ
IN A,(70H)
RET
DELAY_ROT:
- LD A,(9000H)
+ LD A,(9200H)
DEC A
- LD (9000H),A
+ LD (9200H),A
RET
DELAY_MULT:
- LD A,(9001H)
+ LD A,(9201H)
DEC A
JR NZ,DLY_M1
LD A,10H
DLY_M1:
- LD (9001H),A
+ LD (9201H),A
RET
roll_lcd_left:
; save the first char on the left, for every line
ld a,(9100h)
- ld (9002H),a
+ ld (9202H),a
ld a,(9110h)
- ld (9003H),a
+ ld (9203H),a
ld HL,9101H
ld de,9100h
ld bc,31
ldir
- ld a,(9002h)
+ ld a,(9202h)
ld (910Fh),a
- ld a,(9003h)
+ ld a,(9203h)
ld (911Fh),a
ret
roll_lcd_right:
; save the first char on the left, for every line
ld a,(910Fh)
- ld (9002H),a
+ ld (9202H),a
ld a,(911Fh)
- ld (9003H),a
+ ld (9203H),a
ld HL,911EH
ld de,911Fh
ld bc,31
lddr
- ld a,(9002h)
+ ld a,(9202h)
ld (9100h),a
- ld a,(9003h)
+ ld a,(9203h)
ld (9110h),a
ret
Text1:
1.3 z80soc/DE1/ROM/rom.hex
http://www.opencores.org/cvsweb.shtml/z80soc/DE1/ROM/rom.hex.diff?r1=1.2&r2=1.3
(In the diff below, changes in quantity of whitespace are not shown.)
Index: rom.hex
===================================================================
RCS file: /cvsroot/rrred/z80soc/DE1/ROM/rom.hex,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- rom.hex 24 May 2008 15:21:07 -0000 1.2
+++ rom.hex 24 May 2008 21:44:46 -0000 1.3
@@ -1 +1 @@
-ED, 7B, DE, 7F, 3A, DD, 7F, B7, 28, 03, CD, 96, 01, CD, F4, 00, 11, 34, 40, 21, 12, 02, CD, 07, 01, 11, 5C, 40, 21, 25, 02, CD, 07, 01, CD, 12, 01, 11, 46, 41, 21, 38, 02, CD, 07, 01, 11, 96, 41, 21, 54, 02, CD, 07, 01, 11, E6, 41, 21, 71, 02, CD, 07, 01, 11, 36, 42, 21, 8E, 02, CD, 07, 01, 11, 5E, 42, 21, A2, 02, CD, 07, 01, 21, 45, 03, 3A, DD, 7F, B7, 28, 03, 21, 51, 03, 11, 87, 40, CD, 07, 01, 11, D6, 42, 01, 1E, 00, C5, D5, CD, DF, 00, CD, 3C, 01, 3A, DD, 7F, B7, 28, 03, CD, 6F, 01, CD, 0F, 01, D1, C1, B7, 28, E7, FE, 41, 28, 15, D3, 01, 6F, 3A, DD, 7F, B7, 20, 03, 7D, D3, 11, 12, 13, 0B, 78, B1, 28, CA, 18, CE, 21, 00, 80, 3E, 00, 77, 23, 3C, 20, FB, CD, CA, 00, 21, 00, 80, 3A, DD, 7F, B7, 20, 06, 7C, D3, 11, 7D, D3, 10, 7E, D3, 01, CD, DF, 00, 23, 7E, FE, FF, 20, F4, CD, CA, 00, C3, 04, 00, CD, DF, 00, DB, 30, FE, 01, 20, F7, C9, DB, 20, B7, 20, 02, 3E, 01, 3D, 20, FD, C9, DB, 20, B7, 20, 02, 3E, 01, F5, 01, 88, 13, 0B, 78, B1, 20, FB, F1, 3D, 20, F3, C9, 3E, 00, D3, 91, D3, 92, 01, B0, 04, 3E, 20, D3, 90, 0B, 78, B1, 20, F7, C9, 7E, B7, C8, 12, 23, 13, 18, F8, DB, 80, C9, 21, C1, 02, 11, F5, 40, CD, 07, 01, 11, 1D, 41, 3E, 0A, 21, 03, 03, E5, F5, D5, CD, 07, 01, D1, F1, 21, 28, 00, 19, 54, 5D, E1, 3D, 20, EB, 21, E2, 02, CD, 07, 01, C9, 21, 1E, 41, 11, 00, 90, 01, 1E, 00, ED, B0, 21, 46, 41, 11, 1E, 41, 06, 09, C5, E5, D5, 01, 1E, 00, ED, B0, D1, 21, 28, 00, 19, 54, 5D, E1, 01, 28, 00, 09, C1, 10, E9, 21, 00, 90, 01, 1E, 00, ED, B0, C9, C5, D5, CD, AD, 01, FE, 01, 20, 07, CD, EE, 01, 3E, 01, 18, 09, FE, 02, 20, 10, CD, CA, 01, 3E, 80, D3, 01, 11, E0, 7F, 21, 00, 91, CD, 07, 01, D1, C1, C9, 11, 00, 91, 21, 24, 03, 01, 21, 00, ED, B0, 11, E0, 7F, 21, 00, 91, 01, 20, 00, ED, B0, C9, CD, BE, 01, 3E, 00, C0, DB, 70, C9, 3A, 00, 90, 3D, 32, 00, 90, C9, 3A, 01, 90, 3D, 20, 02, 3E, 10, 32, 01, 90, C9, 3A, 00, 91, 32, 02, 90, 3A, 10, 91, 32, 03, 90, 21, 01, 91, 11, 00, 91, 01, 1F, 00, ED, B0, 3A, 02, 90, 32, 0F, 91, 3A, 03, 90, 32, 1F, 91, C9, 3A, 0F, 91, 32, 02, 90, 3A, 1F, 91, 32, 03, 90, 21, 1E, 91, 11, 1F, 91, 01, 1F, 00, ED, B8, 3A, 02, 90, 32, 00, 91, 3A, 03, 90, 32, 10, 91, C9, 5A, 38, 30, 20, 53, 59, 53, 54, 45, 4D, 20, 4F, 4E, 20, 43, 48, 49, 50, 00, 52, 4F, 4E, 49, 56, 4F, 4E, 20, 43, 4F, 53, 54, 41, 20, 32, 30, 30, 38, 00, 20, 20, 7C, 21, 23, 24, 25, 26, 2F, 28, 29, 3D, 3F, 2A, 60, 2B, B4, E7, 7E, 5E, 2C, 2E, 3B, 3A, 5C, 3C, 3E, 00, 20, 20, 41, 42, 43, 44, 45, 46, 47, 48, 49, 4A, 4B, 4C, 4D, 4E, 4F, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 5A, 00, 20, 20, 61, 62, 63, 64, 65, 66, 67, 68, 69, 6A, 6B, 6C, 6D, 6E, 6F, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 7A, 00, 20, 20, 20, 20, 20, 20, 20, 20, 20, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 00, 02, 03, 04, 0B, 0C, 0D, 0E, 12, 18, 19, 1A, 1B, E8, E9, EB, BB, BC, 8A, 86, 87, 81, 80, 01, 06, 07, 08, 09, 0A, 1D, 1F, 00, C9, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, BB, 00, C8, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, BC, 00, BA, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, BA, 00, 20, 20, 20, 5A, 38, 30, 20, 53, 59, 53, 54, 45, 4D, 20, 20, 20, 20, 52, 4F, 4E, 49, 56, 4F, 4E, 20, 20, 43, 4F, 53, 54, 41, 20, 00, 44, 45, 31, 20, 56, 65, 72, 73, 69, 6F, 6E, 00, 53, 33, 45, 20, 56, 65, 72, 73, 69, 6F, 6E, 00
\ No newline at end of file
+ED, 7B, DE, 7F, 3A, DD, 7F, B7, 28, 03, CD, 93, 01, CD, F5, 00, 11, 34, 40, 21, 09, 02, CD, 08, 01, 11, 5C, 40, 21, 1C, 02, CD, 08, 01, CD, 13, 01, 11, 46, 41, 21, 2F, 02, CD, 08, 01, 11, 96, 41, 21, 4B, 02, CD, 08, 01, 11, E6, 41, 21, 68, 02, CD, 08, 01, 11, 36, 42, 21, 85, 02, CD, 08, 01, 11, 5E, 42, 21, 99, 02, CD, 08, 01, 21, 3C, 03, 3A, DD, 7F, B7, 28, 03, 21, 48, 03, 11, 87, 40, CD, 08, 01, 11, D6, 42, 01, 1E, 00, C5, D5, CD, E0, 00, CD, 3D, 01, 3A, DD, 7F, B7, 28, 03, CD, 70, 01, D1, C1, CD, 10, 01, B7, 28, E7, FE, 41, 28, 16, D3, 01, 6F, 3A, DD, 7F, B7, 20, 03, 7D, D3, 11, 7D, 12, 13, 0B, 78, B1, 28, C9, 18, CD, 21, 00, 80, 3E, 00, 77, 23, 3C, 20, FB, CD, CB, 00, 21, 00, 80, 3A, DD, 7F, B7, 20, 06, 7C, D3, 11, 7D, D3, 10, 7E, D3, 01, CD, E0, 00, 23, 7E, FE, FF, 20, F4, CD, CB, 00, C3, 04, 00, CD, E0, 00, DB, 30, FE, 01, 20, F7, C9, DB, 20, B7, 20, 02, 3E, 01, 3D, 20, FD, C9, DB, 20, B7, 20, 02, 3E, 01, F5, 01, 88, 13, 0B, 78, B1, 20, FB, F1, 3D, 20, F3, C9, 3E, 00, D3, 91, D3, 92, 01, B0, 04, 3E, 2E, D3, 90, 0B, 78, B1, 20, F7, C9, 7E, B7, C8, 12, 23, 13, 18, F8, DB, 80, C9, 21, B8, 02, 11, F5, 40, CD, 08, 01, 11, 1D, 41, 3E, 0A, 21, FA, 02, E5, F5, D5, CD, 08, 01, D1, F1, 21, 28, 00, 19, 54, 5D, E1, 3D, 20, EB, 21, D9, 02, CD, 08, 01, C9, 21, 1E, 41, 11, 00, B0, 01, 1E, 00, ED, B0, 21, 46, 41, 11, 1E, 41, 06, 09, C5, E5, D5, 01, 1E, 00, ED, B0, D1, 21, 28, 00, 19, 54, 5D, E1, 01, 28, 00, 09, C1, 10, E9, 21, 00, B0, 01, 1E, 00, ED, B0, C9, CD, AA, 01, FE, 01, 20, 07, CD, E5, 01, 3E, 01, 18, 09, FE, 02, 20, 10, CD, C1, 01, 3E, 80, D3, 01, 11, E0, 7F, 21, 00, 91, CD, 08, 01, C9, 11, 00, 91, 21, 1B, 03, 01, 21, 00, ED, B0, 11, E0, 7F, 21, 00, 91, 01, 20, 00, ED, B0, C9, DB, 70, C9, 3A, 00, 92, 3D, 32, 00, 92, C9, 3A, 01, 92, 3D, 20, 02, 3E, 10, 32, 01, 92, C9, 3A, 00, 91, 32, 02, 92, 3A, 10, 91, 32, 03, 92, 21, 01, 91, 11, 00, 91, 01, 1F, 00, ED, B0, 3A, 02, 92, 32, 0F, 91, 3A, 03, 92, 32, 1F, 91, C9, 3A, 0F, 91, 32, 02, 92, 3A, 1F, 91, 32, 03, 92, 21, 1E, 91, 11, 1F, 91, 01, 1F, 00, ED, B8, 3A, 02, 92, 32, 00, 91, 3A, 03, 92, 32, 10, 91, C9, 5A, 38, 30, 20, 53, 59, 53, 54, 45, 4D, 20, 4F, 4E, 20, 43, 48, 49, 50, 00, 52, 4F, 4E, 49, 56, 4F, 4E, 20, 43, 4F, 53, 54, 41, 20, 32, 30, 30, 38, 00, 20, 20, 7C, 21, 23, 24, 25, 26, 2F, 28, 29, 3D, 3F, 2A, 60, 2B, B4, E7, 7E, 5E, 2C, 2E, 3B, 3A, 5C, 3C, 3E, 00, 20, 20, 41, 42, 43, 44, 45, 46, 47, 48, 49, 4A, 4B, 4C, 4D, 4E, 4F, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 5A, 00, 20, 20, 61, 62, 63, 64, 65, 66, 67, 68, 69, 6A, 6B, 6C, 6D, 6E, 6F, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 7A, 00, 20, 20, 20, 20, 20, 20, 20, 20, 20, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 00, 02, 03, 04, 0B, 0C, 0D, 0E, 12, 18, 19, 1A, 1B, E8, E9, EB, BB, BC, 8A, 86, 87, 81, 80, 01, 06, 07, 08, 09, 0A, 1D, 1F, 00, C9, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, BB, 00, C8, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, CD, BC, 00, BA, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, BA, 00, 20, 20, 20, 5A, 38, 30, 20, 53, 59, 53, 54, 45, 4D, 20, 20, 20, 20, 52, 4F, 4E, 49, 56, 4F, 4E, 20, 20, 43, 4F, 53, 54, 41, 20, 00, 44, 45, 31, 20, 56, 65, 72, 73, 69, 6F, 6E, 00, 53, 33, 45, 20, 56, 65, 72, 73, 69, 6F, 6E, 00
\ No newline at end of file
1.3 z80soc/DE1/ROM/rom.vhd
http://www.opencores.org/cvsweb.shtml/z80soc/DE1/ROM/rom.vhd.diff?r1=1.2&r2=1.3
(In the diff below, changes in quantity of whitespace are not shown.)
Index: rom.vhd
===================================================================
RCS file: /cvsroot/rrred/z80soc/DE1/ROM/rom.vhd,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- rom.vhd 24 May 2008 15:21:17 -0000 1.2
+++ rom.vhd 24 May 2008 21:44:46 -0000 1.3
@@ -28,79 +28,79 @@
when "00000000001000" => D <= x"28";
when "00000000001001" => D <= x"03";
when "00000000001010" => D <= x"CD";
- when "00000000001011" => D <= x"96";
+ when "00000000001011" => D <= x"93";
when "00000000001100" => D <= x"01";
when "00000000001101" => D <= x"CD";
- when "00000000001110" => D <= x"F4";
+ when "00000000001110" => D <= x"F5";
when "00000000001111" => D <= x"00";
when "00000000010000" => D <= x"11";
when "00000000010001" => D <= x"34";
when "00000000010010" => D <= x"40";
when "00000000010011" => D <= x"21";
- when "00000000010100" => D <= x"12";
+ when "00000000010100" => D <= x"09";
when "00000000010101" => D <= x"02";
when "00000000010110" => D <= x"CD";
- when "00000000010111" => D <= x"07";
+ when "00000000010111" => D <= x"08";
when "00000000011000" => D <= x"01";
when "00000000011001" => D <= x"11";
when "00000000011010" => D <= x"5C";
when "00000000011011" => D <= x"40";
when "00000000011100" => D <= x"21";
- when "00000000011101" => D <= x"25";
+ when "00000000011101" => D <= x"1C";
when "00000000011110" => D <= x"02";
when "00000000011111" => D <= x"CD";
- when "00000000100000" => D <= x"07";
+ when "00000000100000" => D <= x"08";
when "00000000100001" => D <= x"01";
when "00000000100010" => D <= x"CD";
- when "00000000100011" => D <= x"12";
+ when "00000000100011" => D <= x"13";
when "00000000100100" => D <= x"01";
when "00000000100101" => D <= x"11";
when "00000000100110" => D <= x"46";
when "00000000100111" => D <= x"41";
when "00000000101000" => D <= x"21";
- when "00000000101001" => D <= x"38";
+ when "00000000101001" => D <= x"2F";
when "00000000101010" => D <= x"02";
when "00000000101011" => D <= x"CD";
- when "00000000101100" => D <= x"07";
+ when "00000000101100" => D <= x"08";
when "00000000101101" => D <= x"01";
when "00000000101110" => D <= x"11";
when "00000000101111" => D <= x"96";
when "00000000110000" => D <= x"41";
when "00000000110001" => D <= x"21";
- when "00000000110010" => D <= x"54";
+ when "00000000110010" => D <= x"4B";
when "00000000110011" => D <= x"02";
when "00000000110100" => D <= x"CD";
- when "00000000110101" => D <= x"07";
+ when "00000000110101" => D <= x"08";
when "00000000110110" => D <= x"01";
when "00000000110111" => D <= x"11";
when "00000000111000" => D <= x"E6";
when "00000000111001" => D <= x"41";
when "00000000111010" => D <= x"21";
- when "00000000111011" => D <= x"71";
+ when "00000000111011" => D <= x"68";
when "00000000111100" => D <= x"02";
when "00000000111101" => D <= x"CD";
- when "00000000111110" => D <= x"07";
+ when "00000000111110" => D <= x"08";
when "00000000111111" => D <= x"01";
when "00000001000000" => D <= x"11";
when "00000001000001" => D <= x"36";
when "00000001000010" => D <= x"42";
when "00000001000011" => D <= x"21";
- when "00000001000100" => D <= x"8E";
+ when "00000001000100" => D <= x"85";
when "00000001000101" => D <= x"02";
when "00000001000110" => D <= x"CD";
- when "00000001000111" => D <= x"07";
+ when "00000001000111" => D <= x"08";
when "00000001001000" => D <= x"01";
when "00000001001001" => D <= x"11";
when "00000001001010" => D <= x"5E";
when "00000001001011" => D <= x"42";
when "00000001001100" => D <= x"21";
- when "00000001001101" => D <= x"A2";
+ when "00000001001101" => D <= x"99";
when "00000001001110" => D <= x"02";
when "00000001001111" => D <= x"CD";
- when "00000001010000" => D <= x"07";
+ when "00000001010000" => D <= x"08";
when "00000001010001" => D <= x"01";
when "00000001010010" => D <= x"21";
- when "00000001010011" => D <= x"45";
+ when "00000001010011" => D <= x"3C";
when "00000001010100" => D <= x"03";
when "00000001010101" => D <= x"3A";
when "00000001010110" => D <= x"DD";
@@ -109,13 +109,13 @@
when "00000001011001" => D <= x"28";
when "00000001011010" => D <= x"03";
when "00000001011011" => D <= x"21";
- when "00000001011100" => D <= x"51";
+ when "00000001011100" => D <= x"48";
when "00000001011101" => D <= x"03";
when "00000001011110" => D <= x"11";
when "00000001011111" => D <= x"87";
when "00000001100000" => D <= x"40";
when "00000001100001" => D <= x"CD";
- when "00000001100010" => D <= x"07";
+ when "00000001100010" => D <= x"08";
when "00000001100011" => D <= x"01";
when "00000001100100" => D <= x"11";
when "00000001100101" => D <= x"D6";
@@ -126,10 +126,10 @@
when "00000001101010" => D <= x"C5";
when "00000001101011" => D <= x"D5";
when "00000001101100" => D <= x"CD";
- when "00000001101101" => D <= x"DF";
+ when "00000001101101" => D <= x"E0";
when "00000001101110" => D <= x"00";
when "00000001101111" => D <= x"CD";
- when "00000001110000" => D <= x"3C";
+ when "00000001110000" => D <= x"3D";
when "00000001110001" => D <= x"01";
when "00000001110010" => D <= x"3A";
when "00000001110011" => D <= x"DD";
@@ -138,20 +138,20 @@
when "00000001110110" => D <= x"28";
when "00000001110111" => D <= x"03";
when "00000001111000" => D <= x"CD";
- when "00000001111001" => D <= x"6F";
+ when "00000001111001" => D <= x"70";
when "00000001111010" => D <= x"01";
- when "00000001111011" => D <= x"CD";
- when "00000001111100" => D <= x"0F";
- when "00000001111101" => D <= x"01";
- when "00000001111110" => D <= x"D1";
- when "00000001111111" => D <= x"C1";
+ when "00000001111011" => D <= x"D1";
+ when "00000001111100" => D <= x"C1";
+ when "00000001111101" => D <= x"CD";
+ when "00000001111110" => D <= x"10";
+ when "00000001111111" => D <= x"01";
when "00000010000000" => D <= x"B7";
when "00000010000001" => D <= x"28";
when "00000010000010" => D <= x"E7";
when "00000010000011" => D <= x"FE";
when "00000010000100" => D <= x"41";
when "00000010000101" => D <= x"28";
- when "00000010000110" => D <= x"15";
+ when "00000010000110" => D <= x"16";
when "00000010000111" => D <= x"D3";
when "00000010001000" => D <= x"01";
when "00000010001001" => D <= x"6F";
@@ -164,565 +164,565 @@
when "00000010010000" => D <= x"7D";
when "00000010010001" => D <= x"D3";
when "00000010010010" => D <= x"11";
- when "00000010010011" => D <= x"12";
- when "00000010010100" => D <= x"13";
- when "00000010010101" => D <= x"0B";
- when "00000010010110" => D <= x"78";
- when "00000010010111" => D <= x"B1";
- when "00000010011000" => D <= x"28";
- when "00000010011001" => D <= x"CA";
- when "00000010011010" => D <= x"18";
- when "00000010011011" => D <= x"CE";
- when "00000010011100" => D <= x"21";
- when "00000010011101" => D <= x"00";
- when "00000010011110" => D <= x"80";
- when "00000010011111" => D <= x"3E";
- when "00000010100000" => D <= x"00";
- when "00000010100001" => D <= x"77";
- when "00000010100010" => D <= x"23";
- when "00000010100011" => D <= x"3C";
- when "00000010100100" => D <= x"20";
- when "00000010100101" => D <= x"FB";
- when "00000010100110" => D <= x"CD";
- when "00000010100111" => D <= x"CA";
- when "00000010101000" => D <= x"00";
- when "00000010101001" => D <= x"21";
- when "00000010101010" => D <= x"00";
- when "00000010101011" => D <= x"80";
- when "00000010101100" => D <= x"3A";
- when "00000010101101" => D <= x"DD";
- when "00000010101110" => D <= x"7F";
- when "00000010101111" => D <= x"B7";
- when "00000010110000" => D <= x"20";
- when "00000010110001" => D <= x"06";
- when "00000010110010" => D <= x"7C";
- when "00000010110011" => D <= x"D3";
- when "00000010110100" => D <= x"11";
- when "00000010110101" => D <= x"7D";
- when "00000010110110" => D <= x"D3";
- when "00000010110111" => D <= x"10";
- when "00000010111000" => D <= x"7E";
- when "00000010111001" => D <= x"D3";
- when "00000010111010" => D <= x"01";
- when "00000010111011" => D <= x"CD";
- when "00000010111100" => D <= x"DF";
- when "00000010111101" => D <= x"00";
- when "00000010111110" => D <= x"23";
- when "00000010111111" => D <= x"7E";
- when "00000011000000" => D <= x"FE";
- when "00000011000001" => D <= x"FF";
- when "00000011000010" => D <= x"20";
- when "00000011000011" => D <= x"F4";
- when "00000011000100" => D <= x"CD";
- when "00000011000101" => D <= x"CA";
- when "00000011000110" => D <= x"00";
- when "00000011000111" => D <= x"C3";
- when "00000011001000" => D <= x"04";
- when "00000011001001" => D <= x"00";
- when "00000011001010" => D <= x"CD";
- when "00000011001011" => D <= x"DF";
- when "00000011001100" => D <= x"00";
- when "00000011001101" => D <= x"DB";
- when "00000011001110" => D <= x"30";
- when "00000011001111" => D <= x"FE";
- when "00000011010000" => D <= x"01";
- when "00000011010001" => D <= x"20";
- when "00000011010010" => D <= x"F7";
- when "00000011010011" => D <= x"C9";
- when "00000011010100" => D <= x"DB";
- when "00000011010101" => D <= x"20";
- when "00000011010110" => D <= x"B7";
- when "00000011010111" => D <= x"20";
- when "00000011011000" => D <= x"02";
- when "00000011011001" => D <= x"3E";
- when "00000011011010" => D <= x"01";
- when "00000011011011" => D <= x"3D";
- when "00000011011100" => D <= x"20";
- when "00000011011101" => D <= x"FD";
- when "00000011011110" => D <= x"C9";
- when "00000011011111" => D <= x"DB";
- when "00000011100000" => D <= x"20";
- when "00000011100001" => D <= x"B7";
- when "00000011100010" => D <= x"20";
- when "00000011100011" => D <= x"02";
- when "00000011100100" => D <= x"3E";
- when "00000011100101" => D <= x"01";
- when "00000011100110" => D <= x"F5";
- when "00000011100111" => D <= x"01";
- when "00000011101000" => D <= x"88";
- when "00000011101001" => D <= x"13";
- when "00000011101010" => D <= x"0B";
- when "00000011101011" => D <= x"78";
- when "00000011101100" => D <= x"B1";
- when "00000011101101" => D <= x"20";
- when "00000011101110" => D <= x"FB";
- when "00000011101111" => D <= x"F1";
- when "00000011110000" => D <= x"3D";
- when "00000011110001" => D <= x"20";
- when "00000011110010" => D <= x"F3";
- when "00000011110011" => D <= x"C9";
- when "00000011110100" => D <= x"3E";
- when "00000011110101" => D <= x"00";
- when "00000011110110" => D <= x"D3";
- when "00000011110111" => D <= x"91";
- when "00000011111000" => D <= x"D3";
- when "00000011111001" => D <= x"92";
- when "00000011111010" => D <= x"01";
- when "00000011111011" => D <= x"B0";
- when "00000011111100" => D <= x"04";
- when "00000011111101" => D <= x"3E";
- when "00000011111110" => D <= x"20";
- when "00000011111111" => D <= x"D3";
- when "00000100000000" => D <= x"90";
- when "00000100000001" => D <= x"0B";
- when "00000100000010" => D <= x"78";
- when "00000100000011" => D <= x"B1";
- when "00000100000100" => D <= x"20";
- when "00000100000101" => D <= x"F7";
- when "00000100000110" => D <= x"C9";
- when "00000100000111" => D <= x"7E";
- when "00000100001000" => D <= x"B7";
- when "00000100001001" => D <= x"C8";
- when "00000100001010" => D <= x"12";
- when "00000100001011" => D <= x"23";
- when "00000100001100" => D <= x"13";
- when "00000100001101" => D <= x"18";
- when "00000100001110" => D <= x"F8";
- when "00000100001111" => D <= x"DB";
- when "00000100010000" => D <= x"80";
- when "00000100010001" => D <= x"C9";
- when "00000100010010" => D <= x"21";
- when "00000100010011" => D <= x"C1";
- when "00000100010100" => D <= x"02";
- when "00000100010101" => D <= x"11";
- when "00000100010110" => D <= x"F5";
- when "00000100010111" => D <= x"40";
- when "00000100011000" => D <= x"CD";
- when "00000100011001" => D <= x"07";
- when "00000100011010" => D <= x"01";
- when "00000100011011" => D <= x"11";
- when "00000100011100" => D <= x"1D";
- when "00000100011101" => D <= x"41";
- when "00000100011110" => D <= x"3E";
- when "00000100011111" => D <= x"0A";
- when "00000100100000" => D <= x"21";
- when "00000100100001" => D <= x"03";
- when "00000100100010" => D <= x"03";
- when "00000100100011" => D <= x"E5";
- when "00000100100100" => D <= x"F5";
- when "00000100100101" => D <= x"D5";
- when "00000100100110" => D <= x"CD";
- when "00000100100111" => D <= x"07";
- when "00000100101000" => D <= x"01";
- when "00000100101001" => D <= x"D1";
- when "00000100101010" => D <= x"F1";
- when "00000100101011" => D <= x"21";
- when "00000100101100" => D <= x"28";
- when "00000100101101" => D <= x"00";
- when "00000100101110" => D <= x"19";
- when "00000100101111" => D <= x"54";
- when "00000100110000" => D <= x"5D";
- when "00000100110001" => D <= x"E1";
- when "00000100110010" => D <= x"3D";
- when "00000100110011" => D <= x"20";
- when "00000100110100" => D <= x"EB";
- when "00000100110101" => D <= x"21";
- when "00000100110110" => D <= x"E2";
- when "00000100110111" => D <= x"02";
- when "00000100111000" => D <= x"CD";
- when "00000100111001" => D <= x"07";
- when "00000100111010" => D <= x"01";
- when "00000100111011" => D <= x"C9";
- when "00000100111100" => D <= x"21";
- when "00000100111101" => D <= x"1E";
- when "00000100111110" => D <= x"41";
- when "00000100111111" => D <= x"11";
- when "00000101000000" => D <= x"00";
- when "00000101000001" => D <= x"90";
- when "00000101000010" => D <= x"01";
- when "00000101000011" => D <= x"1E";
- when "00000101000100" => D <= x"00";
- when "00000101000101" => D <= x"ED";
- when "00000101000110" => D <= x"B0";
- when "00000101000111" => D <= x"21";
- when "00000101001000" => D <= x"46";
- when "00000101001001" => D <= x"41";
- when "00000101001010" => D <= x"11";
- when "00000101001011" => D <= x"1E";
- when "00000101001100" => D <= x"41";
- when "00000101001101" => D <= x"06";
- when "00000101001110" => D <= x"09";
- when "00000101001111" => D <= x"C5";
- when "00000101010000" => D <= x"E5";
- when "00000101010001" => D <= x"D5";
- when "00000101010010" => D <= x"01";
- when "00000101010011" => D <= x"1E";
- when "00000101010100" => D <= x"00";
- when "00000101010101" => D <= x"ED";
- when "00000101010110" => D <= x"B0";
- when "00000101010111" => D <= x"D1";
- when "00000101011000" => D <= x"21";
- when "00000101011001" => D <= x"28";
- when "00000101011010" => D <= x"00";
- when "00000101011011" => D <= x"19";
- when "00000101011100" => D <= x"54";
- when "00000101011101" => D <= x"5D";
- when "00000101011110" => D <= x"E1";
- when "00000101011111" => D <= x"01";
- when "00000101100000" => D <= x"28";
- when "00000101100001" => D <= x"00";
- when "00000101100010" => D <= x"09";
- when "00000101100011" => D <= x"C1";
- when "00000101100100" => D <= x"10";
- when "00000101100101" => D <= x"E9";
- when "00000101100110" => D <= x"21";
- when "00000101100111" => D <= x"00";
- when "00000101101000" => D <= x"90";
- when "00000101101001" => D <= x"01";
- when "00000101101010" => D <= x"1E";
- when "00000101101011" => D <= x"00";
- when "00000101101100" => D <= x"ED";
- when "00000101101101" => D <= x"B0";
- when "00000101101110" => D <= x"C9";
- when "00000101101111" => D <= x"C5";
- when "00000101110000" => D <= x"D5";
- when "00000101110001" => D <= x"CD";
- when "00000101110010" => D <= x"AD";
- when "00000101110011" => D <= x"01";
- when "00000101110100" => D <= x"FE";
- when "00000101110101" => D <= x"01";
- when "00000101110110" => D <= x"20";
- when "00000101110111" => D <= x"07";
- when "00000101111000" => D <= x"CD";
- when "00000101111001" => D <= x"EE";
- when "00000101111010" => D <= x"01";
- when "00000101111011" => D <= x"3E";
- when "00000101111100" => D <= x"01";
- when "00000101111101" => D <= x"18";
- when "00000101111110" => D <= x"09";
- when "00000101111111" => D <= x"FE";
- when "00000110000000" => D <= x"02";
- when "00000110000001" => D <= x"20";
- when "00000110000010" => D <= x"10";
- when "00000110000011" => D <= x"CD";
- when "00000110000100" => D <= x"CA";
- when "00000110000101" => D <= x"01";
- when "00000110000110" => D <= x"3E";
- when "00000110000111" => D <= x"80";
- when "00000110001000" => D <= x"D3";
- when "00000110001001" => D <= x"01";
- when "00000110001010" => D <= x"11";
- when "00000110001011" => D <= x"E0";
- when "00000110001100" => D <= x"7F";
- when "00000110001101" => D <= x"21";
- when "00000110001110" => D <= x"00";
- when "00000110001111" => D <= x"91";
- when "00000110010000" => D <= x"CD";
- when "00000110010001" => D <= x"07";
- when "00000110010010" => D <= x"01";
- when "00000110010011" => D <= x"D1";
- when "00000110010100" => D <= x"C1";
- when "00000110010101" => D <= x"C9";
- when "00000110010110" => D <= x"11";
- when "00000110010111" => D <= x"00";
- when "00000110011000" => D <= x"91";
- when "00000110011001" => D <= x"21";
- when "00000110011010" => D <= x"24";
- when "00000110011011" => D <= x"03";
- when "00000110011100" => D <= x"01";
- when "00000110011101" => D <= x"21";
- when "00000110011110" => D <= x"00";
- when "00000110011111" => D <= x"ED";
- when "00000110100000" => D <= x"B0";
- when "00000110100001" => D <= x"11";
- when "00000110100010" => D <= x"E0";
- when "00000110100011" => D <= x"7F";
- when "00000110100100" => D <= x"21";
- when "00000110100101" => D <= x"00";
- when "00000110100110" => D <= x"91";
- when "00000110100111" => D <= x"01";
- when "00000110101000" => D <= x"20";
- when "00000110101001" => D <= x"00";
- when "00000110101010" => D <= x"ED";
- when "00000110101011" => D <= x"B0";
+ when "00000010010011" => D <= x"7D";
+ when "00000010010100" => D <= x"12";
+ when "00000010010101" => D <= x"13";
+ when "00000010010110" => D <= x"0B";
+ when "00000010010111" => D <= x"78";
+ when "00000010011000" => D <= x"B1";
+ when "00000010011001" => D <= x"28";
+ when "00000010011010" => D <= x"C9";
+ when "00000010011011" => D <= x"18";
+ when "00000010011100" => D <= x"CD";
+ when "00000010011101" => D <= x"21";
+ when "00000010011110" => D <= x"00";
+ when "00000010011111" => D <= x"80";
+ when "00000010100000" => D <= x"3E";
+ when "00000010100001" => D <= x"00";
+ when "00000010100010" => D <= x"77";
+ when "00000010100011" => D <= x"23";
+ when "00000010100100" => D <= x"3C";
+ when "00000010100101" => D <= x"20";
+ when "00000010100110" => D <= x"FB";
+ when "00000010100111" => D <= x"CD";
+ when "00000010101000" => D <= x"CB";
+ when "00000010101001" => D <= x"00";
+ when "00000010101010" => D <= x"21";
+ when "00000010101011" => D <= x"00";
+ when "00000010101100" => D <= x"80";
+ when "00000010101101" => D <= x"3A";
+ when "00000010101110" => D <= x"DD";
+ when "00000010101111" => D <= x"7F";
+ when "00000010110000" => D <= x"B7";
+ when "00000010110001" => D <= x"20";
+ when "00000010110010" => D <= x"06";
+ when "00000010110011" => D <= x"7C";
+ when "00000010110100" => D <= x"D3";
+ when "00000010110101" => D <= x"11";
+ when "00000010110110" => D <= x"7D";
+ when "00000010110111" => D <= x"D3";
+ when "00000010111000" => D <= x"10";
+ when "00000010111001" => D <= x"7E";
+ when "00000010111010" => D <= x"D3";
+ when "00000010111011" => D <= x"01";
+ when "00000010111100" => D <= x"CD";
+ when "00000010111101" => D <= x"E0";
+ when "00000010111110" => D <= x"00";
+ when "00000010111111" => D <= x"23";
+ when "00000011000000" => D <= x"7E";
+ when "00000011000001" => D <= x"FE";
+ when "00000011000010" => D <= x"FF";
+ when "00000011000011" => D <= x"20";
+ when "00000011000100" => D <= x"F4";
+ when "00000011000101" => D <= x"CD";
+ when "00000011000110" => D <= x"CB";
+ when "00000011000111" => D <= x"00";
+ when "00000011001000" => D <= x"C3";
+ when "00000011001001" => D <= x"04";
+ when "00000011001010" => D <= x"00";
+ when "00000011001011" => D <= x"CD";
+ when "00000011001100" => D <= x"E0";
+ when "00000011001101" => D <= x"00";
+ when "00000011001110" => D <= x"DB";
+ when "00000011001111" => D <= x"30";
+ when "00000011010000" => D <= x"FE";
+ when "00000011010001" => D <= x"01";
+ when "00000011010010" => D <= x"20";
+ when "00000011010011" => D <= x"F7";
+ when "00000011010100" => D <= x"C9";
+ when "00000011010101" => D <= x"DB";
+ when "00000011010110" => D <= x"20";
+ when "00000011010111" => D <= x"B7";
+ when "00000011011000" => D <= x"20";
+ when "00000011011001" => D <= x"02";
+ when "00000011011010" => D <= x"3E";
+ when "00000011011011" => D <= x"01";
+ when "00000011011100" => D <= x"3D";
+ when "00000011011101" => D <= x"20";
+ when "00000011011110" => D <= x"FD";
+ when "00000011011111" => D <= x"C9";
+ when "00000011100000" => D <= x"DB";
+ when "00000011100001" => D <= x"20";
+ when "00000011100010" => D <= x"B7";
+ when "00000011100011" => D <= x"20";
+ when "00000011100100" => D <= x"02";
+ when "00000011100101" => D <= x"3E";
+ when "00000011100110" => D <= x"01";
+ when "00000011100111" => D <= x"F5";
+ when "00000011101000" => D <= x"01";
+ when "00000011101001" => D <= x"88";
+ when "00000011101010" => D <= x"13";
+ when "00000011101011" => D <= x"0B";
+ when "00000011101100" => D <= x"78";
+ when "00000011101101" => D <= x"B1";
+ when "00000011101110" => D <= x"20";
+ when "00000011101111" => D <= x"FB";
+ when "00000011110000" => D <= x"F1";
+ when "00000011110001" => D <= x"3D";
+ when "00000011110010" => D <= x"20";
+ when "00000011110011" => D <= x"F3";
+ when "00000011110100" => D <= x"C9";
+ when "00000011110101" => D <= x"3E";
+ when "00000011110110" => D <= x"00";
+ when "00000011110111" => D <= x"D3";
+ when "00000011111000" => D <= x"91";
+ when "00000011111001" => D <= x"D3";
+ when "00000011111010" => D <= x"92";
+ when "00000011111011" => D <= x"01";
+ when "00000011111100" => D <= x"B0";
+ when "00000011111101" => D <= x"04";
+ when "00000011111110" => D <= x"3E";
+ when "00000011111111" => D <= x"2E";
+ when "00000100000000" => D <= x"D3";
+ when "00000100000001" => D <= x"90";
+ when "00000100000010" => D <= x"0B";
+ when "00000100000011" => D <= x"78";
+ when "00000100000100" => D <= x"B1";
+ when "00000100000101" => D <= x"20";
+ when "00000100000110" => D <= x"F7";
+ when "00000100000111" => D <= x"C9";
+ when "00000100001000" => D <= x"7E";
+ when "00000100001001" => D <= x"B7";
+ when "00000100001010" => D <= x"C8";
+ when "00000100001011" => D <= x"12";
+ when "00000100001100" => D <= x"23";
+ when "00000100001101" => D <= x"13";
+ when "00000100001110" => D <= x"18";
+ when "00000100001111" => D <= x"F8";
+ when "00000100010000" => D <= x"DB";
+ when "00000100010001" => D <= x"80";
+ when "00000100010010" => D <= x"C9";
+ when "00000100010011" => D <= x"21";
+ when "00000100010100" => D <= x"B8";
+ when "00000100010101" => D <= x"02";
+ when "00000100010110" => D <= x"11";
+ when "00000100010111" => D <= x"F5";
+ when "00000100011000" => D <= x"40";
+ when "00000100011001" => D <= x"CD";
+ when "00000100011010" => D <= x"08";
+ when "00000100011011" => D <= x"01";
+ when "00000100011100" => D <= x"11";
+ when "00000100011101" => D <= x"1D";
+ when "00000100011110" => D <= x"41";
+ when "00000100011111" => D <= x"3E";
+ when "00000100100000" => D <= x"0A";
+ when "00000100100001" => D <= x"21";
+ when "00000100100010" => D <= x"FA";
+ when "00000100100011" => D <= x"02";
+ when "00000100100100" => D <= x"E5";
+ when "00000100100101" => D <= x"F5";
+ when "00000100100110" => D <= x"D5";
+ when "00000100100111" => D <= x"CD";
+ when "00000100101000" => D <= x"08";
+ when "00000100101001" => D <= x"01";
+ when "00000100101010" => D <= x"D1";
+ when "00000100101011" => D <= x"F1";
+ when "00000100101100" => D <= x"21";
+ when "00000100101101" => D <= x"28";
+ when "00000100101110" => D <= x"00";
+ when "00000100101111" => D <= x"19";
+ when "00000100110000" => D <= x"54";
+ when "00000100110001" => D <= x"5D";
+ when "00000100110010" => D <= x"E1";
+ when "00000100110011" => D <= x"3D";
+ when "00000100110100" => D <= x"20";
+ when "00000100110101" => D <= x"EB";
+ when "00000100110110" => D <= x"21";
+ when "00000100110111" => D <= x"D9";
+ when "00000100111000" => D <= x"02";
+ when "00000100111001" => D <= x"CD";
+ when "00000100111010" => D <= x"08";
+ when "00000100111011" => D <= x"01";
+ when "00000100111100" => D <= x"C9";
+ when "00000100111101" => D <= x"21";
+ when "00000100111110" => D <= x"1E";
+ when "00000100111111" => D <= x"41";
+ when "00000101000000" => D <= x"11";
+ when "00000101000001" => D <= x"00";
+ when "00000101000010" => D <= x"B0";
+ when "00000101000011" => D <= x"01";
+ when "00000101000100" => D <= x"1E";
+ when "00000101000101" => D <= x"00";
+ when "00000101000110" => D <= x"ED";
+ when "00000101000111" => D <= x"B0";
+ when "00000101001000" => D <= x"21";
+ when "00000101001001" => D <= x"46";
+ when "00000101001010" => D <= x"41";
+ when "00000101001011" => D <= x"11";
+ when "00000101001100" => D <= x"1E";
+ when "00000101001101" => D <= x"41";
+ when "00000101001110" => D <= x"06";
+ when "00000101001111" => D <= x"09";
+ when "00000101010000" => D <= x"C5";
+ when "00000101010001" => D <= x"E5";
+ when "00000101010010" => D <= x"D5";
+ when "00000101010011" => D <= x"01";
+ when "00000101010100" => D <= x"1E";
+ when "00000101010101" => D <= x"00";
+ when "00000101010110" => D <= x"ED";
+ when "00000101010111" => D <= x"B0";
+ when "00000101011000" => D <= x"D1";
+ when "00000101011001" => D <= x"21";
+ when "00000101011010" => D <= x"28";
+ when "00000101011011" => D <= x"00";
+ when "00000101011100" => D <= x"19";
+ when "00000101011101" => D <= x"54";
+ when "00000101011110" => D <= x"5D";
+ when "00000101011111" => D <= x"E1";
+ when "00000101100000" => D <= x"01";
+ when "00000101100001" => D <= x"28";
+ when "00000101100010" => D <= x"00";
+ when "00000101100011" => D <= x"09";
+ when "00000101100100" => D <= x"C1";
+ when "00000101100101" => D <= x"10";
+ when "00000101100110" => D <= x"E9";
+ when "00000101100111" => D <= x"21";
+ when "00000101101000" => D <= x"00";
+ when "00000101101001" => D <= x"B0";
+ when "00000101101010" => D <= x"01";
+ when "00000101101011" => D <= x"1E";
+ when "00000101101100" => D <= x"00";
+ when "00000101101101" => D <= x"ED";
+ when "00000101101110" => D <= x"B0";
+ when "00000101101111" => D <= x"C9";
+ when "00000101110000" => D <= x"CD";
+ when "00000101110001" => D <= x"AA";
+ when "00000101110010" => D <= x"01";
+ when "00000101110011" => D <= x"FE";
+ when "00000101110100" => D <= x"01";
+ when "00000101110101" => D <= x"20";
+ when "00000101110110" => D <= x"07";
+ when "00000101110111" => D <= x"CD";
+ when "00000101111000" => D <= x"E5";
+ when "00000101111001" => D <= x"01";
+ when "00000101111010" => D <= x"3E";
+ when "00000101111011" => D <= x"01";
+ when "00000101111100" => D <= x"18";
+ when "00000101111101" => D <= x"09";
+ when "00000101111110" => D <= x"FE";
+ when "00000101111111" => D <= x"02";
+ when "00000110000000" => D <= x"20";
+ when "00000110000001" => D <= x"10";
+ when "00000110000010" => D <= x"CD";
+ when "00000110000011" => D <= x"C1";
+ when "00000110000100" => D <= x"01";
+ when "00000110000101" => D <= x"3E";
+ when "00000110000110" => D <= x"80";
+ when "00000110000111" => D <= x"D3";
+ when "00000110001000" => D <= x"01";
+ when "00000110001001" => D <= x"11";
+ when "00000110001010" => D <= x"E0";
+ when "00000110001011" => D <= x"7F";
+ when "00000110001100" => D <= x"21";
+ when "00000110001101" => D <= x"00";
+ when "00000110001110" => D <= x"91";
+ when "00000110001111" => D <= x"CD";
+ when "00000110010000" => D <= x"08";
+ when "00000110010001" => D <= x"01";
+ when "00000110010010" => D <= x"C9";
+ when "00000110010011" => D <= x"11";
+ when "00000110010100" => D <= x"00";
+ when "00000110010101" => D <= x"91";
+ when "00000110010110" => D <= x"21";
+ when "00000110010111" => D <= x"1B";
+ when "00000110011000" => D <= x"03";
+ when "00000110011001" => D <= x"01";
+ when "00000110011010" => D <= x"21";
+ when "00000110011011" => D <= x"00";
+ when "00000110011100" => D <= x"ED";
+ when "00000110011101" => D <= x"B0";
+ when "00000110011110" => D <= x"11";
+ when "00000110011111" => D <= x"E0";
+ when "00000110100000" => D <= x"7F";
+ when "00000110100001" => D <= x"21";
+ when "00000110100010" => D <= x"00";
+ when "00000110100011" => D <= x"91";
+ when "00000110100100" => D <= x"01";
+ when "00000110100101" => D <= x"20";
+ when "00000110100110" => D <= x"00";
+ when "00000110100111" => D <= x"ED";
+ when "00000110101000" => D <= x"B0";
+ when "00000110101001" => D <= x"C9";
+ when "00000110101010" => D <= x"DB";
+ when "00000110101011" => D <= x"70";
when "00000110101100" => D <= x"C9";
- when "00000110101101" => D <= x"CD";
- when "00000110101110" => D <= x"BE";
- when "00000110101111" => D <= x"01";
- when "00000110110000" => D <= x"3E";
- when "00000110110001" => D <= x"00";
- when "00000110110010" => D <= x"C0";
- when "00000110110011" => D <= x"DB";
- when "00000110110100" => D <= x"70";
- when "00000110110101" => D <= x"C9";
- when "00000110110110" => D <= x"3A";
- when "00000110110111" => D <= x"00";
- when "00000110111000" => D <= x"90";
- when "00000110111001" => D <= x"3D";
- when "00000110111010" => D <= x"32";
- when "00000110111011" => D <= x"00";
- when "00000110111100" => D <= x"90";
- when "00000110111101" => D <= x"C9";
- when "00000110111110" => D <= x"3A";
- when "00000110111111" => D <= x"01";
- when "00000111000000" => D <= x"90";
- when "00000111000001" => D <= x"3D";
- when "00000111000010" => D <= x"20";
- when "00000111000011" => D <= x"02";
- when "00000111000100" => D <= x"3E";
- when "00000111000101" => D <= x"10";
- when "00000111000110" => D <= x"32";
- when "00000111000111" => D <= x"01";
- when "00000111001000" => D <= x"90";
- when "00000111001001" => D <= x"C9";
- when "00000111001010" => D <= x"3A";
- when "00000111001011" => D <= x"00";
- when "00000111001100" => D <= x"91";
- when "00000111001101" => D <= x"32";
- when "00000111001110" => D <= x"02";
- when "00000111001111" => D <= x"90";
- when "00000111010000" => D <= x"3A";
- when "00000111010001" => D <= x"10";
+ when "00000110101101" => D <= x"3A";
+ when "00000110101110" => D <= x"00";
+ when "00000110101111" => D <= x"92";
+ when "00000110110000" => D <= x"3D";
+ when "00000110110001" => D <= x"32";
+ when "00000110110010" => D <= x"00";
+ when "00000110110011" => D <= x"92";
+ when "00000110110100" => D <= x"C9";
+ when "00000110110101" => D <= x"3A";
+ when "00000110110110" => D <= x"01";
+ when "00000110110111" => D <= x"92";
+ when "00000110111000" => D <= x"3D";
+ when "00000110111001" => D <= x"20";
+ when "00000110111010" => D <= x"02";
+ when "00000110111011" => D <= x"3E";
+ when "00000110111100" => D <= x"10";
+ when "00000110111101" => D <= x"32";
+ when "00000110111110" => D <= x"01";
+ when "00000110111111" => D <= x"92";
+ when "00000111000000" => D <= x"C9";
+ when "00000111000001" => D <= x"3A";
+ when "00000111000010" => D <= x"00";
+ when "00000111000011" => D <= x"91";
+ when "00000111000100" => D <= x"32";
+ when "00000111000101" => D <= x"02";
+ when "00000111000110" => D <= x"92";
+ when "00000111000111" => D <= x"3A";
+ when "00000111001000" => D <= x"10";
+ when "00000111001001" => D <= x"91";
+ when "00000111001010" => D <= x"32";
+ when "00000111001011" => D <= x"03";
+ when "00000111001100" => D <= x"92";
+ when "00000111001101" => D <= x"21";
+ when "00000111001110" => D <= x"01";
+ when "00000111001111" => D <= x"91";
+ when "00000111010000" => D <= x"11";
+ when "00000111010001" => D <= x"00";
when "00000111010010" => D <= x"91";
- when "00000111010011" => D <= x"32";
- when "00000111010100" => D <= x"03";
- when "00000111010101" => D <= x"90";
- when "00000111010110" => D <= x"21";
- when "00000111010111" => D <= x"01";
- when "00000111011000" => D <= x"91";
- when "00000111011001" => D <= x"11";
- when "00000111011010" => D <= x"00";
- when "00000111011011" => D <= x"91";
- when "00000111011100" => D <= x"01";
- when "00000111011101" => D <= x"1F";
- when "00000111011110" => D <= x"00";
- when "00000111011111" => D <= x"ED";
- when "00000111100000" => D <= x"B0";
- when "00000111100001" => D <= x"3A";
- when "00000111100010" => D <= x"02";
- when "00000111100011" => D <= x"90";
- when "00000111100100" => D <= x"32";
- when "00000111100101" => D <= x"0F";
- when "00000111100110" => D <= x"91";
- when "00000111100111" => D <= x"3A";
- when "00000111101000" => D <= x"03";
- when "00000111101001" => D <= x"90";
- when "00000111101010" => D <= x"32";
- when "00000111101011" => D <= x"1F";
- when "00000111101100" => D <= x"91";
- when "00000111101101" => D <= x"C9";
- when "00000111101110" => D <= x"3A";
- when "00000111101111" => D <= x"0F";
- when "00000111110000" => D <= x"91";
- when "00000111110001" => D <= x"32";
- when "00000111110010" => D <= x"02";
- when "00000111110011" => D <= x"90";
- when "00000111110100" => D <= x"3A";
+ when "00000111010011" => D <= x"01";
+ when "00000111010100" => D <= x"1F";
+ when "00000111010101" => D <= x"00";
+ when "00000111010110" => D <= x"ED";
+ when "00000111010111" => D <= x"B0";
+ when "00000111011000" => D <= x"3A";
+ when "00000111011001" => D <= x"02";
+ when "00000111011010" => D <= x"92";
+ when "00000111011011" => D <= x"32";
+ when "00000111011100" => D <= x"0F";
+ when "00000111011101" => D <= x"91";
+ when "00000111011110" => D <= x"3A";
+ when "00000111011111" => D <= x"03";
+ when "00000111100000" => D <= x"92";
+ when "00000111100001" => D <= x"32";
+ when "00000111100010" => D <= x"1F";
+ when "00000111100011" => D <= x"91";
+ when "00000111100100" => D <= x"C9";
+ when "00000111100101" => D <= x"3A";
+ when "00000111100110" => D <= x"0F";
+ when "00000111100111" => D <= x"91";
+ when "00000111101000" => D <= x"32";
+ when "00000111101001" => D <= x"02";
+ when "00000111101010" => D <= x"92";
+ when "00000111101011" => D <= x"3A";
+ when "00000111101100" => D <= x"1F";
+ when "00000111101101" => D <= x"91";
+ when "00000111101110" => D <= x"32";
+ when "00000111101111" => D <= x"03";
+ when "00000111110000" => D <= x"92";
+ when "00000111110001" => D <= x"21";
+ when "00000111110010" => D <= x"1E";
+ when "00000111110011" => D <= x"91";
+ when "00000111110100" => D <= x"11";
when "00000111110101" => D <= x"1F";
when "00000111110110" => D <= x"91";
- when "00000111110111" => D <= x"32";
- when "00000111111000" => D <= x"03";
- when "00000111111001" => D <= x"90";
- when "00000111111010" => D <= x"21";
- when "00000111111011" => D <= x"1E";
- when "00000111111100" => D <= x"91";
- when "00000111111101" => D <= x"11";
- when "00000111111110" => D <= x"1F";
- when "00000111111111" => D <= x"91";
- when "00001000000000" => D <= x"01";
- when "00001000000001" => D <= x"1F";
- when "00001000000010" => D <= x"00";
- when "00001000000011" => D <= x"ED";
- when "00001000000100" => D <= x"B8";
- when "00001000000101" => D <= x"3A";
- when "00001000000110" => D <= x"02";
- when "00001000000111" => D <= x"90";
- when "00001000001000" => D <= x"32";
- when "00001000001001" => D <= x"00";
- when "00001000001010" => D <= x"91";
- when "00001000001011" => D <= x"3A";
- when "00001000001100" => D <= x"03";
- when "00001000001101" => D <= x"90";
- when "00001000001110" => D <= x"32";
- when "00001000001111" => D <= x"10";
- when "00001000010000" => D <= x"91";
- when "00001000010001" => D <= x"C9";
- when "00001000010010" => D <= x"5A";
- when "00001000010011" => D <= x"38";
- when "00001000010100" => D <= x"30";
- when "00001000010101" => D <= x"20";
- when "00001000010110" => D <= x"53";
- when "00001000010111" => D <= x"59";
- when "00001000011000" => D <= x"53";
- when "00001000011001" => D <= x"54";
- when "00001000011010" => D <= x"45";
- when "00001000011011" => D <= x"4D";
- when "00001000011100" => D <= x"20";
+ when "00000111110111" => D <= x"01";
+ when "00000111111000" => D <= x"1F";
+ when "00000111111001" => D <= x"00";
+ when "00000111111010" => D <= x"ED";
+ when "00000111111011" => D <= x"B8";
+ when "00000111111100" => D <= x"3A";
+ when "00000111111101" => D <= x"02";
+ when "00000111111110" => D <= x"92";
+ when "00000111111111" => D <= x"32";
+ when "00001000000000" => D <= x"00";
+ when "00001000000001" => D <= x"91";
+ when "00001000000010" => D <= x"3A";
+ when "00001000000011" => D <= x"03";
+ when "00001000000100" => D <= x"92";
+ when "00001000000101" => D <= x"32";
+ when "00001000000110" => D <= x"10";
+ when "00001000000111" => D <= x"91";
+ when "00001000001000" => D <= x"C9";
+ when "00001000001001" => D <= x"5A";
+ when "00001000001010" => D <= x"38";
+ when "00001000001011" => D <= x"30";
+ when "00001000001100" => D <= x"20";
+ when "00001000001101" => D <= x"53";
+ when "00001000001110" => D <= x"59";
+ when "00001000001111" => D <= x"53";
+ when "00001000010000" => D <= x"54";
+ when "00001000010001" => D <= x"45";
+ when "00001000010010" => D <= x"4D";
+ when "00001000010011" => D <= x"20";
+ when "00001000010100" => D <= x"4F";
+ when "00001000010101" => D <= x"4E";
+ when "00001000010110" => D <= x"20";
+ when "00001000010111" => D <= x"43";
+ when "00001000011000" => D <= x"48";
+ when "00001000011001" => D <= x"49";
+ when "00001000011010" => D <= x"50";
+ when "00001000011011" => D <= x"00";
+ when "00001000011100" => D <= x"52";
when "00001000011101" => D <= x"4F";
when "00001000011110" => D <= x"4E";
- when "00001000011111" => D <= x"20";
- when "00001000100000" => D <= x"43";
- when "00001000100001" => D <= x"48";
- when "00001000100010" => D <= x"49";
- when "00001000100011" => D <= x"50";
- when "00001000100100" => D <= x"00";
- when "00001000100101" => D <= x"52";
- when "00001000100110" => D <= x"4F";
- when "00001000100111" => D <= x"4E";
- when "00001000101000" => D <= x"49";
- when "00001000101001" => D <= x"56";
- when "00001000101010" => D <= x"4F";
- when "00001000101011" => D <= x"4E";
- when "00001000101100" => D <= x"20";
- when "00001000101101" => D <= x"43";
- when "00001000101110" => D <= x"4F";
- when "00001000101111" => D <= x"53";
- when "00001000110000" => D <= x"54";
- when "00001000110001" => D <= x"41";
- when "00001000110010" => D <= x"20";
- when "00001000110011" => D <= x"32";
- when "00001000110100" => D <= x"30";
- when "00001000110101" => D <= x"30";
- when "00001000110110" => D <= x"38";
- when "00001000110111" => D <= x"00";
- when "00001000111000" => D <= x"20";
- when "00001000111001" => D <= x"20";
- when "00001000111010" => D <= x"7C";
- when "00001000111011" => D <= x"21";
- when "00001000111100" => D <= x"23";
- when "00001000111101" => D <= x"24";
- when "00001000111110" => D <= x"25";
- when "00001000111111" => D <= x"26";
- when "00001001000000" => D <= x"2F";
- when "00001001000001" => D <= x"28";
- when "00001001000010" => D <= x"29";
- when "00001001000011" => D <= x"3D";
- when "00001001000100" => D <= x"3F";
- when "00001001000101" => D <= x"2A";
- when "00001001000110" => D <= x"60";
- when "00001001000111" => D <= x"2B";
- when "00001001001000" => D <= x"B4";
- when "00001001001001" => D <= x"E7";
- when "00001001001010" => D <= x"7E";
- when "00001001001011" => D <= x"5E";
- when "00001001001100" => D <= x"2C";
- when "00001001001101" => D <= x"2E";
- when "00001001001110" => D <= x"3B";
- when "00001001001111" => D <= x"3A";
- when "00001001010000" => D <= x"5C";
- when "00001001010001" => D <= x"3C";
- when "00001001010010" => D <= x"3E";
- when "00001001010011" => D <= x"00";
- when "00001001010100" => D <= x"20";
- when "00001001010101" => D <= x"20";
- when "00001001010110" => D <= x"41";
- when "00001001010111" => D <= x"42";
- when "00001001011000" => D <= x"43";
- when "00001001011001" => D <= x"44";
- when "00001001011010" => D <= x"45";
- when "00001001011011" => D <= x"46";
- when "00001001011100" => D <= x"47";
- when "00001001011101" => D <= x"48";
- when "00001001011110" => D <= x"49";
- when "00001001011111" => D <= x"4A";
- when "00001001100000" => D <= x"4B";
- when "00001001100001" => D <= x"4C";
- when "00001001100010" => D <= x"4D";
- when "00001001100011" => D <= x"4E";
- when "00001001100100" => D <= x"4F";
- when "00001001100101" => D <= x"50";
- when "00001001100110" => D <= x"51";
- when "00001001100111" => D <= x"52";
- when "00001001101000" => D <= x"53";
- when "00001001101001" => D <= x"54";
- when "00001001101010" => D <= x"55";
- when "00001001101011" => D <= x"56";
- when "00001001101100" => D <= x"57";
- when "00001001101101" => D <= x"58";
- when "00001001101110" => D <= x"59";
- when "00001001101111" => D <= x"5A";
- when "00001001110000" => D <= x"00";
- when "00001001110001" => D <= x"20";
- when "00001001110010" => D <= x"20";
- when "00001001110011" => D <= x"61";
- when "00001001110100" => D <= x"62";
- when "00001001110101" => D <= x"63";
- when "00001001110110" => D <= x"64";
- when "00001001110111" => D <= x"65";
- when "00001001111000" => D <= x"66";
- when "00001001111001" => D <= x"67";
- when "00001001111010" => D <= x"68";
- when "00001001111011" => D <= x"69";
- when "00001001111100" => D <= x"6A";
- when "00001001111101" => D <= x"6B";
- when "00001001111110" => D <= x"6C";
- when "00001001111111" => D <= x"6D";
- when "00001010000000" => D <= x"6E";
- when "00001010000001" => D <= x"6F";
- when "00001010000010" => D <= x"70";
- when "00001010000011" => D <= x"71";
- when "00001010000100" => D <= x"72";
- when "00001010000101" => D <= x"73";
- when "00001010000110" => D <= x"74";
- when "00001010000111" => D <= x"75";
- when "00001010001000" => D <= x"76";
- when "00001010001001" => D <= x"77";
- when "00001010001010" => D <= x"78";
- when "00001010001011" => D <= x"79";
- when "00001010001100" => D <= x"7A";
- when "00001010001101" => D <= x"00";
- when "00001010001110" => D <= x"20";
- when "00001010001111" => D <= x"20";
- when "00001010010000" => D <= x"20";
- when "00001010010001" => D <= x"20";
- when "00001010010010" => D <= x"20";
- when "00001010010011" => D <= x"20";
- when "00001010010100" => D <= x"20";
- when "00001010010101" => D <= x"20";
- when "00001010010110" => D <= x"20";
- when "00001010010111" => D <= x"30";
- when "00001010011000" => D <= x"31";
- when "00001010011001" => D <= x"32";
- when "00001010011010" => D <= x"33";
- when "00001010011011" => D <= x"34";
- when "00001010011100" => D <= x"35";
- when "00001010011101" => D <= x"36";
- when "00001010011110" => D <= x"37";
- when "00001010011111" => D <= x"38";
- when "00001010100000" => D <= x"39";
- when "00001010100001" => D <= x"00";
- when "00001010100010" => D <= x"02";
- when "00001010100011" => D <= x"03";
- when "00001010100100" => D <= x"04";
- when "00001010100101" => D <= x"0B";
- when "00001010100110" => D <= x"0C";
- when "00001010100111" => D <= x"0D";
- when "00001010101000" => D <= x"0E";
- when "00001010101001" => D <= x"12";
- when "00001010101010" => D <= x"18";
- when "00001010101011" => D <= x"19";
- when "00001010101100" => D <= x"1A";
- when "00001010101101" => D <= x"1B";
- when "00001010101110" => D <= x"E8";
- when "00001010101111" => D <= x"E9";
- when "00001010110000" => D <= x"EB";
- when "00001010110001" => D <= x"BB";
- when "00001010110010" => D <= x"BC";
- when "00001010110011" => D <= x"8A";
- when "00001010110100" => D <= x"86";
- when "00001010110101" => D <= x"87";
- when "00001010110110" => D <= x"81";
- when "00001010110111" => D <= x"80";
- when "00001010111000" => D <= x"01";
- when "00001010111001" => D <= x"06";
- when "00001010111010" => D <= x"07";
- when "00001010111011" => D <= x"08";
- when "00001010111100" => D <= x"09";
- when "00001010111101" => D <= x"0A";
- when "00001010111110" => D <= x"1D";
- when "00001010111111" => D <= x"1F";
- when "00001011000000" => D <= x"00";
- when "00001011000001" => D <= x"C9";
+ when "00001000011111" => D <= x"49";
+ when "00001000100000" => D <= x"56";
+ when "00001000100001" => D <= x"4F";
+ when "00001000100010" => D <= x"4E";
+ when "00001000100011" => D <= x"20";
+ when "00001000100100" => D <= x"43";
+ when "00001000100101" => D <= x"4F";
+ when "00001000100110" => D <= x"53";
+ when "00001000100111" => D <= x"54";
+ when "00001000101000" => D <= x"41";
+ when "00001000101001" => D <= x"20";
+ when "00001000101010" => D <= x"32";
+ when "00001000101011" => D <= x"30";
+ when "00001000101100" => D <= x"30";
+ when "00001000101101" => D <= x"38";
+ when "00001000101110" => D <= x"00";
+ when "00001000101111" => D <= x"20";
+ when "00001000110000" => D <= x"20";
+ when "00001000110001" => D <= x"7C";
+ when "00001000110010" => D <= x"21";
+ when "00001000110011" => D <= x"23";
+ when "00001000110100" => D <= x"24";
+ when "00001000110101" => D <= x"25";
+ when "00001000110110" => D <= x"26";
+ when "00001000110111" => D <= x"2F";
+ when "00001000111000" => D <= x"28";
+ when "00001000111001" => D <= x"29";
+ when "00001000111010" => D <= x"3D";
+ when "00001000111011" => D <= x"3F";
+ when "00001000111100" => D <= x"2A";
+ when "00001000111101" => D <= x"60";
+ when "00001000111110" => D <= x"2B";
+ when "00001000111111" => D <= x"B4";
+ when "00001001000000" => D <= x"E7";
+ when "00001001000001" => D <= x"7E";
+ when "00001001000010" => D <= x"5E";
+ when "00001001000011" => D <= x"2C";
+ when "00001001000100" => D <= x"2E";
+ when "00001001000101" => D <= x"3B";
+ when "00001001000110" => D <= x"3A";
+ when "00001001000111" => D <= x"5C";
+ when "00001001001000" => D <= x"3C";
+ when "00001001001001" => D <= x"3E";
+ when "00001001001010" => D <= x"00";
+ when "00001001001011" => D <= x"20";
+ when "00001001001100" => D <= x"20";
+ when "00001001001101" => D <= x"41";
+ when "00001001001110" => D <= x"42";
+ when "00001001001111" => D <= x"43";
+ when "00001001010000" => D <= x"44";
+ when "00001001010001" => D <= x"45";
+ when "00001001010010" => D <= x"46";
+ when "00001001010011" => D <= x"47";
+ when "00001001010100" => D <= x"48";
+ when "00001001010101" => D <= x"49";
+ when "00001001010110" => D <= x"4A";
+ when "00001001010111" => D <= x"4B";
+ when "00001001011000" => D <= x"4C";
+ when "00001001011001" => D <= x"4D";
+ when "00001001011010" => D <= x"4E";
+ when "00001001011011" => D <= x"4F";
+ when "00001001011100" => D <= x"50";
+ when "00001001011101" => D <= x"51";
+ when "00001001011110" => D <= x"52";
+ when "00001001011111" => D <= x"53";
+ when "00001001100000" => D <= x"54";
+ when "00001001100001" => D <= x"55";
+ when "00001001100010" => D <= x"56";
+ when "00001001100011" => D <= x"57";
+ when "00001001100100" => D <= x"58";
+ when "00001001100101" => D <= x"59";
+ when "00001001100110" => D <= x"5A";
+ when "00001001100111" => D <= x"00";
+ when "00001001101000" => D <= x"20";
+ when "00001001101001" => D <= x"20";
+ when "00001001101010" => D <= x"61";
+ when "00001001101011" => D <= x"62";
+ when "00001001101100" => D <= x"63";
+ when "00001001101101" => D <= x"64";
+ when "00001001101110" => D <= x"65";
+ when "00001001101111" => D <= x"66";
+ when "00001001110000" => D <= x"67";
+ when "00001001110001" => D <= x"68";
+ when "00001001110010" => D <= x"69";
+ when "00001001110011" => D <= x"6A";
+ when "00001001110100" => D <= x"6B";
+ when "00001001110101" => D <= x"6C";
+ when "00001001110110" => D <= x"6D";
+ when "00001001110111" => D <= x"6E";
+ when "00001001111000" => D <= x"6F";
+ when "00001001111001" => D <= x"70";
+ when "00001001111010" => D <= x"71";
+ when "00001001111011" => D <= x"72";
+ when "00001001111100" => D <= x"73";
+ when "00001001111101" => D <= x"74";
+ when "00001001111110" => D <= x"75";
+ when "00001001111111" => D <= x"76";
+ when "00001010000000" => D <= x"77";
+ when "00001010000001" => D <= x"78";
+ when "00001010000010" => D <= x"79";
+ when "00001010000011" => D <= x"7A";
+ when "00001010000100" => D <= x"00";
+ when "00001010000101" => D <= x"20";
+ when "00001010000110" => D <= x"20";
+ when "00001010000111" => D <= x"20";
+ when "00001010001000" => D <= x"20";
+ when "00001010001001" => D <= x"20";
+ when "00001010001010" => D <= x"20&qu |