mirror of
https://github.com/Gehstock/Mist_FPGA.git
synced 2026-03-08 03:29:26 +00:00
Add TIS Project Files
This commit is contained in:
@@ -0,0 +1,246 @@
|
||||
---------------------------------------------------------------------------------
|
||||
--
|
||||
-- Arcade: Burger Time for MiST by Gehstock
|
||||
-- 18 December 2017
|
||||
--
|
||||
---------------------------------------------------------------------------------
|
||||
-- Copyright (c) DAR - Dez 2017
|
||||
-- https://sourceforge.net/projects/darfpga/files/Software%20VHDL/burger_time/
|
||||
---------------------------------------------------------------------------------
|
||||
--
|
||||
-- Only controls are rotated on VGA output.
|
||||
--
|
||||
--
|
||||
-- Keyboard inputs :
|
||||
--
|
||||
-- ESC : Coin
|
||||
-- F1 : Start 1 player
|
||||
-- F2 : Start 2 players
|
||||
-- SPACE : Pepper
|
||||
-- LALT :
|
||||
-- ARROW KEYS : Movement
|
||||
--
|
||||
-- Joystick support.
|
||||
--
|
||||
---------------------------------------------------------------------------------
|
||||
|
||||
---------------------------------------------------------------------------------
|
||||
-- Burger Time by Dar (darfpga@aol.fr) (27/12/2017)
|
||||
-- http://darfpga.blogspot.fr
|
||||
---------------------------------------------------------------------------------
|
||||
-- Educational use only
|
||||
-- Do not redistribute synthetized file with roms
|
||||
-- Do not redistribute roms whatever the form
|
||||
-- Use at your own risk
|
||||
---------------------------------------------------------------------------------
|
||||
-- gen_ram.vhd & io_ps2_keyboard
|
||||
--------------------------------
|
||||
-- Copyright 2005-2008 by Peter Wendrich (pwsoft@syntiac.com)
|
||||
-- http://www.syntiac.com/fpga64.html
|
||||
---------------------------------------------------------------------------------
|
||||
-- T65(b) core.Ver 301 by MikeJ March 2005
|
||||
-- Latest version from www.fpgaarcade.com (original www.opencores.org)
|
||||
---------------------------------------------------------------------------------
|
||||
-- YM2149 (AY-3-8910)
|
||||
-- Copyright (c) MikeJ - Jan 2005
|
||||
---------------------------------------------------------------------------------
|
||||
-- Use burger_time_de10_lite.sdc to compile (Timequest constraints)
|
||||
-- /!\
|
||||
-- Don't forget to set device configuration mode with memory initialization
|
||||
-- (Assignments/Device/Pin options/Configuration mode)
|
||||
---------------------------------------------------------------------------------
|
||||
---------------------------------------------------------------------------------
|
||||
--
|
||||
-- Main features :
|
||||
-- PS2 keyboard input @gpio pins 35/34 (beware voltage translation/protection)
|
||||
-- Audio pwm output @gpio pins 1/3 (beware voltage translation/protection)
|
||||
--
|
||||
-- Uses 1 pll for 12MHz generation from 50MHz
|
||||
--
|
||||
-- Board key :
|
||||
-- 0 : reset game
|
||||
--
|
||||
-- Keyboard players inputs :
|
||||
--
|
||||
-- F3 : Add coin
|
||||
-- F2 : Start 2 players
|
||||
-- F1 : Start 1 player
|
||||
-- SPACE : pepper
|
||||
-- RIGHT arrow : move right
|
||||
-- LEFT arrow : move left
|
||||
-- UP arrow : move up
|
||||
-- DOWN arrow : move down
|
||||
--
|
||||
-- Other details : see burger_time.vhd
|
||||
-- For USB inputs and SGT5000 audio output see my other project: xevious_de10_lite
|
||||
---------------------------------------------------------------------------------
|
||||
-- Use burger_time_de10_lite.sdc to compile (Timequest constraints)
|
||||
-- /!\
|
||||
-- Don't forget to set device configuration mode with memory initialization
|
||||
-- (Assignments/Device/Pin options/Configuration mode)
|
||||
---------------------------------------------------------------------------------
|
||||
---------------------------------------------------------------------------------
|
||||
-- Features :
|
||||
-- TV 15KHz mode only (atm)
|
||||
-- Coctail mode ok
|
||||
-- Sound ok
|
||||
-- No external RAM/SDRAM required
|
||||
|
||||
-- Use with MAME roms from btime.zip
|
||||
--
|
||||
-- Use make_burger_time_proms.bat to build vhd file from binaries
|
||||
|
||||
-- Burger Time Hardware caracteristics :
|
||||
--
|
||||
-- VIDEO : 1x6502@750kHz CPU accessing its program rom, working ram,
|
||||
-- foreground and sprite data ram, I/O, sound board register and trigger.
|
||||
-- 16Kx8bits program rom
|
||||
-- 2Kb8bits working ram
|
||||
--
|
||||
-- One char 8x8 tile map 32x30 + sprites data
|
||||
-- 1Kx8bits + 1Kx2bits
|
||||
-- 3x8Kx8bits graphics rom 3bits/pixel
|
||||
-- 8 colors with ram palette
|
||||
--
|
||||
-- 8 sprites 16*16 with priorities and flip H/V
|
||||
-- use char graphics rom and colors
|
||||
--
|
||||
-- Char/sprites 8 colors among 256 colors
|
||||
-- 8bits 3red/3green/2blue
|
||||
--
|
||||
-- Sprites buffer rams 3x256bits
|
||||
--
|
||||
-- Background static tile map with scroll
|
||||
-- 2K*8bits tile map rom
|
||||
-- 3x2K*8bits graphics rom 3bits/pixel
|
||||
-- 8 colors with ram palette
|
||||
-- 16x16 tiles
|
||||
--
|
||||
-- SOUND : 1x6502@500kHz CPU accessing its program rom, working ram, 2x-AY3-8910,
|
||||
-- command registers, triggers.
|
||||
-- 2Kx8bits working ram
|
||||
-- 4Kx8bits program rom
|
||||
--
|
||||
-- 1xAY-3-8910
|
||||
-- 3 sound channels
|
||||
-- 1xAY-3-8910
|
||||
-- 3 sound channels
|
||||
--
|
||||
-- Pass band active filter on channel A of AY#2
|
||||
--
|
||||
+----------------------------------------------------------------------------------+
|
||||
; Fitter Summary ;
|
||||
+------------------------------------+---------------------------------------------+
|
||||
; Fitter Status ; Successful - Wed Dec 27 10:02:23 2017 ;
|
||||
; Quartus Prime Version ; 16.1.0 Build 196 10/24/2016 SJ Lite Edition ;
|
||||
; Revision Name ; burger_time_de10_lite ;
|
||||
; Top-level Entity Name ; burger_time_de10_lite ;
|
||||
; Family ; MAX 10 ;
|
||||
; Device ; 10M50DAF484C6GES ;
|
||||
; Timing Models ; Preliminary ;
|
||||
; Total logic elements ; 3,540 / 49,760 ( 7 % ) ;
|
||||
; Total combinational functions ; 3,382 / 49,760 ( 7 % ) ;
|
||||
; Dedicated logic registers ; 1,090 / 49,760 ( 2 % ) ;
|
||||
; Total registers ; 1090 ;
|
||||
; Total pins ; 105 / 360 ( 29 % ) ;
|
||||
; Total virtual pins ; 0 ;
|
||||
; Total memory bits ; 465,792 / 1,677,312 ( 28 % ) ;
|
||||
; Embedded Multiplier 9-bit elements ; 0 / 288 ( 0 % ) ;
|
||||
; Total PLLs ; 1 / 4 ( 25 % ) ;
|
||||
; UFM blocks ; 0 / 1 ( 0 % ) ;
|
||||
; ADC blocks ; 0 / 2 ( 0 % ) ;
|
||||
+------------------------------------+---------------------------------------------+
|
||||
|
||||
---------------
|
||||
VHDL File list
|
||||
---------------
|
||||
|
||||
max10_pll_12M.vhd Pll 12MHz and 14 MHz from 50MHz altera mf
|
||||
|
||||
rtl_dar/burger_time_de10_lite.vhd Top level for de10_lite board
|
||||
|
||||
rtl_dar/burger_time.vhd Main video board logic
|
||||
rtl_dar/burger_time_sound.vhd Main sound board logic
|
||||
|
||||
rtl_mikej/YM2149_linmix_sep.vhd Copyright (c) MikeJ - Jan 2005
|
||||
|
||||
t65/T65.vhd Copyright (c) MikeJ - Jan 2005t65/T65_Pack.vhdt65/T65_MCode.vhdt65/T65_ALU.vhd
|
||||
rtl_dar/kbd_joystick.vhd Keyboard key to player/coin input
|
||||
rtl_dar/io_ps2_keyboard.vhd Copyright 2005-2008 by Peter Wendrich (pwsoft@syntiac.com)
|
||||
rtl_dar/gen_ram.vhd Generic RAM (Peter Wendrich + DAR Modification)
|
||||
rtl_dar/decodeur_7_seg.vhd 7 segments display decoder
|
||||
|
||||
burger_time_prog.vhd Burger Time video board PROMs
|
||||
fg_sp_graphx_3.vhd
|
||||
fg_sp_graphx_2.vhd
|
||||
fg_sp_graphx_1.vhd
|
||||
bg_map.vhd
|
||||
bg_graphx_3.vhd
|
||||
bg_graphx_2.vhd
|
||||
bg_graphx_1.vhd
|
||||
|
||||
burger_time_sound_prog.vhd Burger Time sound board PROM
|
||||
|
||||
----------------------
|
||||
Quartus project files
|
||||
----------------------
|
||||
de10_lite/burger_time_de10_lite.sdc Timequest constraints file
|
||||
de10_lite/burger_time_de10_lite.qsf de10_lite settings (files,pins...)
|
||||
de10_lite/burger_time_de10_lite.qpf de10_lite project
|
||||
|
||||
-----------------------------
|
||||
Required ROMs (Not included)
|
||||
-----------------------------
|
||||
You need the following 15 ROMs binary files from btime.zip (MAME)
|
||||
|
||||
aa04.9b, aa06.13b, aa05.10b, aa07.15b
|
||||
aa12.7k, ab13.9k
|
||||
ab10.10k, ab11.12k
|
||||
aa8.13k, ab9.15k
|
||||
ab00.1b
|
||||
ab01.3b
|
||||
ab02.4b
|
||||
ab03.6b
|
||||
ab14.12h
|
||||
|
||||
------
|
||||
Tools
|
||||
------
|
||||
You need to build vhdl files from the binary file :
|
||||
- Unzip the roms file in the tools/burger_time_unzip directory
|
||||
- Double click (execute) the script tools/make_burger_time_proms.bat to get the following files
|
||||
|
||||
burger_time_prog.vhd : aa04.9b + aa06.13b + aa05.10b + aa07.15b
|
||||
fg_sp_graphx_1.vhd : aa12.7k + ab13.9k
|
||||
fg_sp_graphx_2.vhd : ab10.10k + ab11.12k
|
||||
fg_sp_graphx_3.vhd : aa8.13k + ab9.15k
|
||||
bg_graphx_1.vhd : ab00.1b
|
||||
bg_graphx_2.vhd : ab01.3b
|
||||
bg_graphx_3.vhd : ab02.4b
|
||||
bg_map.vhd : ab03.6b
|
||||
burger_time_sound_prog.vhd : ab14.12h
|
||||
|
||||
*DO NOT REDISTRIBUTE THESE FILES*
|
||||
|
||||
VHDL files are needed to compile and include roms into the project
|
||||
|
||||
The script make_burger_time_proms.bat uses make_vhdl_prom executables delivered both in linux and windows version. The script itself is delivered only in windows version (.bat) but should be easily ported to linux.
|
||||
|
||||
Source code of make_vhdl_prom.c is also delivered.
|
||||
|
||||
---------------------------------
|
||||
Compiling for de10_lite
|
||||
---------------------------------
|
||||
You can build the project with ROM image embeded in the sof file.
|
||||
*DO NOT REDISTRIBUTE THESE FILES*
|
||||
|
||||
3 steps
|
||||
|
||||
- put the VHDL ROM files (.vhd) into the rtl_dar directory
|
||||
- build burger_time_de10_lite
|
||||
- program burger_time_de10_lite.sof
|
||||
|
||||
------------------------
|
||||
------------------------
|
||||
End of file
|
||||
------------------------
|
||||
@@ -0,0 +1,32 @@
|
||||
void btime_state::btime_map(address_map &map)
|
||||
{
|
||||
map(0x0000, 0x07ff).ram().share("rambase");
|
||||
map(0x0c00, 0x0c0f).ram().w(m_palette, FUNC(palette_device::write8)).share("palette");
|
||||
map(0x1000, 0x13ff).ram().share("videoram");
|
||||
map(0x1400, 0x17ff).ram().share("colorram");
|
||||
map(0x1800, 0x1bff).rw(FUNC(btime_state::btime_mirrorvideoram_r), FUNC(btime_state::btime_mirrorvideoram_w));
|
||||
map(0x1c00, 0x1fff).rw(FUNC(btime_state::btime_mirrorcolorram_r), FUNC(btime_state::btime_mirrorcolorram_w));
|
||||
map(0x4000, 0x4000).portr("P1").nopw();
|
||||
map(0x4001, 0x4001).portr("P2");
|
||||
map(0x4002, 0x4002).portr("SYSTEM").w(FUNC(btime_state::btime_video_control_w));
|
||||
map(0x4003, 0x4003).portr("DSW1").w(m_soundlatch, FUNC(generic_latch_8_device::write));
|
||||
map(0x4004, 0x4004).portr("DSW2").w(FUNC(btime_state::bnj_scroll1_w));
|
||||
map(0xb000, 0xffff).rom();
|
||||
}
|
||||
|
||||
void btime_state::tisland_map(address_map &map)
|
||||
{
|
||||
map(0x0000, 0x07ff).ram().share("rambase");
|
||||
map(0x0c00, 0x0c0f).ram().w(m_palette, FUNC(palette_device::write8)).share("palette");
|
||||
map(0x1000, 0x13ff).ram().share("videoram");
|
||||
map(0x1400, 0x17ff).ram().share("colorram");
|
||||
map(0x1800, 0x1bff).rw(FUNC(btime_state::btime_mirrorvideoram_r), FUNC(btime_state::btime_mirrorvideoram_w));
|
||||
map(0x1c00, 0x1fff).rw(FUNC(btime_state::btime_mirrorcolorram_r), FUNC(btime_state::btime_mirrorcolorram_w));
|
||||
map(0x4000, 0x4000).portr("P1").nopw();
|
||||
map(0x4001, 0x4001).portr("P2");
|
||||
map(0x4002, 0x4002).portr("SYSTEM").w(FUNC(btime_state::btime_video_control_w));
|
||||
map(0x4003, 0x4003).portr("DSW1").w(m_soundlatch, FUNC(generic_latch_8_device::write));
|
||||
map(0x4004, 0x4004).portr("DSW2").w(FUNC(btime_state::bnj_scroll1_w));
|
||||
map(0x4005, 0x4005).w(FUNC(btime_state::bnj_scroll2_w));
|
||||
map(0x9000, 0xffff).rom();
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
# -------------------------------------------------------------------------- #
|
||||
#
|
||||
# Copyright (C) 2016 Intel Corporation. All rights reserved.
|
||||
# Your use of Intel Corporation's design tools, logic functions
|
||||
# and other software and tools, and its AMPP partner logic
|
||||
# functions, and any output files from any of the foregoing
|
||||
# (including device programming or simulation files), and any
|
||||
# associated documentation or information are expressly subject
|
||||
# to the terms and conditions of the Intel Program License
|
||||
# Subscription Agreement, the Intel Quartus Prime License Agreement,
|
||||
# the Intel MegaCore Function License Agreement, or other
|
||||
# applicable license agreement, including, without limitation,
|
||||
# that your use is for the sole purpose of programming logic
|
||||
# devices manufactured by Intel and sold by Intel or its
|
||||
# authorized distributors. Please refer to the applicable
|
||||
# agreement for further details.
|
||||
#
|
||||
# -------------------------------------------------------------------------- #
|
||||
#
|
||||
# Quartus Prime
|
||||
# Version 16.1.0 Build 196 10/24/2016 SJ Lite Edition
|
||||
# Date created = 21:51:49 December 06, 2017
|
||||
#
|
||||
# -------------------------------------------------------------------------- #
|
||||
|
||||
QUARTUS_VERSION = "16.1"
|
||||
DATE = "21:51:49 December 06, 2017"
|
||||
|
||||
# Revisions
|
||||
|
||||
PROJECT_REVISION = "Treasure_Island"
|
||||
@@ -0,0 +1,210 @@
|
||||
# -------------------------------------------------------------------------- #
|
||||
#
|
||||
# Copyright (C) 1991-2014 Altera Corporation
|
||||
# Your use of Altera Corporation's design tools, logic functions
|
||||
# and other software and tools, and its AMPP partner logic
|
||||
# functions, and any output files from any of the foregoing
|
||||
# (including device programming or simulation files), and any
|
||||
# associated documentation or information are expressly subject
|
||||
# to the terms and conditions of the Altera Program License
|
||||
# Subscription Agreement, Altera MegaCore Function License
|
||||
# Agreement, or other applicable license agreement, including,
|
||||
# without limitation, that your use is for the sole purpose of
|
||||
# programming logic devices manufactured by Altera and sold by
|
||||
# Altera or its authorized distributors. Please refer to the
|
||||
# applicable agreement for further details.
|
||||
#
|
||||
# -------------------------------------------------------------------------- #
|
||||
#
|
||||
# Quartus II 64-Bit
|
||||
# Version 13.1.4 Build 182 03/12/2014 SJ Full Version
|
||||
# Date created = 09:56:31 May 18, 2021
|
||||
#
|
||||
# -------------------------------------------------------------------------- #
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
# 1) The default values for assignments are stored in the file:
|
||||
# Treasure_Island_assignment_defaults.qdf
|
||||
# If this file doesn't exist, see file:
|
||||
# assignment_defaults.qdf
|
||||
#
|
||||
# 2) Altera recommends that you do not modify this file. This
|
||||
# file is updated automatically by the Quartus II software
|
||||
# and any changes you make may be lost or overwritten.
|
||||
#
|
||||
# -------------------------------------------------------------------------- #
|
||||
|
||||
|
||||
|
||||
# Project-Wide Assignments
|
||||
# ========================
|
||||
set_global_assignment -name ORIGINAL_QUARTUS_VERSION 15.1.0
|
||||
set_global_assignment -name PROJECT_CREATION_TIME_DATE "17:45:13 JUNE 17,2016"
|
||||
set_global_assignment -name LAST_QUARTUS_VERSION 13.1
|
||||
set_global_assignment -name PROJECT_OUTPUT_DIRECTORY output_files
|
||||
set_global_assignment -name PRE_FLOW_SCRIPT_FILE "quartus_sh:rtl/build_id.tcl"
|
||||
set_global_assignment -name SYSTEMVERILOG_FILE rtl/Treasure_Island.sv
|
||||
set_global_assignment -name VHDL_FILE rtl/Treasure_Island_Top.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/Treasure_Island_Sound.vhd
|
||||
set_global_assignment -name VERILOG_FILE rtl/keyboard.v
|
||||
set_global_assignment -name VHDL_FILE rtl/gen_ram.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/Roms/prog.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/Roms/sound_prog.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/Roms/bg_map.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/Roms/fg_sp_graphx_1.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/Roms/fg_sp_graphx_2.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/Roms/fg_sp_graphx_3.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/Roms/bg_graphx_1.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/Roms/bg_graphx_2.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/Roms/bg_graphx_3.vhd
|
||||
set_global_assignment -name QIP_FILE ../../../Mist_FPGA/common/CPU/T65/T65.qip
|
||||
set_global_assignment -name QIP_FILE ../../../Mist_FPGA/common/mist/mist.qip
|
||||
set_global_assignment -name VHDL_FILE ../../../Mist_FPGA/common/Sound/ym2149/YM2149.vhd
|
||||
set_global_assignment -name VHDL_FILE ../../../Mist_FPGA/common/Sound/ym2149/vol_table_array.vhd
|
||||
set_global_assignment -name SYSTEMVERILOG_FILE rtl/sdram.sv
|
||||
|
||||
# Pin & Location Assignments
|
||||
# ==========================
|
||||
set_location_assignment PIN_7 -to LED
|
||||
set_location_assignment PIN_54 -to CLOCK_27
|
||||
set_location_assignment PIN_144 -to VGA_R[5]
|
||||
set_location_assignment PIN_143 -to VGA_R[4]
|
||||
set_location_assignment PIN_142 -to VGA_R[3]
|
||||
set_location_assignment PIN_141 -to VGA_R[2]
|
||||
set_location_assignment PIN_137 -to VGA_R[1]
|
||||
set_location_assignment PIN_135 -to VGA_R[0]
|
||||
set_location_assignment PIN_133 -to VGA_B[5]
|
||||
set_location_assignment PIN_132 -to VGA_B[4]
|
||||
set_location_assignment PIN_125 -to VGA_B[3]
|
||||
set_location_assignment PIN_121 -to VGA_B[2]
|
||||
set_location_assignment PIN_120 -to VGA_B[1]
|
||||
set_location_assignment PIN_115 -to VGA_B[0]
|
||||
set_location_assignment PIN_114 -to VGA_G[5]
|
||||
set_location_assignment PIN_113 -to VGA_G[4]
|
||||
set_location_assignment PIN_112 -to VGA_G[3]
|
||||
set_location_assignment PIN_111 -to VGA_G[2]
|
||||
set_location_assignment PIN_110 -to VGA_G[1]
|
||||
set_location_assignment PIN_106 -to VGA_G[0]
|
||||
set_location_assignment PIN_136 -to VGA_VS
|
||||
set_location_assignment PIN_119 -to VGA_HS
|
||||
set_location_assignment PIN_65 -to AUDIO_L
|
||||
set_location_assignment PIN_80 -to AUDIO_R
|
||||
set_location_assignment PIN_105 -to SPI_DO
|
||||
set_location_assignment PIN_88 -to SPI_DI
|
||||
set_location_assignment PIN_126 -to SPI_SCK
|
||||
set_location_assignment PIN_127 -to SPI_SS2
|
||||
set_location_assignment PIN_91 -to SPI_SS3
|
||||
set_location_assignment PIN_13 -to CONF_DATA0
|
||||
set_location_assignment PIN_49 -to SDRAM_A[0]
|
||||
set_location_assignment PIN_44 -to SDRAM_A[1]
|
||||
set_location_assignment PIN_42 -to SDRAM_A[2]
|
||||
set_location_assignment PIN_39 -to SDRAM_A[3]
|
||||
set_location_assignment PIN_4 -to SDRAM_A[4]
|
||||
set_location_assignment PIN_6 -to SDRAM_A[5]
|
||||
set_location_assignment PIN_8 -to SDRAM_A[6]
|
||||
set_location_assignment PIN_10 -to SDRAM_A[7]
|
||||
set_location_assignment PIN_11 -to SDRAM_A[8]
|
||||
set_location_assignment PIN_28 -to SDRAM_A[9]
|
||||
set_location_assignment PIN_50 -to SDRAM_A[10]
|
||||
set_location_assignment PIN_30 -to SDRAM_A[11]
|
||||
set_location_assignment PIN_32 -to SDRAM_A[12]
|
||||
set_location_assignment PIN_83 -to SDRAM_DQ[0]
|
||||
set_location_assignment PIN_79 -to SDRAM_DQ[1]
|
||||
set_location_assignment PIN_77 -to SDRAM_DQ[2]
|
||||
set_location_assignment PIN_76 -to SDRAM_DQ[3]
|
||||
set_location_assignment PIN_72 -to SDRAM_DQ[4]
|
||||
set_location_assignment PIN_71 -to SDRAM_DQ[5]
|
||||
set_location_assignment PIN_69 -to SDRAM_DQ[6]
|
||||
set_location_assignment PIN_68 -to SDRAM_DQ[7]
|
||||
set_location_assignment PIN_86 -to SDRAM_DQ[8]
|
||||
set_location_assignment PIN_87 -to SDRAM_DQ[9]
|
||||
set_location_assignment PIN_98 -to SDRAM_DQ[10]
|
||||
set_location_assignment PIN_99 -to SDRAM_DQ[11]
|
||||
set_location_assignment PIN_100 -to SDRAM_DQ[12]
|
||||
set_location_assignment PIN_101 -to SDRAM_DQ[13]
|
||||
set_location_assignment PIN_103 -to SDRAM_DQ[14]
|
||||
set_location_assignment PIN_104 -to SDRAM_DQ[15]
|
||||
set_location_assignment PIN_58 -to SDRAM_BA[0]
|
||||
set_location_assignment PIN_51 -to SDRAM_BA[1]
|
||||
set_location_assignment PIN_85 -to SDRAM_DQMH
|
||||
set_location_assignment PIN_67 -to SDRAM_DQML
|
||||
set_location_assignment PIN_60 -to SDRAM_nRAS
|
||||
set_location_assignment PIN_64 -to SDRAM_nCAS
|
||||
set_location_assignment PIN_66 -to SDRAM_nWE
|
||||
set_location_assignment PIN_59 -to SDRAM_nCS
|
||||
set_location_assignment PIN_33 -to SDRAM_CKE
|
||||
set_location_assignment PIN_43 -to SDRAM_CLK
|
||||
set_location_assignment PIN_31 -to UART_RX
|
||||
set_location_assignment PIN_46 -to UART_TX
|
||||
set_location_assignment PLL_1 -to "pll:pll|altpll:altpll_component"
|
||||
|
||||
# Classic Timing Assignments
|
||||
# ==========================
|
||||
set_global_assignment -name MIN_CORE_JUNCTION_TEMP 0
|
||||
set_global_assignment -name MAX_CORE_JUNCTION_TEMP 85
|
||||
|
||||
# Analysis & Synthesis Assignments
|
||||
# ================================
|
||||
set_global_assignment -name FAMILY "Cyclone III"
|
||||
set_global_assignment -name TOP_LEVEL_ENTITY Treasure_Island
|
||||
set_global_assignment -name DEVICE_FILTER_PIN_COUNT 144
|
||||
set_global_assignment -name DEVICE_FILTER_SPEED_GRADE 8
|
||||
|
||||
# Fitter Assignments
|
||||
# ==================
|
||||
set_global_assignment -name DEVICE EP3C25E144C8
|
||||
set_global_assignment -name CYCLONEIII_CONFIGURATION_SCHEME "PASSIVE SERIAL"
|
||||
set_global_assignment -name CRC_ERROR_OPEN_DRAIN OFF
|
||||
set_global_assignment -name FORCE_CONFIGURATION_VCCIO ON
|
||||
set_global_assignment -name STRATIX_DEVICE_IO_STANDARD "3.3-V LVTTL"
|
||||
set_global_assignment -name CYCLONEII_RESERVE_NCEO_AFTER_CONFIGURATION "USE AS REGULAR IO"
|
||||
set_global_assignment -name RESERVE_DATA0_AFTER_CONFIGURATION "USE AS REGULAR IO"
|
||||
set_global_assignment -name RESERVE_DATA1_AFTER_CONFIGURATION "USE AS REGULAR IO"
|
||||
set_global_assignment -name RESERVE_DATA7_THROUGH_DATA2_AFTER_CONFIGURATION "USE AS REGULAR IO"
|
||||
set_global_assignment -name RESERVE_FLASH_NCE_AFTER_CONFIGURATION "USE AS REGULAR IO"
|
||||
set_global_assignment -name RESERVE_OTHER_AP_PINS_AFTER_CONFIGURATION "USE AS REGULAR IO"
|
||||
set_global_assignment -name RESERVE_DCLK_AFTER_CONFIGURATION "USE AS REGULAR IO"
|
||||
|
||||
# Assembler Assignments
|
||||
# =====================
|
||||
set_global_assignment -name USE_CONFIGURATION_DEVICE OFF
|
||||
set_global_assignment -name GENERATE_RBF_FILE ON
|
||||
|
||||
# SignalTap II Assignments
|
||||
# ========================
|
||||
set_global_assignment -name ENABLE_SIGNALTAP OFF
|
||||
set_global_assignment -name USE_SIGNALTAP_FILE stp1.stp
|
||||
|
||||
# Power Estimation Assignments
|
||||
# ============================
|
||||
set_global_assignment -name POWER_PRESET_COOLING_SOLUTION "23 MM HEAT SINK WITH 200 LFPM AIRFLOW"
|
||||
set_global_assignment -name POWER_BOARD_THERMAL_MODEL "NONE (CONSERVATIVE)"
|
||||
|
||||
# Advanced I/O Timing Assignments
|
||||
# ===============================
|
||||
set_global_assignment -name OUTPUT_IO_TIMING_NEAR_END_VMEAS "HALF VCCIO" -rise
|
||||
set_global_assignment -name OUTPUT_IO_TIMING_NEAR_END_VMEAS "HALF VCCIO" -fall
|
||||
set_global_assignment -name OUTPUT_IO_TIMING_FAR_END_VMEAS "HALF SIGNAL SWING" -rise
|
||||
set_global_assignment -name OUTPUT_IO_TIMING_FAR_END_VMEAS "HALF SIGNAL SWING" -fall
|
||||
|
||||
# -----------------------------
|
||||
# start ENTITY(Treasure_Island)
|
||||
|
||||
# start DESIGN_PARTITION(Top)
|
||||
# ---------------------------
|
||||
|
||||
# Incremental Compilation Assignments
|
||||
# ===================================
|
||||
set_global_assignment -name PARTITION_NETLIST_TYPE SOURCE -section_id Top
|
||||
set_global_assignment -name PARTITION_FITTER_PRESERVATION_LEVEL PLACEMENT_AND_ROUTING -section_id Top
|
||||
set_global_assignment -name PARTITION_COLOR 16764057 -section_id Top
|
||||
|
||||
# end DESIGN_PARTITION(Top)
|
||||
# -------------------------
|
||||
|
||||
# end ENTITY(Treasure_Island)
|
||||
# ---------------------------
|
||||
set_global_assignment -name TEXT_FILE Text1.txt
|
||||
set_global_assignment -name VERILOG_FILE rtl/pll.v
|
||||
set_instance_assignment -name PARTITION_HIERARCHY root_partition -to | -section_id Top
|
||||
@@ -0,0 +1,135 @@
|
||||
## Generated SDC file "vectrex_MiST.out.sdc"
|
||||
|
||||
## Copyright (C) 1991-2013 Altera Corporation
|
||||
## Your use of Altera Corporation's design tools, logic functions
|
||||
## and other software and tools, and its AMPP partner logic
|
||||
## functions, and any output files from any of the foregoing
|
||||
## (including device programming or simulation files), and any
|
||||
## associated documentation or information are expressly subject
|
||||
## to the terms and conditions of the Altera Program License
|
||||
## Subscription Agreement, Altera MegaCore Function License
|
||||
## Agreement, or other applicable license agreement, including,
|
||||
## without limitation, that your use is for the sole purpose of
|
||||
## programming logic devices manufactured by Altera and sold by
|
||||
## Altera or its authorized distributors. Please refer to the
|
||||
## applicable agreement for further details.
|
||||
|
||||
|
||||
## VENDOR "Altera"
|
||||
## PROGRAM "Quartus II"
|
||||
## VERSION "Version 13.1.0 Build 162 10/23/2013 SJ Web Edition"
|
||||
|
||||
## DATE "Sun Jun 24 12:53:00 2018"
|
||||
|
||||
##
|
||||
## DEVICE "EP3C25E144C8"
|
||||
##
|
||||
|
||||
# Clock constraints
|
||||
|
||||
# Automatically constrain PLL and other generated clocks
|
||||
derive_pll_clocks -create_base_clocks
|
||||
|
||||
# Automatically calculate clock uncertainty to jitter and other effects.
|
||||
derive_clock_uncertainty
|
||||
|
||||
# tsu/th constraints
|
||||
|
||||
# tco constraints
|
||||
|
||||
# tpd constraints
|
||||
|
||||
#**************************************************************
|
||||
# Time Information
|
||||
#**************************************************************
|
||||
|
||||
set_time_format -unit ns -decimal_places 3
|
||||
|
||||
|
||||
|
||||
#**************************************************************
|
||||
# Create Clock
|
||||
#**************************************************************
|
||||
|
||||
create_clock -name {SPI_SCK} -period 41.666 -waveform { 20.8 41.666 } [get_ports {SPI_SCK}]
|
||||
|
||||
set sys_clk "pll|altpll_component|auto_generated|pll1|clk[0]"
|
||||
set vid_clk "pll|altpll_component|auto_generated|pll1|clk[1]"
|
||||
set sdram_clk "pll|altpll_component|auto_generated|pll1|clk[1]"
|
||||
#**************************************************************
|
||||
# Create Generated Clock
|
||||
#**************************************************************
|
||||
|
||||
|
||||
#**************************************************************
|
||||
# Set Clock Latency
|
||||
#**************************************************************
|
||||
|
||||
|
||||
|
||||
#**************************************************************
|
||||
# Set Clock Uncertainty
|
||||
#**************************************************************
|
||||
|
||||
#**************************************************************
|
||||
# Set Input Delay
|
||||
#**************************************************************
|
||||
|
||||
set_input_delay -add_delay -clock_fall -clock [get_clocks {CLOCK_27}] 1.000 [get_ports {CLOCK_27}]
|
||||
set_input_delay -add_delay -clock_fall -clock [get_clocks {SPI_SCK}] 1.000 [get_ports {CONF_DATA0}]
|
||||
set_input_delay -add_delay -clock_fall -clock [get_clocks {SPI_SCK}] 1.000 [get_ports {SPI_DI}]
|
||||
set_input_delay -add_delay -clock_fall -clock [get_clocks {SPI_SCK}] 1.000 [get_ports {SPI_SCK}]
|
||||
set_input_delay -add_delay -clock_fall -clock [get_clocks {SPI_SCK}] 1.000 [get_ports {SPI_SS2}]
|
||||
set_input_delay -add_delay -clock_fall -clock [get_clocks {SPI_SCK}] 1.000 [get_ports {SPI_SS3}]
|
||||
|
||||
#set_input_delay -clock [get_clocks $sdram_clk] -reference_pin [get_ports {SDRAM_CLK}] -max 6.6 [get_ports SDRAM_DQ[*]]
|
||||
#set_input_delay -clock [get_clocks $sdram_clk] -reference_pin [get_ports {SDRAM_CLK}] -min 3.5 [get_ports SDRAM_DQ[*]]
|
||||
|
||||
#**************************************************************
|
||||
# Set Output Delay
|
||||
#**************************************************************
|
||||
|
||||
set_output_delay -add_delay -clock_fall -clock [get_clocks {SPI_SCK}] 1.000 [get_ports {SPI_DO}]
|
||||
set_output_delay -add_delay -clock_fall -clock [get_clocks $sys_clk] 1.000 [get_ports {AUDIO_L}]
|
||||
set_output_delay -add_delay -clock_fall -clock [get_clocks $sys_clk] 1.000 [get_ports {AUDIO_R}]
|
||||
set_output_delay -add_delay -clock_fall -clock [get_clocks $sys_clk] 1.000 [get_ports {LED}]
|
||||
set_output_delay -add_delay -clock_fall -clock [get_clocks $vid_clk] 1.000 [get_ports {VGA_*}]
|
||||
|
||||
#set_output_delay -clock [get_clocks $sdram_clk] -reference_pin [get_ports {SDRAM_CLK}] -max 1.5 [get_ports {SDRAM_D* SDRAM_A* SDRAM_BA* SDRAM_n* SDRAM_CKE}]
|
||||
#set_output_delay -clock [get_clocks $sdram_clk] -reference_pin [get_ports {SDRAM_CLK}] -min -0.8 [get_ports {SDRAM_D* SDRAM_A* SDRAM_BA* SDRAM_n* SDRAM_CKE}]
|
||||
|
||||
#**************************************************************
|
||||
# Set Clock Groups
|
||||
#**************************************************************
|
||||
|
||||
set_clock_groups -asynchronous -group [get_clocks {SPI_SCK}] -group [get_clocks {pll|altpll_component|auto_generated|pll1|clk[*]}]
|
||||
|
||||
#**************************************************************
|
||||
# Set False Path
|
||||
#**************************************************************
|
||||
|
||||
|
||||
|
||||
#**************************************************************
|
||||
# Set Multicycle Path
|
||||
#**************************************************************
|
||||
|
||||
set_multicycle_path -to {VGA_*[*]} -setup 2
|
||||
set_multicycle_path -to {VGA_*[*]} -hold 1
|
||||
|
||||
#**************************************************************
|
||||
# Set Maximum Delay
|
||||
#**************************************************************
|
||||
|
||||
|
||||
|
||||
#**************************************************************
|
||||
# Set Minimum Delay
|
||||
#**************************************************************
|
||||
|
||||
|
||||
|
||||
#**************************************************************
|
||||
# Set Input Transition
|
||||
#**************************************************************
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
@echo off
|
||||
del /s *.bak
|
||||
del /s *.orig
|
||||
del /s *.rej
|
||||
rmdir /s /q db
|
||||
rmdir /s /q incremental_db
|
||||
rmdir /s /q output_files
|
||||
rmdir /s /q simulation
|
||||
rmdir /s /q greybox_tmp
|
||||
del PLLJ_PLLSPE_INFO.txt
|
||||
del *.qws
|
||||
del *.ppf
|
||||
del *.qip
|
||||
del *.ddb
|
||||
pause
|
||||
@@ -0,0 +1,150 @@
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all,ieee.numeric_std.all;
|
||||
|
||||
entity bg_graphx_1 is
|
||||
port (
|
||||
clk : in std_logic;
|
||||
addr : in std_logic_vector(10 downto 0);
|
||||
data : out std_logic_vector(7 downto 0)
|
||||
);
|
||||
end entity;
|
||||
|
||||
architecture prom of bg_graphx_1 is
|
||||
type rom is array(0 to 2047) of std_logic_vector(7 downto 0);
|
||||
signal rom_data: rom := (
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"08",X"00",X"00",X"80",X"80",X"81",X"81",X"80",X"80",X"00",X"00",X"08",X"00",X"00",
|
||||
X"FC",X"FC",X"FC",X"FC",X"FC",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FC",X"FC",X"FC",X"FC",X"FC",
|
||||
X"00",X"FB",X"FD",X"FB",X"F7",X"F7",X"FF",X"0F",X"1F",X"FF",X"BF",X"BF",X"BF",X"3F",X"7F",X"FF",
|
||||
X"FF",X"FE",X"FC",X"FE",X"FD",X"FD",X"FF",X"F8",X"F0",X"FF",X"EF",X"EF",X"EF",X"9F",X"7E",X"00",
|
||||
X"FF",X"3F",X"BF",X"7F",X"BF",X"BF",X"FF",X"1F",X"0F",X"FF",X"F7",X"F7",X"F7",X"FB",X"7B",X"00",
|
||||
X"00",X"7F",X"9F",X"EF",X"EF",X"EF",X"FF",X"F0",X"F8",X"FF",X"FD",X"FD",X"FE",X"FC",X"FF",X"FF",
|
||||
X"00",X"FD",X"FD",X"FB",X"F7",X"EF",X"EF",X"F7",X"F7",X"CF",X"BF",X"BF",X"7F",X"7F",X"FF",X"FF",
|
||||
X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FE",X"00",
|
||||
X"FE",X"FE",X"FE",X"FE",X"FE",X"FD",X"FD",X"FD",X"FD",X"FD",X"FB",X"E7",X"F7",X"CF",X"BF",X"80",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"7F",X"7F",X"7F",X"FF",X"FF",X"3F",X"DF",X"DF",X"EF",X"EF",X"F7",X"FB",X"FD",X"00",
|
||||
X"00",X"FE",X"FF",X"FF",X"FF",X"FE",X"FE",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"00",
|
||||
X"80",X"BF",X"BF",X"DF",X"DF",X"EF",X"DF",X"EF",X"F7",X"F7",X"FB",X"FB",X"F9",X"FE",X"FE",X"FE",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"80",X"80",X"C0",X"E0",X"E0",X"F0",X"F8",X"FC",X"F8",X"F8",X"FC",X"FC",X"FC",X"FE",
|
||||
X"00",X"00",X"80",X"C0",X"E0",X"F8",X"F0",X"F0",X"F8",X"F8",X"FC",X"F8",X"FC",X"FC",X"FE",X"FE",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"FE",X"FC",X"FE",X"FC",X"F8",X"F8",X"FC",X"F8",X"F0",X"F0",X"E0",X"C0",X"80",X"80",X"00",X"00",
|
||||
X"FE",X"FE",X"FC",X"FC",X"F8",X"F8",X"F8",X"F0",X"E0",X"C0",X"E0",X"C0",X"C0",X"80",X"00",X"00",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"00",X"01",X"01",X"00",X"00",X"00",X"00",X"01",X"01",X"03",X"03",X"07",X"07",X"0F",X"3F",X"FF",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"FE",X"FE",X"FC",X"FC",X"F8",X"F8",X"F0",X"F0",X"E0",X"E0",X"C0",X"C0",X"80",X"80",X"00",X"00",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"3F",X"0F",X"07",X"07",X"03",X"03",X"01",X"01",X"00",X"00",X"00",X"00",X"01",X"01",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"80",X"80",X"C0",X"C0",X"E0",X"E0",X"F0",X"F0",X"F8",X"F8",X"FC",X"FC",X"FE",X"FE",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"00",X"00",X"00",X"00",X"00",X"04",X"06",X"0C",X"03",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"08",X"09",X"05",X"07",X"0D",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"03",X"02",X"03",X"02",X"0E",X"04",X"0E",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"08",X"02",X"06",X"04",X"03",X"0F",X"05",X"0F",X"0B",X"0A",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"03",X"07",X"05",X"02",X"03",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"04",X"0E",X"04",X"03",X"02",X"06",X"0C",X"03",X"0A",X"00",X"00",X"00",
|
||||
X"00",X"00",X"08",X"09",X"05",X"0F",X"05",X"02",X"03",X"07",X"0D",X"02",X"03",X"0A",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"02",X"03",X"02",X"03",X"02",X"0E",X"04",X"03",X"02",X"0E",X"00",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"03",X"02",X"03",X"02",X"03",X"0F",X"05",X"02",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"0C",X"0E",X"0C",X"06",X"04",X"03",X"02",X"0E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"08",X"09",X"0D",X"07",X"05",X"02",X"0E",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"0C",X"03",X"02",X"0E",X"04",X"03",X"0F",X"0B",X"0A",X"00",X"00",X"00",
|
||||
X"00",X"00",X"08",X"09",X"0D",X"02",X"03",X"0F",X"05",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"03",X"02",X"06",X"04",X"0E",X"04",X"03",X"0F",X"0B",X"0A",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"0C",X"03",X"07",X"05",X"0F",X"05",X"02",X"03",X"02",X"0E",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"08",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"08",X"02",X"06",X"0C",X"03",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"03",X"07",X"0D",X"02",X"03",X"02",X"03",X"0A",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"08",X"02",X"03",X"02",X"06",X"0C",X"03",X"02",X"0E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"08",X"02",X"06",X"0C",X"03",X"07",X"0D",X"02",X"03",X"0F",X"0B",X"0A",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"07",X"0D",X"02",X"06",X"04",X"03",X"02",X"03",X"02",X"03",X"0A",X"00",
|
||||
X"00",X"00",X"00",X"04",X"03",X"02",X"03",X"07",X"05",X"02",X"0E",X"04",X"03",X"02",X"0E",X"00",
|
||||
X"00",X"08",X"09",X"05",X"02",X"03",X"02",X"03",X"02",X"03",X"0F",X"05",X"02",X"03",X"0A",X"00",
|
||||
X"00",X"0C",X"03",X"02",X"06",X"0C",X"06",X"04",X"03",X"02",X"0E",X"04",X"03",X"02",X"0E",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"07",X"0D",X"07",X"05",X"02",X"03",X"0F",X"05",X"02",X"03",X"0A",X"00",
|
||||
X"08",X"09",X"0D",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"06",X"00",
|
||||
X"02",X"03",X"02",X"06",X"0C",X"03",X"02",X"06",X"04",X"03",X"02",X"0E",X"04",X"03",X"07",X"0B",
|
||||
X"03",X"02",X"03",X"07",X"0D",X"02",X"03",X"07",X"05",X"02",X"03",X"0F",X"05",X"02",X"06",X"04",
|
||||
X"02",X"03",X"02",X"06",X"04",X"03",X"02",X"06",X"04",X"03",X"02",X"06",X"04",X"03",X"07",X"05",
|
||||
X"03",X"02",X"03",X"07",X"05",X"02",X"03",X"07",X"05",X"02",X"03",X"07",X"05",X"02",X"03",X"02",
|
||||
X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"08",X"0A",X"00",X"0C",X"03",X"0A",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"0C",X"03",X"09",X"0D",X"02",X"0E",X"00",X"08",X"0A",X"00",X"00",X"00",
|
||||
X"00",X"00",X"08",X"09",X"0D",X"02",X"03",X"02",X"0E",X"00",X"00",X"0C",X"03",X"0A",X"00",X"00",
|
||||
X"00",X"08",X"02",X"03",X"02",X"0E",X"0C",X"0E",X"00",X"08",X"09",X"0D",X"02",X"03",X"0A",X"00",
|
||||
X"00",X"0C",X"03",X"02",X"03",X"0F",X"0B",X"0A",X"08",X"02",X"06",X"04",X"03",X"02",X"0E",X"00",
|
||||
X"00",X"08",X"02",X"06",X"0C",X"03",X"02",X"06",X"0C",X"03",X"07",X"05",X"02",X"03",X"0A",X"00",
|
||||
X"00",X"0C",X"03",X"07",X"0D",X"02",X"03",X"07",X"0D",X"02",X"0E",X"0C",X"03",X"02",X"0E",X"00",
|
||||
X"00",X"00",X"0C",X"0E",X"0C",X"03",X"02",X"0E",X"0C",X"0E",X"00",X"00",X"0C",X"03",X"0A",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"0C",X"0E",X"00",X"08",X"0A",X"08",X"09",X"0D",X"02",X"0E",X"00",
|
||||
X"00",X"00",X"00",X"08",X"0A",X"08",X"0A",X"08",X"02",X"0E",X"04",X"03",X"02",X"0E",X"00",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"06",X"04",X"03",X"02",X"03",X"0F",X"05",X"02",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"08",X"09",X"0D",X"07",X"05",X"02",X"0E",X"0C",X"0E",X"0C",X"0E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"0C",X"03",X"02",X"06",X"0C",X"06",X"00",X"00",X"00",X"08",X"0A",X"08",X"0A",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"07",X"0D",X"07",X"0B",X"09",X"0B",X"02",X"03",X"02",X"03",X"0A",X"00",
|
||||
X"00",X"00",X"08",X"02",X"03",X"02",X"03",X"02",X"0E",X"0C",X"03",X"02",X"03",X"02",X"0E",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"02",X"03",X"02",X"0E",X"00",X"00",X"0C",X"06",X"0C",X"03",X"0A",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"0E",X"0C",X"0E",X"00",X"08",X"09",X"0D",X"07",X"0D",X"02",X"0E",X"00",
|
||||
X"00",X"00",X"00",X"08",X"0A",X"08",X"0A",X"08",X"02",X"03",X"02",X"03",X"02",X"0E",X"00",X"00",
|
||||
X"00",X"00",X"08",X"02",X"06",X"0C",X"03",X"02",X"03",X"02",X"0E",X"0C",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"07",X"0D",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"08",X"02",X"06",X"0C",X"06",X"0C",X"0E",X"00",X"08",X"0A",X"00",X"00",X"00",X"00",
|
||||
X"00",X"08",X"02",X"03",X"07",X"0D",X"07",X"0B",X"0A",X"08",X"02",X"0E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"0C",X"03",X"02",X"0E",X"04",X"0E",X"04",X"03",X"02",X"03",X"0F",X"0B",X"0A",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"0F",X"05",X"0F",X"05",X"02",X"0E",X"0C",X"03",X"02",X"03",X"0A",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"0E",X"0C",X"0E",X"0C",X"0E",X"00",X"00",X"0C",X"03",X"02",X"0E",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"08",X"0A",X"08",X"09",X"0D",X"02",X"0E",X"00",X"00",
|
||||
X"00",X"00",X"08",X"09",X"0B",X"0A",X"08",X"02",X"03",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"08",X"02",X"06",X"0C",X"03",X"02",X"03",X"02",X"06",X"04",X"0E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"0C",X"03",X"07",X"0D",X"02",X"03",X"02",X"03",X"07",X"05",X"0F",X"0B",X"0A",X"00",X"00",
|
||||
X"00",X"08",X"02",X"03",X"02",X"0E",X"0C",X"06",X"0C",X"0E",X"0C",X"03",X"02",X"0E",X"00",X"00",
|
||||
X"00",X"0C",X"03",X"02",X"03",X"0F",X"0D",X"07",X"0B",X"0A",X"00",X"0C",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"02",X"0E",X"04",X"03",X"02",X"03",X"0A",X"08",X"0A",X"00",X"00",X"00",
|
||||
X"08",X"09",X"0D",X"02",X"03",X"0F",X"05",X"02",X"0E",X"04",X"03",X"02",X"03",X"0A",X"08",X"0A",
|
||||
X"02",X"03",X"02",X"03",X"02",X"06",X"04",X"03",X"0F",X"05",X"02",X"06",X"04",X"03",X"02",X"03",
|
||||
X"03",X"02",X"03",X"02",X"03",X"07",X"05",X"02",X"03",X"02",X"03",X"07",X"05",X"02",X"03",X"02",
|
||||
X"04",X"03",X"02",X"03",X"02",X"06",X"04",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03");
|
||||
begin
|
||||
process(clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
data <= rom_data(to_integer(unsigned(addr)));
|
||||
end if;
|
||||
end process;
|
||||
end architecture;
|
||||
@@ -0,0 +1,150 @@
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all,ieee.numeric_std.all;
|
||||
|
||||
entity bg_graphx_2 is
|
||||
port (
|
||||
clk : in std_logic;
|
||||
addr : in std_logic_vector(10 downto 0);
|
||||
data : out std_logic_vector(7 downto 0)
|
||||
);
|
||||
end entity;
|
||||
|
||||
architecture prom of bg_graphx_2 is
|
||||
type rom is array(0 to 2047) of std_logic_vector(7 downto 0);
|
||||
signal rom_data: rom := (
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"08",X"00",X"00",X"80",X"00",X"01",X"01",X"00",X"80",X"00",X"00",X"08",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"3F",X"00",X"00",X"00",X"00",X"3F",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"03",X"01",X"03",X"07",X"07",X"0F",X"FF",X"FF",X"1F",X"3F",X"3F",X"3F",X"3F",X"7F",X"FF",
|
||||
X"FF",X"FE",X"FC",X"FE",X"FC",X"FC",X"F8",X"FF",X"FF",X"F0",X"E0",X"E0",X"E0",X"80",X"00",X"00",
|
||||
X"FF",X"3F",X"3F",X"7F",X"3F",X"3F",X"1F",X"FF",X"FF",X"0F",X"07",X"07",X"07",X"03",X"03",X"00",
|
||||
X"00",X"00",X"80",X"E0",X"E0",X"E0",X"F0",X"FF",X"FF",X"F8",X"FC",X"FC",X"FE",X"FC",X"FF",X"FF",
|
||||
X"00",X"01",X"01",X"03",X"07",X"0F",X"0F",X"07",X"07",X"0F",X"3F",X"3F",X"7F",X"7F",X"FF",X"FF",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"FE",X"FE",X"FE",X"FE",X"FE",X"FC",X"FC",X"FC",X"FC",X"FC",X"F8",X"E0",X"F0",X"C0",X"80",X"80",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"7F",X"7F",X"7F",X"FF",X"FF",X"3F",X"1F",X"1F",X"0F",X"0F",X"07",X"03",X"01",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"80",X"80",X"80",X"C0",X"C0",X"E0",X"C0",X"E0",X"F0",X"F0",X"F8",X"F8",X"F8",X"FE",X"FE",X"FE",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"80",X"80",X"C0",X"E0",X"E0",X"F0",X"F8",X"FC",X"F8",X"F8",X"FC",X"FC",X"FC",X"FE",
|
||||
X"00",X"00",X"80",X"C0",X"E0",X"F8",X"F0",X"F0",X"F8",X"F8",X"FC",X"F8",X"FC",X"FC",X"FE",X"FE",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"FE",X"FC",X"FE",X"FC",X"F8",X"F8",X"FC",X"F8",X"F0",X"F0",X"E0",X"C0",X"80",X"80",X"00",X"00",
|
||||
X"FE",X"FE",X"FC",X"FC",X"F8",X"F8",X"F8",X"F0",X"E0",X"C0",X"E0",X"C0",X"C0",X"80",X"00",X"00",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"00",X"F1",X"F9",X"FC",X"FC",X"FC",X"FC",X"FD",X"F9",X"FB",X"F3",X"F7",X"E7",X"8F",X"3F",X"FF",
|
||||
X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FC",X"00",
|
||||
X"FE",X"FE",X"FD",X"FD",X"FB",X"FB",X"F7",X"F7",X"EF",X"EF",X"DF",X"DF",X"BF",X"BF",X"7F",X"00",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"3F",X"8F",X"E7",X"F7",X"F3",X"FB",X"F9",X"FD",X"FC",X"FC",X"FC",X"FC",X"F9",X"F1",X"00",
|
||||
X"00",X"FC",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"00",
|
||||
X"00",X"7F",X"BF",X"BF",X"DF",X"DF",X"EF",X"EF",X"F7",X"F7",X"FB",X"FB",X"FD",X"FD",X"FE",X"FE",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"00",X"00",X"00",X"00",X"00",X"04",X"06",X"0C",X"03",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"08",X"09",X"05",X"07",X"0D",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"03",X"02",X"03",X"02",X"0E",X"04",X"0E",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"08",X"02",X"06",X"04",X"03",X"0F",X"05",X"0F",X"0B",X"0A",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"03",X"07",X"05",X"02",X"03",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"04",X"0E",X"04",X"03",X"02",X"06",X"0C",X"03",X"0A",X"00",X"00",X"00",
|
||||
X"00",X"00",X"08",X"09",X"05",X"0F",X"05",X"02",X"03",X"07",X"0D",X"02",X"03",X"0A",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"02",X"03",X"02",X"03",X"02",X"0E",X"04",X"03",X"02",X"0E",X"00",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"03",X"02",X"03",X"02",X"03",X"0F",X"05",X"02",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"0C",X"0E",X"0C",X"06",X"04",X"03",X"02",X"0E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"08",X"09",X"0D",X"07",X"05",X"02",X"0E",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"0C",X"03",X"02",X"0E",X"04",X"03",X"0F",X"0B",X"0A",X"00",X"00",X"00",
|
||||
X"00",X"00",X"08",X"09",X"0D",X"02",X"03",X"0F",X"05",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"03",X"02",X"06",X"04",X"0E",X"04",X"03",X"0F",X"0B",X"0A",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"0C",X"03",X"07",X"05",X"0F",X"05",X"02",X"03",X"02",X"0E",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"08",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"08",X"02",X"06",X"0C",X"03",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"03",X"07",X"0D",X"02",X"03",X"02",X"03",X"0A",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"08",X"02",X"03",X"02",X"06",X"0C",X"03",X"02",X"0E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"08",X"02",X"06",X"0C",X"03",X"07",X"0D",X"02",X"03",X"0F",X"0B",X"0A",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"07",X"0D",X"02",X"06",X"04",X"03",X"02",X"03",X"02",X"03",X"0A",X"00",
|
||||
X"00",X"00",X"00",X"04",X"03",X"02",X"03",X"07",X"05",X"02",X"0E",X"04",X"03",X"02",X"0E",X"00",
|
||||
X"00",X"08",X"09",X"05",X"02",X"03",X"02",X"03",X"02",X"03",X"0F",X"05",X"02",X"03",X"0A",X"00",
|
||||
X"00",X"0C",X"03",X"02",X"06",X"0C",X"06",X"04",X"03",X"02",X"0E",X"04",X"03",X"02",X"0E",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"07",X"0D",X"07",X"05",X"02",X"03",X"0F",X"05",X"02",X"03",X"0A",X"00",
|
||||
X"08",X"09",X"0D",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"06",X"00",
|
||||
X"02",X"03",X"02",X"06",X"0C",X"03",X"02",X"06",X"04",X"03",X"02",X"0E",X"04",X"03",X"07",X"0B",
|
||||
X"03",X"02",X"03",X"07",X"0D",X"02",X"03",X"07",X"05",X"02",X"03",X"0F",X"05",X"02",X"06",X"04",
|
||||
X"02",X"03",X"02",X"06",X"04",X"03",X"02",X"06",X"04",X"03",X"02",X"06",X"04",X"03",X"07",X"05",
|
||||
X"03",X"02",X"03",X"07",X"05",X"02",X"03",X"07",X"05",X"02",X"03",X"07",X"05",X"02",X"03",X"02",
|
||||
X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"08",X"0A",X"00",X"0C",X"03",X"0A",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"0C",X"03",X"09",X"0D",X"02",X"0E",X"00",X"08",X"0A",X"00",X"00",X"00",
|
||||
X"00",X"00",X"08",X"09",X"0D",X"02",X"03",X"02",X"0E",X"00",X"00",X"0C",X"03",X"0A",X"00",X"00",
|
||||
X"00",X"08",X"02",X"03",X"02",X"0E",X"0C",X"0E",X"00",X"08",X"09",X"0D",X"02",X"03",X"0A",X"00",
|
||||
X"00",X"0C",X"03",X"02",X"03",X"0F",X"0B",X"0A",X"08",X"02",X"06",X"04",X"03",X"02",X"0E",X"00",
|
||||
X"00",X"08",X"02",X"06",X"0C",X"03",X"02",X"06",X"0C",X"03",X"07",X"05",X"02",X"03",X"0A",X"00",
|
||||
X"00",X"0C",X"03",X"07",X"0D",X"02",X"03",X"07",X"0D",X"02",X"0E",X"0C",X"03",X"02",X"0E",X"00",
|
||||
X"00",X"00",X"0C",X"0E",X"0C",X"03",X"02",X"0E",X"0C",X"0E",X"00",X"00",X"0C",X"03",X"0A",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"0C",X"0E",X"00",X"08",X"0A",X"08",X"09",X"0D",X"02",X"0E",X"00",
|
||||
X"00",X"00",X"00",X"08",X"0A",X"08",X"0A",X"08",X"02",X"0E",X"04",X"03",X"02",X"0E",X"00",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"06",X"04",X"03",X"02",X"03",X"0F",X"05",X"02",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"08",X"09",X"0D",X"07",X"05",X"02",X"0E",X"0C",X"0E",X"0C",X"0E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"0C",X"03",X"02",X"06",X"0C",X"06",X"00",X"00",X"00",X"08",X"0A",X"08",X"0A",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"07",X"0D",X"07",X"0B",X"09",X"0B",X"02",X"03",X"02",X"03",X"0A",X"00",
|
||||
X"00",X"00",X"08",X"02",X"03",X"02",X"03",X"02",X"0E",X"0C",X"03",X"02",X"03",X"02",X"0E",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"02",X"03",X"02",X"0E",X"00",X"00",X"0C",X"06",X"0C",X"03",X"0A",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"0E",X"0C",X"0E",X"00",X"08",X"09",X"0D",X"07",X"0D",X"02",X"0E",X"00",
|
||||
X"00",X"00",X"00",X"08",X"0A",X"08",X"0A",X"08",X"02",X"03",X"02",X"03",X"02",X"0E",X"00",X"00",
|
||||
X"00",X"00",X"08",X"02",X"06",X"0C",X"03",X"02",X"03",X"02",X"0E",X"0C",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"07",X"0D",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"08",X"02",X"06",X"0C",X"06",X"0C",X"0E",X"00",X"08",X"0A",X"00",X"00",X"00",X"00",
|
||||
X"00",X"08",X"02",X"03",X"07",X"0D",X"07",X"0B",X"0A",X"08",X"02",X"0E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"0C",X"03",X"02",X"0E",X"04",X"0E",X"04",X"03",X"02",X"03",X"0F",X"0B",X"0A",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"0F",X"05",X"0F",X"05",X"02",X"0E",X"0C",X"03",X"02",X"03",X"0A",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"0E",X"0C",X"0E",X"0C",X"0E",X"00",X"00",X"0C",X"03",X"02",X"0E",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"08",X"0A",X"08",X"09",X"0D",X"02",X"0E",X"00",X"00",
|
||||
X"00",X"00",X"08",X"09",X"0B",X"0A",X"08",X"02",X"03",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"08",X"02",X"06",X"0C",X"03",X"02",X"03",X"02",X"06",X"04",X"0E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"0C",X"03",X"07",X"0D",X"02",X"03",X"02",X"03",X"07",X"05",X"0F",X"0B",X"0A",X"00",X"00",
|
||||
X"00",X"08",X"02",X"03",X"02",X"0E",X"0C",X"06",X"0C",X"0E",X"0C",X"03",X"02",X"0E",X"00",X"00",
|
||||
X"00",X"0C",X"03",X"02",X"03",X"0F",X"0D",X"07",X"0B",X"0A",X"00",X"0C",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"02",X"0E",X"04",X"03",X"02",X"03",X"0A",X"08",X"0A",X"00",X"00",X"00",
|
||||
X"08",X"09",X"0D",X"02",X"03",X"0F",X"05",X"02",X"0E",X"04",X"03",X"02",X"03",X"0A",X"08",X"0A",
|
||||
X"02",X"03",X"02",X"03",X"02",X"06",X"04",X"03",X"0F",X"05",X"02",X"06",X"04",X"03",X"02",X"03",
|
||||
X"03",X"02",X"03",X"02",X"03",X"07",X"05",X"02",X"03",X"02",X"03",X"07",X"05",X"02",X"03",X"02",
|
||||
X"04",X"03",X"02",X"03",X"02",X"06",X"04",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03");
|
||||
begin
|
||||
process(clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
data <= rom_data(to_integer(unsigned(addr)));
|
||||
end if;
|
||||
end process;
|
||||
end architecture;
|
||||
@@ -0,0 +1,150 @@
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all,ieee.numeric_std.all;
|
||||
|
||||
entity bg_graphx_3 is
|
||||
port (
|
||||
clk : in std_logic;
|
||||
addr : in std_logic_vector(10 downto 0);
|
||||
data : out std_logic_vector(7 downto 0)
|
||||
);
|
||||
end entity;
|
||||
|
||||
architecture prom of bg_graphx_3 is
|
||||
type rom is array(0 to 2047) of std_logic_vector(7 downto 0);
|
||||
signal rom_data: rom := (
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"C0",X"F0",X"C0",X"00",X"70",X"7C",X"7E",X"7E",X"7C",X"70",X"00",X"C0",X"F0",X"C0",X"00",
|
||||
X"E3",X"CF",X"03",X"6F",X"03",X"00",X"00",X"3B",X"3B",X"00",X"00",X"03",X"6F",X"03",X"CF",X"E3",
|
||||
X"FF",X"FC",X"FE",X"FC",X"F8",X"F8",X"F0",X"00",X"08",X"E8",X"C4",X"C4",X"C2",X"C2",X"81",X"01",
|
||||
X"80",X"81",X"43",X"41",X"23",X"23",X"17",X"10",X"00",X"0F",X"1F",X"1F",X"1F",X"7F",X"FF",X"FF",
|
||||
X"01",X"C1",X"C2",X"82",X"C4",X"C4",X"E8",X"08",X"00",X"F0",X"F8",X"F8",X"F8",X"FC",X"FC",X"FF",
|
||||
X"FF",X"FF",X"7F",X"1F",X"1F",X"1F",X"0F",X"00",X"10",X"17",X"23",X"23",X"41",X"43",X"80",X"80",
|
||||
X"FF",X"FE",X"FE",X"FC",X"F8",X"F0",X"F0",X"F8",X"F8",X"F0",X"C0",X"C0",X"80",X"80",X"00",X"00",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"01",X"01",X"01",X"01",X"01",X"03",X"03",X"03",X"03",X"03",X"07",X"1F",X"0F",X"3F",X"7F",X"7F",
|
||||
X"01",X"01",X"02",X"02",X"04",X"04",X"08",X"08",X"10",X"10",X"20",X"20",X"40",X"40",X"80",X"80",
|
||||
X"00",X"00",X"80",X"80",X"80",X"00",X"00",X"C0",X"E0",X"E0",X"F0",X"F0",X"F8",X"FC",X"FE",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"7F",X"7F",X"7F",X"3F",X"3F",X"1F",X"3F",X"1F",X"0F",X"0F",X"07",X"07",X"07",X"01",X"01",X"01",
|
||||
X"80",X"80",X"40",X"40",X"20",X"20",X"10",X"10",X"08",X"08",X"04",X"04",X"02",X"02",X"01",X"01",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"80",X"80",X"40",X"40",X"20",X"10",X"10",X"08",X"04",X"02",X"04",X"04",X"02",X"02",X"02",X"01",
|
||||
X"80",X"80",X"40",X"20",X"18",X"04",X"08",X"08",X"04",X"04",X"02",X"04",X"02",X"02",X"01",X"01",
|
||||
X"80",X"80",X"40",X"40",X"20",X"20",X"10",X"10",X"08",X"08",X"04",X"04",X"02",X"02",X"01",X"01",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"01",X"02",X"01",X"02",X"04",X"04",X"02",X"04",X"08",X"08",X"10",X"20",X"40",X"40",X"80",X"80",
|
||||
X"01",X"01",X"02",X"02",X"04",X"04",X"06",X"08",X"10",X"20",X"10",X"20",X"20",X"40",X"80",X"80",
|
||||
X"01",X"01",X"02",X"02",X"04",X"04",X"08",X"08",X"10",X"10",X"20",X"20",X"40",X"40",X"80",X"80",
|
||||
X"FF",X"FE",X"FE",X"FF",X"FF",X"FF",X"FF",X"FE",X"FE",X"FC",X"FC",X"F8",X"F8",X"F0",X"C0",X"00",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"81",X"81",X"43",X"43",X"27",X"27",X"1F",X"1F",X"1F",X"1F",X"3F",X"3F",X"7F",X"7F",X"FF",X"FF",
|
||||
X"01",X"01",X"02",X"02",X"04",X"04",X"08",X"08",X"10",X"10",X"20",X"20",X"40",X"40",X"80",X"80",
|
||||
X"00",X"C0",X"F0",X"F8",X"F8",X"FC",X"FC",X"FE",X"FE",X"FF",X"FF",X"FF",X"FF",X"FE",X"FE",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"7F",X"7F",X"3F",X"3F",X"1F",X"1F",X"1F",X"1F",X"27",X"27",X"43",X"43",X"81",X"81",
|
||||
X"80",X"80",X"40",X"40",X"20",X"20",X"10",X"10",X"08",X"08",X"04",X"04",X"02",X"02",X"01",X"01",
|
||||
X"00",X"00",X"00",X"00",X"00",X"04",X"06",X"0C",X"03",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"08",X"09",X"05",X"07",X"0D",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"03",X"02",X"03",X"02",X"0E",X"04",X"0E",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"08",X"02",X"06",X"04",X"03",X"0F",X"05",X"0F",X"0B",X"0A",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"03",X"07",X"05",X"02",X"03",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"04",X"0E",X"04",X"03",X"02",X"06",X"0C",X"03",X"0A",X"00",X"00",X"00",
|
||||
X"00",X"00",X"08",X"09",X"05",X"0F",X"05",X"02",X"03",X"07",X"0D",X"02",X"03",X"0A",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"02",X"03",X"02",X"03",X"02",X"0E",X"04",X"03",X"02",X"0E",X"00",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"03",X"02",X"03",X"02",X"03",X"0F",X"05",X"02",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"0C",X"0E",X"0C",X"06",X"04",X"03",X"02",X"0E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"08",X"09",X"0D",X"07",X"05",X"02",X"0E",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"0C",X"03",X"02",X"0E",X"04",X"03",X"0F",X"0B",X"0A",X"00",X"00",X"00",
|
||||
X"00",X"00",X"08",X"09",X"0D",X"02",X"03",X"0F",X"05",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"03",X"02",X"06",X"04",X"0E",X"04",X"03",X"0F",X"0B",X"0A",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"0C",X"03",X"07",X"05",X"0F",X"05",X"02",X"03",X"02",X"0E",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"08",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"08",X"02",X"06",X"0C",X"03",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"03",X"07",X"0D",X"02",X"03",X"02",X"03",X"0A",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"08",X"02",X"03",X"02",X"06",X"0C",X"03",X"02",X"0E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"08",X"02",X"06",X"0C",X"03",X"07",X"0D",X"02",X"03",X"0F",X"0B",X"0A",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"07",X"0D",X"02",X"06",X"04",X"03",X"02",X"03",X"02",X"03",X"0A",X"00",
|
||||
X"00",X"00",X"00",X"04",X"03",X"02",X"03",X"07",X"05",X"02",X"0E",X"04",X"03",X"02",X"0E",X"00",
|
||||
X"00",X"08",X"09",X"05",X"02",X"03",X"02",X"03",X"02",X"03",X"0F",X"05",X"02",X"03",X"0A",X"00",
|
||||
X"00",X"0C",X"03",X"02",X"06",X"0C",X"06",X"04",X"03",X"02",X"0E",X"04",X"03",X"02",X"0E",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"07",X"0D",X"07",X"05",X"02",X"03",X"0F",X"05",X"02",X"03",X"0A",X"00",
|
||||
X"08",X"09",X"0D",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"06",X"00",
|
||||
X"02",X"03",X"02",X"06",X"0C",X"03",X"02",X"06",X"04",X"03",X"02",X"0E",X"04",X"03",X"07",X"0B",
|
||||
X"03",X"02",X"03",X"07",X"0D",X"02",X"03",X"07",X"05",X"02",X"03",X"0F",X"05",X"02",X"06",X"04",
|
||||
X"02",X"03",X"02",X"06",X"04",X"03",X"02",X"06",X"04",X"03",X"02",X"06",X"04",X"03",X"07",X"05",
|
||||
X"03",X"02",X"03",X"07",X"05",X"02",X"03",X"07",X"05",X"02",X"03",X"07",X"05",X"02",X"03",X"02",
|
||||
X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"08",X"0A",X"00",X"0C",X"03",X"0A",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"0C",X"03",X"09",X"0D",X"02",X"0E",X"00",X"08",X"0A",X"00",X"00",X"00",
|
||||
X"00",X"00",X"08",X"09",X"0D",X"02",X"03",X"02",X"0E",X"00",X"00",X"0C",X"03",X"0A",X"00",X"00",
|
||||
X"00",X"08",X"02",X"03",X"02",X"0E",X"0C",X"0E",X"00",X"08",X"09",X"0D",X"02",X"03",X"0A",X"00",
|
||||
X"00",X"0C",X"03",X"02",X"03",X"0F",X"0B",X"0A",X"08",X"02",X"06",X"04",X"03",X"02",X"0E",X"00",
|
||||
X"00",X"08",X"02",X"06",X"0C",X"03",X"02",X"06",X"0C",X"03",X"07",X"05",X"02",X"03",X"0A",X"00",
|
||||
X"00",X"0C",X"03",X"07",X"0D",X"02",X"03",X"07",X"0D",X"02",X"0E",X"0C",X"03",X"02",X"0E",X"00",
|
||||
X"00",X"00",X"0C",X"0E",X"0C",X"03",X"02",X"0E",X"0C",X"0E",X"00",X"00",X"0C",X"03",X"0A",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"0C",X"0E",X"00",X"08",X"0A",X"08",X"09",X"0D",X"02",X"0E",X"00",
|
||||
X"00",X"00",X"00",X"08",X"0A",X"08",X"0A",X"08",X"02",X"0E",X"04",X"03",X"02",X"0E",X"00",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"06",X"04",X"03",X"02",X"03",X"0F",X"05",X"02",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"08",X"09",X"0D",X"07",X"05",X"02",X"0E",X"0C",X"0E",X"0C",X"0E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"0C",X"03",X"02",X"06",X"0C",X"06",X"00",X"00",X"00",X"08",X"0A",X"08",X"0A",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"07",X"0D",X"07",X"0B",X"09",X"0B",X"02",X"03",X"02",X"03",X"0A",X"00",
|
||||
X"00",X"00",X"08",X"02",X"03",X"02",X"03",X"02",X"0E",X"0C",X"03",X"02",X"03",X"02",X"0E",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"02",X"03",X"02",X"0E",X"00",X"00",X"0C",X"06",X"0C",X"03",X"0A",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"0E",X"0C",X"0E",X"00",X"08",X"09",X"0D",X"07",X"0D",X"02",X"0E",X"00",
|
||||
X"00",X"00",X"00",X"08",X"0A",X"08",X"0A",X"08",X"02",X"03",X"02",X"03",X"02",X"0E",X"00",X"00",
|
||||
X"00",X"00",X"08",X"02",X"06",X"0C",X"03",X"02",X"03",X"02",X"0E",X"0C",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"07",X"0D",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"08",X"02",X"06",X"0C",X"06",X"0C",X"0E",X"00",X"08",X"0A",X"00",X"00",X"00",X"00",
|
||||
X"00",X"08",X"02",X"03",X"07",X"0D",X"07",X"0B",X"0A",X"08",X"02",X"0E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"0C",X"03",X"02",X"0E",X"04",X"0E",X"04",X"03",X"02",X"03",X"0F",X"0B",X"0A",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"0F",X"05",X"0F",X"05",X"02",X"0E",X"0C",X"03",X"02",X"03",X"0A",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"0E",X"0C",X"0E",X"0C",X"0E",X"00",X"00",X"0C",X"03",X"02",X"0E",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"08",X"0A",X"08",X"09",X"0D",X"02",X"0E",X"00",X"00",
|
||||
X"00",X"00",X"08",X"09",X"0B",X"0A",X"08",X"02",X"03",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"08",X"02",X"06",X"0C",X"03",X"02",X"03",X"02",X"06",X"04",X"0E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"0C",X"03",X"07",X"0D",X"02",X"03",X"02",X"03",X"07",X"05",X"0F",X"0B",X"0A",X"00",X"00",
|
||||
X"00",X"08",X"02",X"03",X"02",X"0E",X"0C",X"06",X"0C",X"0E",X"0C",X"03",X"02",X"0E",X"00",X"00",
|
||||
X"00",X"0C",X"03",X"02",X"03",X"0F",X"0D",X"07",X"0B",X"0A",X"00",X"0C",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"02",X"0E",X"04",X"03",X"02",X"03",X"0A",X"08",X"0A",X"00",X"00",X"00",
|
||||
X"08",X"09",X"0D",X"02",X"03",X"0F",X"05",X"02",X"0E",X"04",X"03",X"02",X"03",X"0A",X"08",X"0A",
|
||||
X"02",X"03",X"02",X"03",X"02",X"06",X"04",X"03",X"0F",X"05",X"02",X"06",X"04",X"03",X"02",X"03",
|
||||
X"03",X"02",X"03",X"02",X"03",X"07",X"05",X"02",X"03",X"02",X"03",X"07",X"05",X"02",X"03",X"02",
|
||||
X"04",X"03",X"02",X"03",X"02",X"06",X"04",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03");
|
||||
begin
|
||||
process(clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
data <= rom_data(to_integer(unsigned(addr)));
|
||||
end if;
|
||||
end process;
|
||||
end architecture;
|
||||
@@ -0,0 +1,278 @@
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all,ieee.numeric_std.all;
|
||||
|
||||
entity bg_map is
|
||||
port (
|
||||
clk : in std_logic;
|
||||
addr : in std_logic_vector(11 downto 0);
|
||||
data : out std_logic_vector(7 downto 0)
|
||||
);
|
||||
end entity;
|
||||
|
||||
architecture prom of bg_map is
|
||||
type rom is array(0 to 4095) of std_logic_vector(7 downto 0);
|
||||
signal rom_data: rom := (
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"0C",X"03",X"0A",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"08",X"09",X"0D",X"02",X"03",X"0A",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"08",X"02",X"06",X"0C",X"0E",X"04",X"0E",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"0C",X"03",X"07",X"0D",X"0F",X"05",X"0F",X"0B",X"0A",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"04",X"06",X"0C",X"03",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"08",X"09",X"05",X"07",X"0D",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"03",X"02",X"03",X"02",X"0E",X"04",X"0E",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"08",X"02",X"06",X"04",X"03",X"0F",X"05",X"0F",X"0B",X"0A",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"03",X"07",X"05",X"02",X"03",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"04",X"0E",X"04",X"03",X"02",X"06",X"0C",X"03",X"0A",X"00",X"00",X"00",
|
||||
X"00",X"00",X"08",X"09",X"05",X"0F",X"05",X"02",X"03",X"07",X"0D",X"02",X"03",X"0A",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"02",X"03",X"02",X"03",X"02",X"0E",X"04",X"03",X"02",X"0E",X"00",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"03",X"02",X"03",X"02",X"03",X"0F",X"05",X"02",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"0C",X"0E",X"0C",X"06",X"04",X"03",X"02",X"0E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"08",X"09",X"0D",X"07",X"05",X"02",X"0E",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"0C",X"03",X"02",X"0E",X"04",X"03",X"0F",X"0B",X"0A",X"00",X"00",X"00",
|
||||
X"00",X"00",X"08",X"09",X"0D",X"02",X"03",X"0F",X"05",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"03",X"02",X"06",X"04",X"0E",X"04",X"03",X"0F",X"0B",X"0A",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"0C",X"03",X"07",X"05",X"0F",X"05",X"02",X"03",X"02",X"0E",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"08",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"08",X"02",X"06",X"0C",X"03",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"03",X"07",X"0D",X"02",X"03",X"02",X"03",X"0A",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"08",X"02",X"03",X"02",X"06",X"0C",X"03",X"02",X"0E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"08",X"02",X"06",X"0C",X"03",X"07",X"0D",X"02",X"03",X"0F",X"0B",X"0A",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"07",X"0D",X"02",X"06",X"04",X"03",X"02",X"03",X"02",X"03",X"0A",X"00",
|
||||
X"00",X"00",X"00",X"04",X"03",X"02",X"03",X"07",X"05",X"02",X"0E",X"04",X"03",X"02",X"0E",X"00",
|
||||
X"00",X"08",X"09",X"05",X"02",X"03",X"02",X"03",X"02",X"03",X"0F",X"05",X"02",X"03",X"0A",X"00",
|
||||
X"00",X"0C",X"03",X"02",X"06",X"0C",X"06",X"04",X"03",X"02",X"0E",X"04",X"03",X"02",X"0E",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"07",X"0D",X"07",X"05",X"02",X"03",X"0F",X"05",X"02",X"03",X"0A",X"00",
|
||||
X"08",X"09",X"0D",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"06",X"00",
|
||||
X"02",X"03",X"02",X"06",X"0C",X"03",X"02",X"06",X"04",X"03",X"02",X"0E",X"04",X"03",X"07",X"0B",
|
||||
X"03",X"02",X"03",X"07",X"0D",X"02",X"03",X"07",X"05",X"02",X"03",X"0F",X"05",X"02",X"06",X"04",
|
||||
X"02",X"03",X"02",X"06",X"04",X"03",X"02",X"06",X"04",X"03",X"02",X"06",X"04",X"03",X"07",X"05",
|
||||
X"03",X"02",X"03",X"07",X"05",X"02",X"03",X"07",X"05",X"02",X"03",X"07",X"05",X"02",X"03",X"02",
|
||||
X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"08",X"0A",X"00",X"0C",X"03",X"0A",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"0C",X"03",X"09",X"0D",X"02",X"0E",X"00",X"08",X"0A",X"00",X"00",X"00",
|
||||
X"00",X"00",X"08",X"09",X"0D",X"02",X"03",X"02",X"0E",X"00",X"00",X"0C",X"03",X"0A",X"00",X"00",
|
||||
X"00",X"08",X"02",X"03",X"02",X"0E",X"0C",X"0E",X"00",X"08",X"09",X"0D",X"02",X"03",X"0A",X"00",
|
||||
X"00",X"0C",X"03",X"02",X"03",X"0F",X"0B",X"0A",X"08",X"02",X"06",X"04",X"03",X"02",X"0E",X"00",
|
||||
X"00",X"08",X"02",X"06",X"0C",X"03",X"02",X"06",X"0C",X"03",X"07",X"05",X"02",X"03",X"0A",X"00",
|
||||
X"00",X"0C",X"03",X"07",X"0D",X"02",X"03",X"07",X"0D",X"02",X"0E",X"0C",X"03",X"02",X"0E",X"00",
|
||||
X"00",X"00",X"0C",X"0E",X"0C",X"03",X"02",X"0E",X"0C",X"0E",X"00",X"00",X"0C",X"03",X"0A",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"0C",X"0E",X"00",X"08",X"0A",X"08",X"09",X"0D",X"02",X"0E",X"00",
|
||||
X"00",X"00",X"00",X"08",X"0A",X"08",X"0A",X"08",X"02",X"0E",X"04",X"03",X"02",X"0E",X"00",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"06",X"04",X"03",X"02",X"03",X"0F",X"05",X"02",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"08",X"09",X"0D",X"07",X"05",X"02",X"0E",X"0C",X"0E",X"0C",X"0E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"0C",X"03",X"02",X"06",X"0C",X"06",X"00",X"00",X"00",X"08",X"0A",X"08",X"0A",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"07",X"0D",X"07",X"0B",X"09",X"0B",X"02",X"03",X"02",X"03",X"0A",X"00",
|
||||
X"00",X"00",X"08",X"02",X"03",X"02",X"03",X"02",X"0E",X"0C",X"03",X"02",X"03",X"02",X"0E",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"02",X"03",X"02",X"0E",X"00",X"00",X"0C",X"06",X"0C",X"03",X"0A",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"0E",X"0C",X"0E",X"00",X"08",X"09",X"0D",X"07",X"0D",X"02",X"0E",X"00",
|
||||
X"00",X"00",X"00",X"08",X"0A",X"08",X"0A",X"08",X"02",X"03",X"02",X"03",X"02",X"0E",X"00",X"00",
|
||||
X"00",X"00",X"08",X"02",X"06",X"0C",X"03",X"02",X"03",X"02",X"0E",X"0C",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"07",X"0D",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"08",X"02",X"06",X"0C",X"06",X"0C",X"0E",X"00",X"08",X"0A",X"00",X"00",X"00",X"00",
|
||||
X"00",X"08",X"02",X"03",X"07",X"0D",X"07",X"0B",X"0A",X"08",X"02",X"0E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"0C",X"03",X"02",X"0E",X"04",X"0E",X"04",X"03",X"02",X"03",X"0F",X"0B",X"0A",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"0F",X"05",X"0F",X"05",X"02",X"0E",X"0C",X"03",X"02",X"03",X"0A",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"0E",X"0C",X"0E",X"0C",X"0E",X"00",X"00",X"0C",X"03",X"02",X"0E",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"08",X"0A",X"08",X"09",X"0D",X"02",X"0E",X"00",X"00",
|
||||
X"00",X"00",X"08",X"09",X"0B",X"0A",X"08",X"02",X"03",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"08",X"02",X"06",X"0C",X"03",X"02",X"03",X"02",X"06",X"04",X"0E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"0C",X"03",X"07",X"0D",X"02",X"03",X"02",X"03",X"07",X"05",X"0F",X"0B",X"0A",X"00",X"00",
|
||||
X"00",X"08",X"02",X"03",X"02",X"0E",X"0C",X"06",X"0C",X"0E",X"0C",X"03",X"02",X"0E",X"00",X"00",
|
||||
X"00",X"0C",X"03",X"02",X"03",X"0F",X"0D",X"07",X"0B",X"0A",X"00",X"0C",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"02",X"0E",X"04",X"03",X"02",X"03",X"0A",X"08",X"0A",X"00",X"00",X"00",
|
||||
X"08",X"09",X"0D",X"02",X"03",X"0F",X"05",X"02",X"0E",X"04",X"03",X"02",X"03",X"0A",X"08",X"0A",
|
||||
X"02",X"03",X"02",X"03",X"02",X"06",X"04",X"03",X"0F",X"05",X"02",X"06",X"04",X"03",X"02",X"03",
|
||||
X"03",X"02",X"03",X"02",X"03",X"07",X"05",X"02",X"03",X"02",X"03",X"07",X"05",X"02",X"03",X"02",
|
||||
X"04",X"03",X"02",X"03",X"02",X"06",X"04",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"08",X"02",X"0E",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"08",X"02",X"03",X"0F",X"0B",X"09",X"0B",X"0A",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"04",X"06",X"04",X"0E",X"04",X"06",X"0C",X"03",X"0A",X"00",X"00",
|
||||
X"00",X"08",X"09",X"0B",X"09",X"05",X"07",X"05",X"0F",X"05",X"07",X"0D",X"02",X"0E",X"00",X"00",
|
||||
X"00",X"0C",X"03",X"02",X"06",X"04",X"06",X"0C",X"06",X"04",X"0E",X"04",X"06",X"00",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"07",X"05",X"07",X"0D",X"07",X"05",X"0F",X"05",X"07",X"0B",X"0A",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"0E",X"0C",X"0E",X"04",X"0E",X"04",X"06",X"04",X"03",X"02",X"0E",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"08",X"09",X"05",X"0F",X"05",X"07",X"05",X"02",X"0E",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"08",X"02",X"06",X"0C",X"06",X"0C",X"0E",X"0C",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"0C",X"03",X"07",X"0D",X"07",X"0B",X"0A",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"04",X"0E",X"04",X"06",X"0C",X"03",X"0A",X"00",X"00",X"00",X"00",
|
||||
X"00",X"08",X"09",X"0B",X"09",X"05",X"0F",X"05",X"07",X"0D",X"02",X"0E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"0C",X"03",X"02",X"06",X"04",X"06",X"04",X"06",X"04",X"06",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"07",X"05",X"07",X"05",X"07",X"05",X"07",X"0B",X"09",X"0B",X"0A",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"0E",X"0C",X"0E",X"04",X"0E",X"04",X"06",X"04",X"03",X"02",X"0E",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"08",X"09",X"05",X"0F",X"05",X"07",X"05",X"02",X"0E",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"08",X"02",X"0E",X"04",X"06",X"0C",X"0E",X"0C",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"0C",X"03",X"0F",X"05",X"07",X"0B",X"0A",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"04",X"06",X"0C",X"06",X"04",X"03",X"0A",X"00",X"00",X"00",X"00",
|
||||
X"00",X"08",X"09",X"0B",X"09",X"05",X"07",X"0D",X"07",X"05",X"02",X"0E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"0C",X"03",X"02",X"06",X"04",X"06",X"04",X"0E",X"04",X"0E",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"07",X"05",X"07",X"05",X"0F",X"05",X"0F",X"0B",X"09",X"0B",X"0A",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"0E",X"0C",X"0E",X"0C",X"06",X"04",X"0E",X"04",X"03",X"02",X"0E",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"08",X"09",X"0D",X"07",X"05",X"0F",X"05",X"02",X"0E",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"08",X"02",X"06",X"04",X"0E",X"0C",X"0E",X"0C",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"0C",X"03",X"07",X"05",X"0F",X"0B",X"0A",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"04",X"0E",X"04",X"06",X"0C",X"03",X"0A",X"00",X"00",X"00",X"00",
|
||||
X"00",X"08",X"09",X"0B",X"09",X"05",X"0F",X"05",X"07",X"0D",X"02",X"0E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"0C",X"03",X"02",X"06",X"04",X"0E",X"04",X"0E",X"04",X"06",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"07",X"05",X"0F",X"05",X"0F",X"05",X"07",X"0B",X"09",X"0B",X"0A",X"00",
|
||||
X"00",X"00",X"00",X"04",X"0E",X"04",X"06",X"04",X"06",X"0C",X"06",X"04",X"03",X"02",X"0E",X"00",
|
||||
X"00",X"08",X"09",X"05",X"0F",X"05",X"07",X"05",X"07",X"0D",X"07",X"05",X"02",X"0E",X"00",X"00",
|
||||
X"00",X"0C",X"03",X"02",X"06",X"0C",X"03",X"02",X"06",X"04",X"03",X"02",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"08",X"02",X"03",X"07",X"0D",X"02",X"03",X"07",X"05",X"02",X"03",X"0F",X"0B",X"0A",X"00",
|
||||
X"08",X"02",X"03",X"02",X"06",X"04",X"03",X"02",X"06",X"04",X"03",X"02",X"06",X"04",X"03",X"0A",
|
||||
X"02",X"03",X"02",X"03",X"07",X"05",X"02",X"03",X"07",X"05",X"02",X"03",X"07",X"05",X"02",X"03",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"08",X"0A",X"00",X"00",X"00",X"0C",X"03",X"0A",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"08",X"02",X"0E",X"00",X"08",X"09",X"0D",X"02",X"0E",X"00",X"08",X"0A",X"00",X"00",X"00",
|
||||
X"00",X"0C",X"03",X"0A",X"00",X"0C",X"03",X"02",X"0E",X"00",X"08",X"02",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"08",X"02",X"0E",X"00",X"00",X"0C",X"03",X"0A",X"00",X"0C",X"03",X"0F",X"0B",X"0A",X"00",
|
||||
X"00",X"0C",X"03",X"0F",X"0B",X"0A",X"08",X"02",X"0E",X"00",X"00",X"0C",X"03",X"02",X"0E",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"02",X"0E",X"0C",X"03",X"0F",X"0B",X"0A",X"08",X"02",X"0E",X"00",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"03",X"0A",X"00",X"0C",X"0E",X"0C",X"0E",X"0C",X"03",X"0A",X"00",X"00",
|
||||
X"00",X"08",X"09",X"0D",X"02",X"0E",X"00",X"00",X"00",X"08",X"09",X"0D",X"02",X"0E",X"00",X"00",
|
||||
X"00",X"0C",X"03",X"02",X"03",X"0A",X"00",X"00",X"00",X"0C",X"03",X"02",X"03",X"0A",X"00",X"00",
|
||||
X"00",X"08",X"02",X"06",X"0C",X"0E",X"00",X"00",X"00",X"08",X"02",X"0E",X"0C",X"03",X"0A",X"00",
|
||||
X"00",X"0C",X"03",X"07",X"0D",X"0F",X"0B",X"0A",X"00",X"0C",X"03",X"0F",X"0D",X"02",X"0E",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"02",X"03",X"02",X"0E",X"00",X"08",X"02",X"03",X"02",X"0E",X"00",X"00",
|
||||
X"00",X"00",X"08",X"02",X"03",X"02",X"03",X"0A",X"08",X"02",X"03",X"02",X"03",X"0A",X"00",X"00",
|
||||
X"00",X"08",X"02",X"0E",X"0C",X"0E",X"0C",X"03",X"02",X"0E",X"0C",X"0E",X"0C",X"03",X"0A",X"00",
|
||||
X"00",X"0C",X"03",X"0A",X"00",X"00",X"08",X"02",X"0E",X"00",X"08",X"09",X"0D",X"02",X"0E",X"00",
|
||||
X"00",X"08",X"02",X"0E",X"00",X"00",X"0C",X"03",X"0A",X"00",X"0C",X"0E",X"0C",X"0E",X"00",X"00",
|
||||
X"00",X"0C",X"03",X"0F",X"0B",X"0A",X"00",X"0C",X"03",X"0A",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"0E",X"0C",X"0E",X"00",X"08",X"02",X"0E",X"00",X"08",X"0A",X"00",X"00",X"00",
|
||||
X"00",X"00",X"08",X"0A",X"00",X"00",X"08",X"02",X"03",X"0A",X"00",X"0C",X"03",X"0A",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"0A",X"00",X"0C",X"03",X"02",X"0E",X"00",X"08",X"02",X"0E",X"00",X"00",
|
||||
X"00",X"00",X"08",X"02",X"0E",X"00",X"08",X"02",X"03",X"0A",X"00",X"0C",X"03",X"0A",X"00",X"00",
|
||||
X"00",X"08",X"02",X"0E",X"00",X"08",X"02",X"0E",X"0C",X"03",X"09",X"0D",X"02",X"03",X"0A",X"00",
|
||||
X"00",X"0C",X"03",X"0F",X"0B",X"02",X"03",X"0F",X"0D",X"02",X"03",X"02",X"0E",X"0C",X"0E",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"02",X"0E",X"0C",X"03",X"02",X"0E",X"0C",X"03",X"0A",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"0C",X"03",X"0A",X"00",X"0C",X"0E",X"00",X"08",X"02",X"03",X"0A",X"00",X"00",
|
||||
X"00",X"08",X"09",X"0D",X"02",X"03",X"0A",X"00",X"00",X"08",X"02",X"03",X"02",X"0E",X"00",X"00",
|
||||
X"00",X"0C",X"03",X"02",X"03",X"02",X"0E",X"00",X"00",X"0C",X"03",X"02",X"0E",X"00",X"00",X"00",
|
||||
X"00",X"08",X"02",X"03",X"02",X"0E",X"00",X"00",X"00",X"00",X"0C",X"03",X"0F",X"0B",X"0A",X"00",
|
||||
X"00",X"0C",X"03",X"02",X"03",X"0F",X"0B",X"0A",X"00",X"00",X"08",X"02",X"03",X"02",X"0E",X"00",
|
||||
X"00",X"08",X"02",X"06",X"0C",X"03",X"02",X"0E",X"00",X"00",X"0C",X"03",X"02",X"03",X"0A",X"00",
|
||||
X"00",X"0C",X"03",X"07",X"0D",X"02",X"0E",X"00",X"08",X"09",X"0D",X"02",X"03",X"02",X"0E",X"00",
|
||||
X"00",X"00",X"0C",X"03",X"02",X"03",X"0F",X"0B",X"02",X"0E",X"04",X"03",X"02",X"0E",X"00",X"00",
|
||||
X"08",X"09",X"0D",X"02",X"06",X"04",X"03",X"02",X"03",X"0F",X"05",X"02",X"03",X"0F",X"0B",X"0A",
|
||||
X"02",X"06",X"04",X"03",X"07",X"05",X"02",X"03",X"02",X"06",X"04",X"03",X"02",X"06",X"04",X"03",
|
||||
X"03",X"07",X"05",X"02",X"03",X"02",X"03",X"02",X"03",X"07",X"05",X"02",X"03",X"07",X"05",X"02",
|
||||
X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03",X"02",X"03");
|
||||
begin
|
||||
process(clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
data <= rom_data(to_integer(unsigned(addr)));
|
||||
end if;
|
||||
end process;
|
||||
end architecture;
|
||||
@@ -0,0 +1,534 @@
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all,ieee.numeric_std.all;
|
||||
|
||||
entity fg_sp_graphx_1 is
|
||||
port (
|
||||
clk : in std_logic;
|
||||
addr : in std_logic_vector(12 downto 0);
|
||||
data : out std_logic_vector(7 downto 0)
|
||||
);
|
||||
end entity;
|
||||
|
||||
architecture prom of fg_sp_graphx_1 is
|
||||
type rom is array(0 to 8191) of std_logic_vector(7 downto 0);
|
||||
signal rom_data: rom := (
|
||||
X"00",X"90",X"10",X"FC",X"16",X"1E",X"16",X"FF",X"97",X"1E",X"16",X"1E",X"14",X"10",X"10",X"00",
|
||||
X"03",X"06",X"06",X"1F",X"9F",X"FE",X"FE",X"1F",X"1F",X"0F",X"7F",X"7F",X"5F",X"06",X"16",X"0C",
|
||||
X"00",X"10",X"10",X"14",X"1E",X"16",X"FE",X"97",X"1F",X"16",X"1E",X"16",X"1C",X"10",X"90",X"00",
|
||||
X"0C",X"16",X"06",X"1F",X"5E",X"7E",X"7F",X"1F",X"1F",X"0F",X"FF",X"FF",X"9F",X"06",X"06",X"03",
|
||||
X"00",X"10",X"10",X"F4",X"1E",X"16",X"1E",X"F7",X"1F",X"16",X"1E",X"F6",X"1C",X"10",X"90",X"00",
|
||||
X"0C",X"16",X"06",X"5B",X"7A",X"7E",X"1F",X"1F",X"1E",X"FE",X"FB",X"9B",X"1F",X"06",X"06",X"03",
|
||||
X"00",X"90",X"10",X"F4",X"1E",X"16",X"1E",X"F7",X"1F",X"16",X"1E",X"F6",X"1C",X"10",X"10",X"00",
|
||||
X"03",X"06",X"06",X"9B",X"FA",X"FE",X"1F",X"1F",X"1E",X"7E",X"7B",X"5B",X"1F",X"06",X"16",X"0C",
|
||||
X"00",X"E0",X"10",X"1E",X"16",X"FF",X"97",X"1E",X"16",X"1E",X"14",X"10",X"10",X"00",X"00",X"00",
|
||||
X"00",X"1F",X"9F",X"FE",X"FE",X"1F",X"1F",X"0F",X"7F",X"7F",X"5F",X"06",X"16",X"0C",X"00",X"00",
|
||||
X"00",X"00",X"F8",X"CA",X"8F",X"8B",X"8F",X"8B",X"8E",X"08",X"48",X"80",X"00",X"00",X"00",X"00",
|
||||
X"00",X"3F",X"3F",X"0F",X"0F",X"07",X"7F",X"7F",X"4F",X"03",X"03",X"01",X"00",X"00",X"00",X"00",
|
||||
X"00",X"C0",X"E0",X"C6",X"C5",X"C7",X"C5",X"84",X"84",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"07",X"07",X"03",X"1F",X"1F",X"17",X"01",X"05",X"03",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"C0",X"E0",X"E2",X"E3",X"C2",X"D2",X"60",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"01",X"1F",X"1F",X"13",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"60",X"D2",X"C2",X"7E",X"42",X"C0",X"C0",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"13",X"1F",X"1F",X"03",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"84",X"84",X"FD",X"87",X"85",X"C6",X"F8",X"80",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"03",X"05",X"01",X"16",X"1E",X"1F",X"07",X"07",X"07",X"00",
|
||||
X"00",X"00",X"00",X"00",X"80",X"48",X"08",X"FA",X"0F",X"0B",X"8F",X"FB",X"0E",X"08",X"80",X"00",
|
||||
X"00",X"00",X"00",X"00",X"01",X"03",X"03",X"4D",X"7D",X"7F",X"0F",X"0F",X"0F",X"3F",X"3D",X"00",
|
||||
X"00",X"00",X"00",X"10",X"10",X"F4",X"1E",X"16",X"1E",X"F7",X"1F",X"16",X"1E",X"F0",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"16",X"06",X"5B",X"7A",X"7E",X"1F",X"1F",X"1E",X"FE",X"FB",X"9B",X"1F",X"00",
|
||||
X"C0",X"60",X"E1",X"FB",X"DE",X"DC",X"78",X"78",X"F8",X"F8",X"7C",X"5E",X"DB",X"E1",X"60",X"C0",
|
||||
X"00",X"01",X"00",X"07",X"0F",X"08",X"08",X"08",X"0F",X"08",X"08",X"08",X"0F",X"00",X"01",X"00",
|
||||
X"00",X"80",X"C0",X"B0",X"B1",X"FF",X"FF",X"F0",X"F0",X"FF",X"BF",X"B1",X"F0",X"C0",X"80",X"00",
|
||||
X"00",X"07",X"01",X"1F",X"10",X"10",X"11",X"1F",X"10",X"10",X"11",X"1F",X"0F",X"01",X"07",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"90",X"2C",X"8C",X"56",X"92",X"E4",X"4E",X"9A",X"9C",X"58",X"28",X"00",
|
||||
X"F0",X"DC",X"92",X"FC",X"14",X"19",X"10",X"F1",X"10",X"10",X"11",X"F2",X"18",X"91",X"DC",X"F0",
|
||||
X"00",X"01",X"07",X"1B",X"9A",X"FE",X"FF",X"1F",X"1E",X"FE",X"FB",X"9B",X"1F",X"07",X"01",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"80",X"00",X"C0",X"20",X"30",X"20",X"10",X"20",X"20",X"20",X"40",X"80",X"00",X"00",
|
||||
X"80",X"40",X"A9",X"98",X"1C",X"2A",X"34",X"12",X"3D",X"0C",X"16",X"8D",X"14",X"8C",X"42",X"80",
|
||||
X"01",X"03",X"07",X"1B",X"9A",X"FE",X"FF",X"1F",X"1E",X"FE",X"FB",X"9B",X"1F",X"07",X"03",X"01",
|
||||
X"00",X"00",X"00",X"00",X"80",X"00",X"80",X"00",X"00",X"80",X"40",X"00",X"80",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"09",X"34",X"31",X"6A",X"49",X"27",X"72",X"59",X"39",X"1A",X"14",X"00",X"00",
|
||||
X"00",X"00",X"30",X"00",X"98",X"44",X"86",X"44",X"A2",X"84",X"C4",X"A4",X"88",X"90",X"40",X"00",
|
||||
X"00",X"00",X"01",X"03",X"03",X"05",X"06",X"02",X"07",X"01",X"02",X"01",X"02",X"01",X"00",X"00",
|
||||
X"00",X"00",X"81",X"00",X"80",X"20",X"00",X"80",X"20",X"00",X"00",X"00",X"81",X"80",X"00",X"00",
|
||||
X"00",X"00",X"00",X"1B",X"36",X"14",X"48",X"B0",X"C4",X"28",X"24",X"32",X"0B",X"04",X"00",X"00",
|
||||
X"58",X"0E",X"21",X"09",X"1A",X"20",X"00",X"00",X"00",X"00",X"28",X"04",X"06",X"21",X"02",X"18",
|
||||
X"04",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"04",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"90",X"04",X"88",X"40",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"A4",X"40",X"82",X"88",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"02",X"02",X"01",X"10",X"04",X"42",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"44",X"02",X"42",X"A6",X"8B",X"D3",X"EE",X"58",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"08",X"00",X"06",X"02",X"00",X"01",X"00",X"00",X"01",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"00",X"00",X"90",X"48",X"68",X"60",X"A0",X"28",
|
||||
X"F0",X"0C",X"F2",X"FD",X"C3",X"BF",X"41",X"80",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"03",X"0C",X"13",X"17",X"0F",X"2F",X"5F",X"5E",X"5E",X"5D",X"1D",X"1D",X"1D",X"1D",X"5D",X"5D",
|
||||
X"F0",X"0C",X"F2",X"FD",X"C3",X"BF",X"41",X"80",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"03",X"0C",X"13",X"17",X"2F",X"2F",X"1F",X"1E",X"1E",X"1D",X"5D",X"5D",X"5D",X"5D",X"1D",X"1D",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"5D",X"5D",X"1D",X"1D",X"1D",X"1D",X"5D",X"5D",X"5D",X"5D",X"1D",X"1D",X"1D",X"1D",X"5D",X"5D",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"1D",X"1D",X"5D",X"5D",X"5D",X"5D",X"1D",X"1D",X"1D",X"1D",X"5D",X"5D",X"5D",X"5D",X"1D",X"1D",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"E0",X"FC",X"FE",X"FC",X"F8",X"E0",X"F8",X"FC",X"FE",X"FE",X"FF",X"FF",X"FF",
|
||||
X"C0",X"30",X"08",X"04",X"02",X"02",X"01",X"01",X"01",X"01",X"02",X"02",X"04",X"08",X"30",X"C0",
|
||||
X"FF",X"FF",X"FF",X"FE",X"FE",X"FC",X"F8",X"E0",X"E0",X"F8",X"FC",X"FE",X"FE",X"FF",X"FF",X"FF",
|
||||
X"00",X"C0",X"C0",X"C0",X"C0",X"C0",X"C0",X"C0",X"C0",X"C0",X"C0",X"C0",X"C0",X"C0",X"C0",X"00",
|
||||
X"00",X"00",X"03",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"03",X"00",X"00",
|
||||
X"FF",X"FF",X"FF",X"7F",X"7F",X"3F",X"1F",X"07",X"07",X"1F",X"3F",X"7F",X"FF",X"FF",X"FF",X"FF",
|
||||
X"03",X"4C",X"50",X"D0",X"78",X"58",X"78",X"DC",X"7C",X"58",X"78",X"D8",X"70",X"50",X"4C",X"03",
|
||||
X"0C",X"DA",X"D8",X"EF",X"E8",X"F8",X"FC",X"FF",X"F8",X"F8",X"EC",X"EF",X"FC",X"D8",X"DA",X"0C",
|
||||
X"00",X"00",X"03",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"03",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"01",X"05",X"01",X"81",X"01",X"02",X"04",X"08",X"90",X"30",X"48",X"88",X"04",X"04",X"14",X"04",
|
||||
X"02",X"09",X"01",X"00",X"00",X"00",X"00",X"01",X"03",X"01",X"00",X"00",X"01",X"02",X"44",X"08",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"80",X"9C",X"38",X"80",X"C0",X"60",X"60",X"60",X"60",X"C0",X"80",X"38",X"9C",X"80",X"00",
|
||||
X"3F",X"C0",X"01",X"01",X"01",X"02",X"0C",X"1C",X"1C",X"0C",X"02",X"01",X"01",X"01",X"C0",X"3F",
|
||||
X"F0",X"0C",X"30",X"40",X"B8",X"70",X"80",X"80",X"80",X"80",X"70",X"B8",X"40",X"30",X"0C",X"F0",
|
||||
X"0F",X"60",X"10",X"00",X"0F",X"3E",X"37",X"7F",X"7F",X"37",X"3E",X"0F",X"00",X"10",X"60",X"0F",
|
||||
X"C0",X"20",X"67",X"4E",X"60",X"B0",X"18",X"18",X"18",X"18",X"B0",X"60",X"4E",X"67",X"20",X"C0",
|
||||
X"0F",X"30",X"00",X"00",X"00",X"00",X"03",X"07",X"07",X"03",X"00",X"00",X"00",X"00",X"30",X"0F",
|
||||
X"FC",X"03",X"0C",X"10",X"EE",X"9C",X"E0",X"E0",X"E0",X"E0",X"9C",X"EE",X"10",X"0C",X"03",X"FC",
|
||||
X"03",X"18",X"04",X"00",X"03",X"0F",X"0D",X"1F",X"1F",X"0D",X"0F",X"03",X"00",X"04",X"18",X"03",
|
||||
X"F0",X"F8",X"B8",X"3C",X"7E",X"FE",X"FE",X"FE",X"FE",X"FE",X"FE",X"7E",X"0C",X"5C",X"3C",X"18",
|
||||
X"01",X"B2",X"F8",X"F8",X"FC",X"DF",X"0F",X"07",X"07",X"07",X"07",X"07",X"1F",X"3E",X"1C",X"0E",
|
||||
X"18",X"3C",X"5C",X"0E",X"7F",X"FF",X"FF",X"FF",X"FF",X"FF",X"FE",X"7C",X"38",X"B8",X"F8",X"F0",
|
||||
X"0E",X"1C",X"3E",X"1F",X"07",X"07",X"07",X"07",X"07",X"0F",X"DF",X"FC",X"F8",X"F8",X"B2",X"01",
|
||||
X"18",X"3C",X"5C",X"0E",X"7E",X"E6",X"AE",X"BE",X"AE",X"E6",X"FE",X"7C",X"3C",X"B8",X"F8",X"F0",
|
||||
X"0E",X"1C",X"3E",X"1F",X"0F",X"07",X"07",X"07",X"07",X"0F",X"DF",X"FC",X"F8",X"F8",X"B2",X"01",
|
||||
X"F0",X"F8",X"B8",X"3C",X"7E",X"F2",X"D7",X"DF",X"D7",X"F3",X"FE",X"7E",X"0C",X"5C",X"3C",X"18",
|
||||
X"01",X"B2",X"F8",X"F8",X"FC",X"DF",X"0F",X"07",X"07",X"07",X"07",X"0F",X"1F",X"3E",X"1C",X"0E",
|
||||
X"8A",X"4E",X"1F",X"3F",X"3F",X"F2",X"F0",X"E0",X"E0",X"E3",X"E7",X"FF",X"FF",X"7D",X"38",X"00",
|
||||
X"0F",X"1F",X"1D",X"3C",X"7E",X"3F",X"A7",X"E7",X"A7",X"3F",X"7F",X"7E",X"30",X"B0",X"60",X"80",
|
||||
X"00",X"38",X"7D",X"FF",X"FF",X"E7",X"E3",X"E0",X"E0",X"F0",X"F2",X"3F",X"3F",X"1F",X"4E",X"8A",
|
||||
X"80",X"60",X"B0",X"30",X"7E",X"7F",X"3F",X"A7",X"E7",X"A7",X"3F",X"7E",X"3C",X"1D",X"1F",X"0F",
|
||||
X"00",X"40",X"F8",X"FC",X"FC",X"FC",X"FC",X"FC",X"FC",X"FC",X"18",X"B8",X"78",X"30",X"00",X"00",
|
||||
X"00",X"F0",X"F8",X"BF",X"1F",X"0F",X"0F",X"0F",X"0F",X"0E",X"3E",X"7C",X"38",X"1C",X"00",X"00",
|
||||
X"00",X"C0",X"F8",X"FE",X"FF",X"FF",X"FE",X"7C",X"38",X"B8",X"F8",X"F0",X"00",X"00",X"00",X"00",
|
||||
X"00",X"07",X"07",X"07",X"07",X"0F",X"DF",X"FC",X"F8",X"F8",X"B2",X"01",X"00",X"00",X"00",X"00",
|
||||
X"00",X"C0",X"F8",X"FE",X"FF",X"BF",X"86",X"2E",X"1E",X"0C",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"03",X"03",X"03",X"03",X"03",X"0F",X"1F",X"0E",X"07",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"C0",X"F8",X"1E",X"0E",X"2E",X"BE",X"7C",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"03",X"37",X"3F",X"3E",X"3E",X"2C",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"7C",X"BE",X"2E",X"0F",X"1E",X"F8",X"C0",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"2C",X"3E",X"3E",X"3F",X"37",X"03",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"0C",X"1E",X"2E",X"87",X"BF",X"F3",X"D6",X"D8",X"C0",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"07",X"0E",X"1F",X"0F",X"07",X"03",X"03",X"03",X"03",X"00",
|
||||
X"00",X"00",X"00",X"00",X"F0",X"F8",X"B8",X"3C",X"7E",X"F2",X"D7",X"DF",X"D6",X"F0",X"C0",X"00",
|
||||
X"00",X"00",X"00",X"00",X"01",X"B2",X"F8",X"F8",X"FC",X"DF",X"0F",X"07",X"07",X"07",X"07",X"00",
|
||||
X"00",X"00",X"30",X"78",X"B8",X"1C",X"FC",X"CC",X"5C",X"7C",X"5C",X"CC",X"FC",X"F8",X"40",X"00",
|
||||
X"00",X"00",X"1C",X"38",X"7C",X"3E",X"1E",X"0F",X"0F",X"0F",X"0F",X"1F",X"BF",X"F8",X"F0",X"00",
|
||||
X"80",X"A0",X"00",X"40",X"80",X"50",X"64",X"E0",X"E0",X"60",X"20",X"30",X"20",X"80",X"00",X"80",
|
||||
X"01",X"0F",X"03",X"6E",X"3E",X"7F",X"5E",X"5B",X"46",X"76",X"5F",X"4C",X"0F",X"0B",X"15",X"0B",
|
||||
X"C0",X"20",X"80",X"70",X"D4",X"20",X"70",X"F0",X"60",X"30",X"F0",X"E0",X"A0",X"D0",X"40",X"80",
|
||||
X"04",X"2B",X"63",X"68",X"63",X"17",X"8D",X"1D",X"1D",X"DF",X"E6",X"D3",X"E1",X"90",X"08",X"16",
|
||||
X"E0",X"E0",X"70",X"78",X"FC",X"E4",X"AE",X"BE",X"AE",X"E6",X"FC",X"FC",X"18",X"B8",X"78",X"20",
|
||||
X"03",X"25",X"41",X"EC",X"D6",X"BF",X"8F",X"0F",X"0F",X"8F",X"55",X"FE",X"CA",X"AC",X"A0",X"10",
|
||||
X"C0",X"30",X"80",X"20",X"40",X"80",X"80",X"00",X"00",X"00",X"00",X"08",X"30",X"00",X"30",X"C0",
|
||||
X"07",X"1E",X"30",X"37",X"66",X"7C",X"6C",X"68",X"62",X"6A",X"6D",X"34",X"33",X"10",X"0E",X"07",
|
||||
X"80",X"60",X"80",X"20",X"30",X"10",X"10",X"00",X"00",X"10",X"10",X"A0",X"60",X"00",X"E0",X"80",
|
||||
X"0F",X"05",X"03",X"0F",X"2C",X"5F",X"56",X"44",X"56",X"5F",X"7F",X"2E",X"2E",X"03",X"1F",X"07",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"E0",X"58",X"E0",X"C8",X"0C",X"C0",X"80",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"03",X"01",X"00",X"03",X"0B",X"17",X"15",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"E0",X"18",X"40",X"90",X"20",X"40",X"40",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"03",X"0F",X"18",X"1B",X"33",X"3E",X"36",X"34",X"00",
|
||||
X"00",X"00",X"00",X"00",X"80",X"60",X"80",X"20",X"30",X"10",X"10",X"00",X"00",X"10",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"0F",X"05",X"03",X"0F",X"2C",X"5F",X"56",X"44",X"56",X"5F",X"7F",X"00",
|
||||
X"00",X"00",X"00",X"80",X"60",X"00",X"40",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"0F",X"3C",X"61",X"6E",X"CC",X"F9",X"D9",X"D0",X"C4",X"D4",X"DA",X"68",X"00",
|
||||
X"80",X"60",X"00",X"20",X"10",X"00",X"00",X"00",X"00",X"20",X"40",X"80",X"C0",X"E0",X"C0",X"80",
|
||||
X"0F",X"1C",X"20",X"66",X"68",X"DA",X"D4",X"C4",X"D0",X"D9",X"F9",X"ED",X"6F",X"77",X"3F",X"0F",
|
||||
X"80",X"60",X"00",X"40",X"80",X"00",X"20",X"00",X"00",X"00",X"10",X"80",X"E0",X"60",X"E0",X"80",
|
||||
X"0F",X"3C",X"61",X"6E",X"CC",X"F9",X"D9",X"D0",X"C4",X"D4",X"DB",X"6F",X"67",X"3E",X"1C",X"0F",
|
||||
X"00",X"30",X"00",X"20",X"40",X"80",X"80",X"00",X"00",X"00",X"00",X"00",X"20",X"00",X"30",X"00",
|
||||
X"06",X"12",X"30",X"30",X"02",X"04",X"0C",X"08",X"62",X"62",X"48",X"34",X"33",X"10",X"0E",X"07",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"12",X"10",X"10",X"00",X"00",X"00",X"00",X"40",X"60",X"40",X"20",X"01",X"00",X"08",X"07",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"20",X"00",
|
||||
X"00",X"04",X"20",X"20",X"00",X"00",X"04",X"30",X"80",X"C0",X"80",X"40",X"00",X"00",X"10",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"1C",X"7E",X"F3",X"C3",X"C0",X"F8",X"F8",X"F8",X"F8",X"F8",X"F0",X"E0",X"F3",X"F3",X"7E",X"1C",
|
||||
X"00",X"00",X"B1",X"F9",X"FF",X"FF",X"FF",X"1F",X"1F",X"3F",X"3F",X"3F",X"39",X"31",X"00",X"00",
|
||||
X"FE",X"F6",X"F0",X"E0",X"F0",X"F8",X"F8",X"F8",X"F8",X"F8",X"F0",X"E0",X"E0",X"F0",X"F6",X"FE",
|
||||
X"00",X"01",X"31",X"39",X"3F",X"3F",X"3F",X"1F",X"1F",X"FF",X"FF",X"FF",X"F9",X"B1",X"01",X"00",
|
||||
X"1C",X"7E",X"F3",X"E3",X"90",X"08",X"08",X"08",X"98",X"F8",X"F0",X"E0",X"F3",X"F3",X"7E",X"1C",
|
||||
X"00",X"00",X"31",X"39",X"3F",X"3D",X"3D",X"1D",X"1F",X"FF",X"FF",X"FF",X"F9",X"B1",X"00",X"00",
|
||||
X"FE",X"F6",X"F0",X"E0",X"90",X"08",X"08",X"08",X"98",X"F8",X"F0",X"E0",X"E0",X"F0",X"F6",X"FE",
|
||||
X"00",X"01",X"B1",X"F9",X"FF",X"FD",X"FD",X"1D",X"1F",X"3F",X"3F",X"3F",X"39",X"31",X"01",X"00",
|
||||
X"00",X"00",X"8C",X"99",X"FF",X"FF",X"FF",X"BF",X"B8",X"B8",X"FC",X"FC",X"BC",X"9E",X"0E",X"1E",
|
||||
X"98",X"7E",X"DF",X"4F",X"07",X"0F",X"19",X"10",X"10",X"10",X"59",X"CF",X"47",X"B7",X"3E",X"0C",
|
||||
X"21",X"1F",X"1F",X"BF",X"FF",X"FC",X"FD",X"7D",X"5E",X"5F",X"DA",X"F9",X"B8",X"B8",X"38",X"78",
|
||||
X"00",X"1E",X"3F",X"B7",X"47",X"CF",X"5C",X"18",X"18",X"18",X"1C",X"0F",X"47",X"CF",X"7E",X"98",
|
||||
X"00",X"C0",X"C0",X"F8",X"F8",X"F8",X"F8",X"F8",X"F0",X"E0",X"F3",X"F3",X"7E",X"1C",X"00",X"00",
|
||||
X"00",X"F9",X"FF",X"FF",X"FF",X"1F",X"1F",X"3F",X"3F",X"3F",X"39",X"31",X"00",X"00",X"00",X"00",
|
||||
X"00",X"E0",X"F8",X"FC",X"FC",X"FC",X"F8",X"F0",X"F0",X"F8",X"FB",X"7F",X"00",X"00",X"00",X"00",
|
||||
X"00",X"1F",X"1F",X"0F",X"0F",X"7F",X"7F",X"7F",X"7C",X"58",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"C0",X"F8",X"FE",X"FC",X"F8",X"7D",X"7D",X"1F",X"06",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"07",X"07",X"0F",X"0F",X"0F",X"0E",X"0C",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"C0",X"F8",X"FC",X"3C",X"3C",X"3D",X"1F",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"1F",X"1F",X"1F",X"1F",X"16",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"1F",X"3D",X"3C",X"38",X"F2",X"A0",X"80",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"16",X"1F",X"1F",X"1F",X"1F",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"06",X"1F",X"7D",X"79",X"E4",X"42",X"42",X"40",X"C0",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"0C",X"0E",X"0F",X"0F",X"0F",X"07",X"07",X"00",
|
||||
X"00",X"00",X"00",X"00",X"7F",X"FB",X"F8",X"F0",X"C8",X"84",X"84",X"84",X"CC",X"F8",X"C0",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"58",X"7C",X"7F",X"7E",X"7E",X"0E",X"0F",X"1F",X"1F",X"00",
|
||||
X"00",X"00",X"1C",X"7E",X"F3",X"E3",X"90",X"08",X"08",X"08",X"98",X"F8",X"F0",X"E0",X"C0",X"00",
|
||||
X"00",X"00",X"00",X"00",X"31",X"39",X"3F",X"3D",X"3D",X"1D",X"1F",X"FF",X"FF",X"FF",X"F9",X"00",
|
||||
X"00",X"00",X"00",X"00",X"C0",X"E0",X"60",X"20",X"20",X"60",X"E0",X"C0",X"00",X"00",X"80",X"00",
|
||||
X"00",X"82",X"C4",X"FE",X"7F",X"FF",X"7E",X"7C",X"FC",X"7E",X"7F",X"FF",X"7E",X"C3",X"80",X"00",
|
||||
X"00",X"00",X"80",X"00",X"F0",X"F8",X"98",X"08",X"08",X"98",X"F8",X"F0",X"80",X"C0",X"00",X"00",
|
||||
X"00",X"80",X"D3",X"FF",X"FF",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"FF",X"FF",X"D1",X"80",X"00",
|
||||
X"00",X"30",X"E0",X"E0",X"90",X"08",X"08",X"08",X"98",X"F8",X"F0",X"E0",X"E0",X"E0",X"30",X"00",
|
||||
X"00",X"80",X"F0",X"79",X"7F",X"7D",X"3D",X"3D",X"3F",X"7F",X"7F",X"7F",X"79",X"F0",X"80",X"00",
|
||||
X"00",X"00",X"00",X"00",X"80",X"F0",X"98",X"08",X"08",X"98",X"F0",X"80",X"00",X"00",X"00",X"00",
|
||||
X"00",X"20",X"38",X"1C",X"7F",X"1F",X"7F",X"3F",X"3F",X"7F",X"1F",X"7F",X"1C",X"38",X"20",X"00",
|
||||
X"00",X"00",X"00",X"00",X"80",X"C0",X"C0",X"40",X"40",X"C0",X"C0",X"80",X"00",X"00",X"00",X"00",
|
||||
X"24",X"4C",X"F8",X"FC",X"7F",X"7F",X"FC",X"78",X"F8",X"FC",X"7F",X"7F",X"7C",X"DC",X"84",X"42",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"E0",X"F0",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"09",X"13",X"3E",X"3F",X"1F",X"1F",X"3F",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"C0",X"F8",X"CC",X"80",X"80",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"10",X"1C",X"0E",X"3F",X"0F",X"3F",X"1F",X"1F",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"C0",X"C0",X"40",X"40",X"C0",X"C0",X"00",
|
||||
X"00",X"00",X"00",X"00",X"24",X"4C",X"F8",X"FC",X"7F",X"7F",X"FC",X"78",X"F8",X"FC",X"7F",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"E0",X"30",X"10",X"10",X"30",X"E0",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"40",X"70",X"38",X"FF",X"3F",X"FF",X"7E",X"7E",X"FF",X"3F",X"FF",X"38",X"00",
|
||||
X"08",X"84",X"EC",X"F8",X"F8",X"F8",X"FC",X"7C",X"78",X"FC",X"F8",X"F8",X"FC",X"7C",X"88",X"90",
|
||||
X"01",X"00",X"00",X"00",X"07",X"0F",X"0C",X"08",X"08",X"0C",X"0F",X"07",X"00",X"00",X"00",X"00",
|
||||
X"40",X"20",X"64",X"FE",X"FA",X"F9",X"FC",X"7C",X"78",X"FC",X"F8",X"F8",X"75",X"66",X"20",X"10",
|
||||
X"00",X"00",X"00",X"00",X"07",X"0F",X"0C",X"08",X"08",X"0C",X"0F",X"07",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"80",X"00",X"00",X"00",X"00",X"00",X"C0",X"80",X"00",X"00",X"00",X"00",
|
||||
X"24",X"4C",X"F8",X"FC",X"7B",X"7C",X"E6",X"42",X"C2",X"E6",X"7D",X"7F",X"7C",X"DC",X"84",X"42",
|
||||
X"00",X"00",X"C0",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"00",X"00",X"80",X"00",
|
||||
X"16",X"59",X"7F",X"BE",X"3B",X"12",X"00",X"20",X"A0",X"E0",X"F0",X"79",X"5E",X"33",X"0D",X"05",
|
||||
X"00",X"00",X"C0",X"80",X"08",X"00",X"00",X"40",X"00",X"00",X"10",X"80",X"04",X"00",X"00",X"00",
|
||||
X"04",X"49",X"34",X"48",X"A3",X"B0",X"20",X"20",X"A0",X"20",X"D0",X"08",X"54",X"33",X"08",X"05",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"E0",X"FC",X"FE",X"E1",X"C0",X"C4",X"F8",X"F8",X"C4",X"C0",X"E1",X"FE",X"FC",X"E0",X"00",X"00",
|
||||
X"3F",X"FF",X"07",X"8F",X"FF",X"1F",X"0F",X"07",X"0F",X"3F",X"2F",X"07",X"FF",X"3F",X"00",X"00",
|
||||
X"00",X"E0",X"FC",X"E3",X"C0",X"C4",X"F8",X"F8",X"C4",X"C0",X"E3",X"FC",X"E0",X"00",X"00",X"00",
|
||||
X"00",X"3F",X"FF",X"2F",X"3F",X"0F",X"0F",X"07",X"1F",X"FF",X"8F",X"FF",X"3F",X"00",X"00",X"00",
|
||||
X"E0",X"FC",X"FE",X"E1",X"C0",X"C0",X"F8",X"F8",X"C0",X"C0",X"E1",X"FE",X"FC",X"E0",X"00",X"00",
|
||||
X"3F",X"FF",X"07",X"8F",X"FF",X"1F",X"07",X"07",X"0F",X"3F",X"2F",X"07",X"FF",X"3F",X"00",X"00",
|
||||
X"00",X"E0",X"FC",X"E3",X"C0",X"C0",X"F8",X"F8",X"C0",X"C0",X"E3",X"FC",X"E0",X"00",X"00",X"00",
|
||||
X"00",X"3F",X"FF",X"2F",X"3F",X"0F",X"07",X"07",X"1F",X"FF",X"8F",X"FF",X"3F",X"01",X"00",X"00",
|
||||
X"F8",X"FE",X"E0",X"40",X"F0",X"44",X"1C",X"F0",X"E0",X"E0",X"F0",X"D8",X"E8",X"BF",X"5E",X"00",
|
||||
X"00",X"0D",X"1C",X"3F",X"60",X"98",X"2E",X"47",X"0F",X"0F",X"03",X"03",X"97",X"7F",X"0F",X"00",
|
||||
X"00",X"5C",X"BB",X"EC",X"1A",X"30",X"E0",X"E0",X"F0",X"1C",X"44",X"F0",X"40",X"E0",X"FE",X"F8",
|
||||
X"00",X"0F",X"7F",X"97",X"03",X"03",X"0F",X"0F",X"07",X"4E",X"B8",X"60",X"3F",X"1C",X"0D",X"00",
|
||||
X"00",X"C0",X"80",X"88",X"F0",X"F0",X"88",X"80",X"C2",X"FC",X"F8",X"C0",X"00",X"00",X"00",X"00",
|
||||
X"00",X"9F",X"FF",X"3F",X"1F",X"0F",X"1F",X"7F",X"5F",X"0F",X"FF",X"7F",X"00",X"00",X"00",X"00",
|
||||
X"00",X"C0",X"F8",X"F8",X"C4",X"C0",X"E3",X"FC",X"E0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"0F",X"0F",X"07",X"1F",X"FF",X"8F",X"FF",X"3F",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"C0",X"E0",X"E0",X"F0",X"FF",X"FE",X"F0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"03",X"07",X"1F",X"17",X"03",X"7F",X"1F",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"C0",X"F8",X"FE",X"F8",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"3F",X"23",X"3F",X"0F",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"F8",X"FF",X"F8",X"F0",X"F0",X"C0",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"0F",X"3F",X"0B",X"0F",X"03",X"01",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"F0",X"FE",X"FF",X"F0",X"E0",X"E0",X"FC",X"F8",X"C0",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"1F",X"7F",X"03",X"47",X"7F",X"0F",X"03",X"03",X"07",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"E0",X"FC",X"E3",X"C0",X"C0",X"F8",X"F8",X"C0",X"C0",X"C0",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"3F",X"FF",X"2F",X"3F",X"0F",X"07",X"07",X"1F",X"FF",X"8F",X"00",
|
||||
X"00",X"00",X"C0",X"F8",X"FC",X"C2",X"80",X"80",X"F0",X"F0",X"80",X"80",X"C2",X"F8",X"C0",X"00",
|
||||
X"00",X"00",X"7F",X"FF",X"0F",X"9F",X"FF",X"3F",X"0F",X"0F",X"1F",X"7F",X"5F",X"0F",X"FF",X"00",
|
||||
X"00",X"00",X"00",X"00",X"E0",X"FC",X"FF",X"F8",X"F8",X"FF",X"FC",X"E0",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"07",X"3F",X"FF",X"07",X"07",X"FF",X"3F",X"07",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"E0",X"F8",X"FC",X"C3",X"C0",X"F8",X"F8",X"C3",X"FE",X"FC",X"E0",X"00",X"00",X"00",
|
||||
X"00",X"00",X"3F",X"7F",X"EF",X"3F",X"0F",X"07",X"07",X"1F",X"FF",X"7F",X"1F",X"00",X"00",X"00",
|
||||
X"00",X"E0",X"FC",X"FE",X"E1",X"C0",X"C0",X"F8",X"F8",X"C1",X"C2",X"FE",X"FC",X"E0",X"00",X"00",
|
||||
X"00",X"3F",X"FF",X"07",X"8F",X"FF",X"1F",X"07",X"07",X"0F",X"3F",X"EF",X"7F",X"3F",X"00",X"00",
|
||||
X"00",X"00",X"FC",X"F8",X"F6",X"FE",X"FC",X"F8",X"F0",X"E0",X"80",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"01",X"07",X"0F",X"1F",X"3F",X"3F",X"7F",X"7F",X"7F",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"80",X"E0",X"F0",X"F8",X"FC",X"FE",X"F6",X"F8",X"FC",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"7F",X"7F",X"7F",X"3F",X"3F",X"1F",X"0F",X"07",X"01",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"E0",X"C0",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"1F",X"1F",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"7F",X"FE",X"FD",X"FF",X"FE",X"F8",X"C0",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"03",X"07",X"0F",X"0F",X"1F",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"E0",X"F0",X"F8",X"F8",X"C0",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"7F",X"7F",X"7F",X"3F",X"3F",X"1F",X"00",
|
||||
X"00",X"00",X"00",X"00",X"F8",X"F0",X"EC",X"FC",X"F8",X"F0",X"E0",X"C0",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"03",X"0F",X"1F",X"3F",X"7F",X"7F",X"FF",X"FF",X"FF",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"FE",X"FE",X"FC",X"F8",X"C0",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"01",X"07",X"1F",X"3F",X"77",X"9F",X"1F",X"2F",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"C0",X"F8",X"FC",X"FE",X"FE",X"FF",X"E7",X"F8",X"FC",X"FE",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"0F",X"2F",X"1F",X"87",X"77",X"3B",X"3F",X"1F",X"07",X"01",X"00",X"00",X"00",
|
||||
X"40",X"C0",X"C0",X"80",X"0C",X"3C",X"38",X"C0",X"E0",X"C0",X"00",X"80",X"A0",X"70",X"F0",X"78",
|
||||
X"00",X"00",X"03",X"05",X"10",X"37",X"7E",X"79",X"F7",X"FD",X"FE",X"0F",X"07",X"02",X"00",X"00",
|
||||
X"C0",X"A0",X"00",X"04",X"08",X"40",X"F0",X"80",X"40",X"30",X"00",X"00",X"C0",X"88",X"20",X"10",
|
||||
X"00",X"91",X"25",X"4D",X"38",X"72",X"70",X"C2",X"4B",X"B9",X"B8",X"5C",X"0C",X"02",X"40",X"00",
|
||||
X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"20",X"00",X"00",X"00",
|
||||
X"00",X"01",X"10",X"40",X"20",X"A0",X"C0",X"58",X"10",X"45",X"90",X"00",X"60",X"28",X"0C",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"0A",X"8A",X"CC",X"9F",X"7F",X"7E",X"40",X"14",X"14",X"5D",X"7F",X"7F",X"9E",X"C0",X"80",X"00",
|
||||
X"7F",X"1F",X"0F",X"07",X"07",X"07",X"46",X"00",X"00",X"26",X"07",X"07",X"07",X"0F",X"1F",X"7F",
|
||||
X"00",X"14",X"94",X"DD",X"8F",X"7F",X"7E",X"00",X"38",X"7E",X"6F",X"8F",X"CC",X"8A",X"0A",X"00",
|
||||
X"00",X"00",X"1F",X"07",X"07",X"07",X"26",X"00",X"00",X"46",X"07",X"07",X"07",X"1F",X"00",X"00",
|
||||
X"0A",X"8A",X"CF",X"99",X"79",X"FE",X"C0",X"14",X"14",X"DF",X"F9",X"79",X"9E",X"C0",X"80",X"00",
|
||||
X"7F",X"1F",X"0F",X"01",X"00",X"01",X"41",X"00",X"00",X"21",X"01",X"00",X"01",X"0F",X"1F",X"7F",
|
||||
X"00",X"14",X"D4",X"9F",X"09",X"F9",X"FE",X"00",X"70",X"FE",X"D9",X"09",X"8F",X"CA",X"0A",X"00",
|
||||
X"00",X"00",X"1F",X"07",X"00",X"01",X"21",X"00",X"00",X"41",X"01",X"00",X"07",X"1F",X"00",X"00",
|
||||
X"02",X"1C",X"7C",X"F8",X"F0",X"70",X"74",X"20",X"00",X"22",X"70",X"70",X"E0",X"EC",X"F0",X"C0",
|
||||
X"40",X"78",X"68",X"58",X"78",X"3B",X"1F",X"0E",X"00",X"1F",X"2F",X"FC",X"2D",X"1B",X"03",X"01",
|
||||
X"08",X"F0",X"E0",X"C0",X"70",X"70",X"22",X"00",X"20",X"74",X"70",X"F0",X"F0",X"78",X"3C",X"0F",
|
||||
X"00",X"01",X"1B",X"2D",X"FC",X"2F",X"1F",X"00",X"0E",X"1F",X"3B",X"78",X"58",X"68",X"78",X"40",
|
||||
X"00",X"00",X"F8",X"FC",X"80",X"28",X"28",X"BA",X"FE",X"FE",X"3C",X"80",X"00",X"00",X"00",X"00",
|
||||
X"00",X"0F",X"0E",X"0E",X"4C",X"00",X"00",X"4C",X"0E",X"0E",X"0F",X"1F",X"3F",X"FE",X"00",X"00",
|
||||
X"00",X"40",X"78",X"00",X"38",X"7E",X"6F",X"8F",X"CC",X"8A",X"0A",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"07",X"26",X"00",X"00",X"46",X"07",X"07",X"07",X"1F",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"08",X"2E",X"BF",X"BF",X"CF",X"E0",X"C0",X"80",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"13",X"03",X"03",X"03",X"07",X"0F",X"3F",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"80",X"D8",X"E2",X"F3",X"E2",X"02",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"11",X"01",X"01",X"01",X"07",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"05",X"F5",X"E7",X"02",X"78",X"40",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"07",X"01",X"00",X"00",X"08",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"85",X"C5",X"E7",X"C9",X"39",X"FF",X"E0",X"08",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"3F",X"0F",X"07",X"00",X"00",X"00",X"20",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"14",X"D4",X"9F",X"09",X"F9",X"FE",X"00",X"70",X"F8",X"C0",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"1F",X"07",X"00",X"01",X"21",X"00",X"00",X"41",X"01",X"00",
|
||||
X"00",X"00",X"14",X"14",X"9E",X"32",X"F2",X"FC",X"80",X"28",X"28",X"BE",X"F2",X"F0",X"00",X"00",
|
||||
X"00",X"00",X"FE",X"3F",X"1F",X"03",X"00",X"03",X"43",X"00",X"00",X"03",X"23",X"00",X"03",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"44",X"CC",X"8C",X"98",X"08",X"00",X"40",X"C0",X"80",X"00",X"00",
|
||||
X"00",X"00",X"02",X"10",X"10",X"33",X"37",X"62",X"4B",X"1C",X"1E",X"06",X"00",X"00",X"00",X"00",
|
||||
X"50",X"50",X"48",X"88",X"08",X"92",X"00",X"A0",X"80",X"F8",X"48",X"88",X"F0",X"02",X"00",X"00",
|
||||
X"18",X"30",X"1E",X"0C",X"0B",X"65",X"28",X"00",X"20",X"48",X"08",X"03",X"0C",X"56",X"38",X"10",
|
||||
X"00",X"28",X"A8",X"3E",X"12",X"F2",X"FC",X"00",X"E0",X"FC",X"B2",X"12",X"1E",X"94",X"14",X"00",
|
||||
X"00",X"00",X"17",X"0F",X"40",X"0B",X"03",X"50",X"20",X"23",X"23",X"88",X"0F",X"1F",X"00",X"00",
|
||||
X"00",X"38",X"18",X"10",X"80",X"C4",X"CC",X"8C",X"18",X"18",X"00",X"C0",X"C0",X"80",X"00",X"00",
|
||||
X"03",X"07",X"02",X"00",X"00",X"31",X"33",X"60",X"48",X"18",X"18",X"00",X"00",X"01",X"01",X"00",
|
||||
X"00",X"00",X"80",X"C0",X"C0",X"00",X"18",X"18",X"8C",X"CC",X"C4",X"80",X"10",X"18",X"38",X"00",
|
||||
X"00",X"01",X"01",X"00",X"00",X"18",X"18",X"48",X"60",X"33",X"31",X"00",X"00",X"02",X"07",X"03",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"10",X"18",X"0C",X"0C",X"80",X"80",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"01",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"C0",X"CE",X"86",X"04",X"20",X"71",X"F3",X"22",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"0C",X"0C",X"18",X"12",X"06",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"80",X"C0",X"60",X"60",X"00",X"0C",X"0C",X"46",X"E0",X"E0",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"0C",X"0C",X"24",X"30",X"19",X"18",X"00",
|
||||
X"00",X"00",X"00",X"38",X"18",X"10",X"80",X"C4",X"CC",X"8C",X"18",X"18",X"00",X"C0",X"C0",X"00",
|
||||
X"00",X"00",X"03",X"07",X"02",X"00",X"00",X"31",X"33",X"60",X"48",X"18",X"18",X"00",X"00",X"00",
|
||||
X"00",X"00",X"C0",X"40",X"10",X"38",X"10",X"00",X"00",X"00",X"40",X"60",X"00",X"80",X"00",X"00",
|
||||
X"00",X"00",X"04",X"1C",X"18",X"02",X"03",X"03",X"19",X"18",X"1C",X"08",X"03",X"03",X"00",X"00",
|
||||
X"00",X"00",X"80",X"00",X"60",X"40",X"00",X"00",X"00",X"10",X"38",X"10",X"40",X"C0",X"00",X"00",
|
||||
X"00",X"00",X"03",X"03",X"08",X"1C",X"18",X"19",X"03",X"03",X"02",X"18",X"1C",X"04",X"00",X"00",
|
||||
X"00",X"00",X"80",X"C0",X"40",X"00",X"08",X"18",X"8C",X"CC",X"04",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"04",X"08",X"08",X"42",X"63",X"05",X"22",X"00",X"10",X"02",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"40",X"C0",X"60",X"60",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"04",X"04",X"22",X"40",X"40",X"10",X"1C",X"2C",X"00",X"00",X"80",X"10",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"80",X"80",X"00",X"10",X"30",X"00",X"80",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"C0",X"30",X"80",X"20",X"40",X"80",X"80",X"00",X"00",X"00",X"00",X"08",X"30",X"00",X"30",X"C0",
|
||||
X"07",X"1E",X"30",X"37",X"66",X"7C",X"6C",X"68",X"62",X"6A",X"6D",X"34",X"33",X"10",X"0E",X"07",
|
||||
X"C0",X"30",X"80",X"20",X"40",X"80",X"80",X"00",X"00",X"00",X"00",X"08",X"30",X"00",X"30",X"C0",
|
||||
X"07",X"1E",X"30",X"37",X"66",X"7C",X"6C",X"68",X"62",X"6A",X"6D",X"34",X"33",X"10",X"0E",X"07",
|
||||
X"C0",X"30",X"80",X"20",X"40",X"80",X"80",X"00",X"00",X"00",X"00",X"08",X"30",X"00",X"30",X"C0",
|
||||
X"07",X"1E",X"30",X"37",X"66",X"7C",X"6C",X"68",X"62",X"6A",X"6D",X"34",X"33",X"10",X"0E",X"07",
|
||||
X"C0",X"30",X"80",X"20",X"40",X"80",X"80",X"00",X"00",X"00",X"00",X"08",X"30",X"00",X"30",X"C0",
|
||||
X"07",X"1E",X"30",X"37",X"66",X"7C",X"6C",X"68",X"62",X"6A",X"6D",X"34",X"33",X"10",X"0E",X"07",
|
||||
X"C0",X"30",X"80",X"20",X"40",X"80",X"80",X"00",X"00",X"00",X"00",X"00",X"30",X"00",X"30",X"C0",
|
||||
X"07",X"1E",X"30",X"37",X"66",X"7C",X"6C",X"68",X"62",X"6A",X"6D",X"34",X"33",X"10",X"0E",X"07",
|
||||
X"C0",X"20",X"80",X"20",X"40",X"80",X"80",X"00",X"00",X"00",X"00",X"00",X"20",X"00",X"20",X"C0",
|
||||
X"07",X"1E",X"30",X"37",X"66",X"7C",X"6C",X"68",X"62",X"6A",X"6D",X"34",X"33",X"10",X"0E",X"07",
|
||||
X"C0",X"00",X"80",X"00",X"40",X"80",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"C0",
|
||||
X"07",X"1E",X"30",X"37",X"66",X"7C",X"6C",X"68",X"62",X"6A",X"6D",X"34",X"33",X"10",X"0E",X"07",
|
||||
X"80",X"00",X"80",X"00",X"00",X"80",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",
|
||||
X"07",X"1E",X"30",X"37",X"66",X"7C",X"6C",X"68",X"62",X"6A",X"6D",X"34",X"33",X"10",X"0E",X"07",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"07",X"1E",X"30",X"37",X"66",X"7C",X"6C",X"68",X"62",X"6A",X"6D",X"34",X"33",X"10",X"0E",X"07",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"06",X"1E",X"30",X"36",X"66",X"7C",X"6C",X"68",X"62",X"6A",X"6C",X"34",X"32",X"10",X"0E",X"06",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"04",X"1C",X"30",X"34",X"64",X"7C",X"6C",X"68",X"60",X"68",X"6C",X"34",X"30",X"10",X"0C",X"04",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"18",X"30",X"30",X"60",X"78",X"68",X"68",X"60",X"68",X"68",X"30",X"30",X"10",X"08",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"10",X"30",X"30",X"60",X"70",X"60",X"60",X"60",X"60",X"60",X"30",X"30",X"10",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"20",X"20",X"60",X"60",X"60",X"60",X"60",X"60",X"60",X"20",X"20",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"40",X"40",X"40",X"40",X"40",X"40",X"40",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"80",X"F0",X"98",X"08",X"08",X"98",X"F0",X"80",X"00",X"00",X"00",X"00",
|
||||
X"00",X"20",X"38",X"1C",X"7F",X"1F",X"7F",X"3F",X"3F",X"7F",X"1F",X"7F",X"1C",X"38",X"20",X"00",
|
||||
X"00",X"00",X"00",X"00",X"80",X"F0",X"98",X"08",X"08",X"98",X"F0",X"80",X"00",X"00",X"00",X"00",
|
||||
X"00",X"20",X"38",X"1C",X"7F",X"1F",X"7F",X"3F",X"3F",X"7F",X"1F",X"7F",X"1C",X"38",X"20",X"00",
|
||||
X"00",X"00",X"00",X"00",X"80",X"F0",X"98",X"08",X"08",X"98",X"F0",X"80",X"00",X"00",X"00",X"00",
|
||||
X"00",X"20",X"38",X"1C",X"7F",X"1F",X"7F",X"3F",X"3F",X"7F",X"1F",X"7F",X"1C",X"38",X"20",X"00",
|
||||
X"00",X"00",X"00",X"00",X"80",X"F0",X"98",X"08",X"08",X"98",X"F0",X"80",X"00",X"00",X"00",X"00",
|
||||
X"00",X"20",X"38",X"1C",X"7F",X"1F",X"7F",X"3F",X"3F",X"7F",X"1F",X"7F",X"1C",X"38",X"20",X"00",
|
||||
X"00",X"00",X"00",X"00",X"80",X"F0",X"90",X"00",X"00",X"90",X"F0",X"80",X"00",X"00",X"00",X"00",
|
||||
X"00",X"20",X"38",X"1C",X"7F",X"1F",X"7F",X"3F",X"3F",X"7F",X"1F",X"7F",X"1C",X"38",X"20",X"00",
|
||||
X"00",X"00",X"00",X"00",X"80",X"E0",X"80",X"00",X"00",X"80",X"E0",X"80",X"00",X"00",X"00",X"00",
|
||||
X"00",X"20",X"38",X"1C",X"7F",X"1F",X"7F",X"3F",X"3F",X"7F",X"1F",X"7F",X"1C",X"38",X"20",X"00",
|
||||
X"00",X"00",X"00",X"00",X"80",X"C0",X"80",X"00",X"00",X"80",X"C0",X"80",X"00",X"00",X"00",X"00",
|
||||
X"00",X"20",X"38",X"1C",X"7F",X"1F",X"7F",X"3F",X"3F",X"7F",X"1F",X"7F",X"1C",X"38",X"20",X"00",
|
||||
X"00",X"00",X"00",X"00",X"80",X"80",X"80",X"00",X"00",X"80",X"80",X"80",X"00",X"00",X"00",X"00",
|
||||
X"00",X"20",X"38",X"1C",X"7F",X"1F",X"7F",X"3F",X"3F",X"7F",X"1F",X"7F",X"1C",X"38",X"20",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"20",X"38",X"1C",X"7F",X"1F",X"7F",X"3F",X"3F",X"7F",X"1F",X"7F",X"1C",X"38",X"20",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"20",X"38",X"1C",X"7E",X"1E",X"7E",X"3E",X"3E",X"7E",X"1E",X"7E",X"1C",X"38",X"20",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"20",X"38",X"1C",X"7C",X"1C",X"7C",X"3C",X"3C",X"7C",X"1C",X"7C",X"1C",X"38",X"20",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"20",X"38",X"18",X"78",X"18",X"78",X"38",X"38",X"78",X"18",X"78",X"18",X"38",X"20",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"20",X"30",X"10",X"70",X"10",X"70",X"30",X"30",X"70",X"10",X"70",X"10",X"30",X"20",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"20",X"20",X"00",X"60",X"00",X"60",X"20",X"20",X"60",X"00",X"60",X"00",X"20",X"20",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"40",X"00",X"40",X"00",X"00",X"40",X"00",X"40",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"FC",X"F8",X"F6",X"FE",X"FC",X"F8",X"F0",X"E0",X"80",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"01",X"07",X"0F",X"1F",X"3F",X"3F",X"7F",X"7F",X"7F",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"FC",X"F8",X"F6",X"FE",X"FC",X"F8",X"F0",X"E0",X"80",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"01",X"07",X"0F",X"1F",X"3F",X"3F",X"7F",X"7F",X"7F",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"FC",X"F8",X"F4",X"FC",X"FC",X"F8",X"F0",X"E0",X"80",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"01",X"07",X"0F",X"1F",X"3F",X"3F",X"7F",X"7F",X"7F",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"F8",X"F8",X"F0",X"F8",X"F8",X"F8",X"F0",X"E0",X"80",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"01",X"07",X"0F",X"1F",X"3F",X"3F",X"7F",X"7F",X"7F",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"F0",X"F0",X"F0",X"F0",X"F0",X"F0",X"F0",X"E0",X"80",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"01",X"07",X"0F",X"1F",X"3F",X"3F",X"7F",X"7F",X"7F",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"E0",X"E0",X"E0",X"E0",X"E0",X"E0",X"E0",X"E0",X"80",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"01",X"07",X"0F",X"1F",X"3F",X"3F",X"7F",X"7F",X"7F",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"C0",X"C0",X"C0",X"C0",X"C0",X"C0",X"C0",X"C0",X"80",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"01",X"07",X"0F",X"1F",X"3F",X"3F",X"7F",X"7F",X"7F",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"01",X"07",X"0F",X"1F",X"3F",X"3F",X"7F",X"7F",X"7F",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"01",X"07",X"0F",X"1F",X"3F",X"3F",X"7F",X"7F",X"7F",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"06",X"0E",X"1E",X"3E",X"3E",X"7E",X"7E",X"7E",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"04",X"0C",X"1C",X"3C",X"3C",X"7C",X"7C",X"7C",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"08",X"18",X"38",X"38",X"78",X"78",X"78",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"10",X"30",X"30",X"70",X"70",X"70",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"20",X"20",X"60",X"60",X"60",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"40",X"40",X"40",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"38",X"18",X"10",X"80",X"C4",X"CC",X"8C",X"18",X"18",X"00",X"C0",X"C0",X"80",X"00",X"00",
|
||||
X"03",X"07",X"02",X"00",X"00",X"31",X"33",X"60",X"48",X"18",X"18",X"00",X"00",X"01",X"01",X"00",
|
||||
X"00",X"38",X"18",X"10",X"80",X"C4",X"CC",X"8C",X"18",X"18",X"00",X"C0",X"C0",X"80",X"00",X"00",
|
||||
X"03",X"07",X"02",X"00",X"00",X"31",X"33",X"60",X"48",X"18",X"18",X"00",X"00",X"01",X"01",X"00",
|
||||
X"00",X"38",X"18",X"10",X"80",X"C4",X"CC",X"8C",X"18",X"18",X"00",X"C0",X"C0",X"80",X"00",X"00",
|
||||
X"03",X"07",X"02",X"00",X"00",X"31",X"33",X"60",X"48",X"18",X"18",X"00",X"00",X"01",X"01",X"00",
|
||||
X"00",X"38",X"18",X"10",X"80",X"C0",X"C8",X"88",X"18",X"18",X"00",X"C0",X"C0",X"80",X"00",X"00",
|
||||
X"03",X"07",X"02",X"00",X"00",X"31",X"33",X"60",X"48",X"18",X"18",X"00",X"00",X"01",X"01",X"00",
|
||||
X"00",X"30",X"10",X"10",X"80",X"C0",X"C0",X"80",X"10",X"10",X"00",X"C0",X"C0",X"80",X"00",X"00",
|
||||
X"03",X"07",X"02",X"00",X"00",X"31",X"33",X"60",X"48",X"18",X"18",X"00",X"00",X"01",X"01",X"00",
|
||||
X"00",X"20",X"00",X"00",X"80",X"C0",X"C0",X"80",X"00",X"00",X"00",X"C0",X"C0",X"80",X"00",X"00",
|
||||
X"03",X"07",X"02",X"00",X"00",X"31",X"33",X"60",X"48",X"18",X"18",X"00",X"00",X"01",X"01",X"00",
|
||||
X"00",X"00",X"00",X"00",X"80",X"C0",X"C0",X"80",X"00",X"00",X"00",X"C0",X"C0",X"80",X"00",X"00",
|
||||
X"03",X"07",X"02",X"00",X"00",X"31",X"33",X"60",X"48",X"18",X"18",X"00",X"00",X"01",X"01",X"00",
|
||||
X"00",X"00",X"00",X"00",X"80",X"80",X"80",X"80",X"00",X"00",X"00",X"80",X"80",X"80",X"00",X"00",
|
||||
X"03",X"07",X"02",X"00",X"00",X"31",X"33",X"60",X"48",X"18",X"18",X"00",X"00",X"01",X"01",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"03",X"07",X"02",X"00",X"00",X"31",X"33",X"60",X"48",X"18",X"18",X"00",X"00",X"01",X"01",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"02",X"06",X"02",X"00",X"00",X"30",X"32",X"60",X"48",X"18",X"18",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"04",X"00",X"00",X"00",X"30",X"30",X"60",X"48",X"18",X"18",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"30",X"30",X"60",X"48",X"18",X"18",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"30",X"30",X"60",X"40",X"10",X"10",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"20",X"20",X"60",X"40",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"40",X"40",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00");
|
||||
begin
|
||||
process(clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
data <= rom_data(to_integer(unsigned(addr)));
|
||||
end if;
|
||||
end process;
|
||||
end architecture;
|
||||
@@ -0,0 +1,278 @@
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all,ieee.numeric_std.all;
|
||||
|
||||
entity fg_sp_graphx_2 is
|
||||
port (
|
||||
clk : in std_logic;
|
||||
addr : in std_logic_vector(11 downto 0);
|
||||
data : out std_logic_vector(7 downto 0)
|
||||
);
|
||||
end entity;
|
||||
|
||||
architecture prom of fg_sp_graphx_2 is
|
||||
type rom is array(0 to 4095) of std_logic_vector(7 downto 0);
|
||||
signal rom_data: rom := (
|
||||
X"00",X"10",X"10",X"1C",X"1E",X"7E",X"7E",X"1F",X"7F",X"FE",X"FE",X"FE",X"FC",X"D0",X"10",X"00",
|
||||
X"00",X"00",X"06",X"1E",X"9E",X"9E",X"9E",X"1E",X"1E",X"0E",X"5E",X"5E",X"5E",X"06",X"00",X"00",
|
||||
X"00",X"10",X"10",X"7C",X"7E",X"1E",X"1E",X"7F",X"FF",X"FE",X"FE",X"FE",X"FC",X"D0",X"10",X"00",
|
||||
X"00",X"00",X"06",X"1E",X"5E",X"5E",X"5E",X"1E",X"1E",X"0E",X"9E",X"9E",X"9E",X"06",X"00",X"00",
|
||||
X"00",X"10",X"10",X"1C",X"DE",X"DE",X"1E",X"1F",X"DF",X"DE",X"1E",X"1E",X"FC",X"10",X"10",X"00",
|
||||
X"00",X"00",X"06",X"5E",X"5C",X"5C",X"18",X"1C",X"1C",X"9C",X"9E",X"9E",X"1E",X"06",X"00",X"00",
|
||||
X"00",X"10",X"10",X"1C",X"9E",X"9E",X"1E",X"1F",X"9F",X"9E",X"1E",X"1E",X"FC",X"10",X"10",X"00",
|
||||
X"00",X"00",X"06",X"9E",X"9D",X"9D",X"18",X"1C",X"1D",X"5D",X"5E",X"5E",X"1E",X"06",X"00",X"00",
|
||||
X"00",X"00",X"18",X"7E",X"7E",X"1F",X"7F",X"FE",X"FE",X"FE",X"FC",X"D0",X"10",X"00",X"00",X"00",
|
||||
X"00",X"1E",X"9E",X"9E",X"9E",X"1E",X"1E",X"0E",X"5E",X"5E",X"5E",X"06",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"08",X"3E",X"7F",X"7F",X"7F",X"7F",X"7E",X"68",X"08",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"2F",X"2F",X"0F",X"0F",X"07",X"4F",X"4F",X"4F",X"03",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"80",X"98",X"BE",X"BF",X"BF",X"BF",X"B4",X"04",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"07",X"07",X"03",X"17",X"17",X"17",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"C0",X"D8",X"DE",X"DF",X"DA",X"02",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"01",X"13",X"13",X"13",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"02",X"C2",X"C3",X"B2",X"B0",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"13",X"13",X"13",X"03",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"04",X"84",X"87",X"37",X"37",X"06",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"17",X"17",X"17",X"06",X"07",X"07",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"08",X"08",X"0E",X"CF",X"CF",X"0F",X"0F",X"CE",X"C8",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"03",X"4F",X"4E",X"4E",X"0C",X"0E",X"0E",X"2E",X"2F",X"00",
|
||||
X"00",X"00",X"00",X"10",X"10",X"1C",X"DE",X"DE",X"1E",X"1F",X"DF",X"DE",X"1E",X"18",X"C0",X"00",
|
||||
X"00",X"00",X"00",X"00",X"06",X"5E",X"5C",X"5C",X"18",X"1C",X"1C",X"9C",X"9E",X"9E",X"1E",X"00",
|
||||
X"00",X"00",X"E1",X"79",X"78",X"38",X"38",X"38",X"18",X"38",X"B8",X"F8",X"79",X"E1",X"00",X"00",
|
||||
X"20",X"A0",X"50",X"58",X"B0",X"76",X"36",X"B0",X"70",X"B0",X"31",X"71",X"B0",X"50",X"50",X"88",
|
||||
X"00",X"00",X"C0",X"F0",X"F1",X"71",X"71",X"30",X"70",X"71",X"71",X"F1",X"F0",X"C0",X"00",X"00",
|
||||
X"40",X"20",X"A1",X"60",X"63",X"63",X"60",X"E0",X"60",X"6C",X"EC",X"60",X"B0",X"21",X"40",X"80",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"E0",X"A4",X"B0",X"FC",X"DD",X"FE",X"DE",X"FE",X"FF",X"FE",X"FD",X"F8",X"EA",X"D0",
|
||||
X"00",X"10",X"90",X"1D",X"DF",X"DF",X"1F",X"1F",X"DF",X"DF",X"1F",X"1F",X"FF",X"93",X"13",X"00",
|
||||
X"00",X"00",X"07",X"1E",X"9C",X"9C",X"98",X"1C",X"1C",X"9C",X"9E",X"9E",X"1E",X"07",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"C0",X"40",X"E0",X"30",X"30",X"30",X"B0",X"70",X"30",X"20",X"60",X"C0",X"00",X"00",
|
||||
X"00",X"0D",X"9B",X"7E",X"7C",X"FB",X"F5",X"FA",X"FD",X"FE",X"FE",X"7D",X"FC",X"BC",X"0B",X"00",
|
||||
X"00",X"00",X"07",X"1E",X"9C",X"9C",X"98",X"1C",X"1C",X"9C",X"9E",X"9E",X"1E",X"07",X"00",X"00",
|
||||
X"00",X"00",X"80",X"C0",X"E0",X"F0",X"F0",X"F0",X"F0",X"F0",X"F0",X"E0",X"C0",X"C0",X"00",X"00",
|
||||
X"00",X"07",X"25",X"0D",X"3F",X"BB",X"7F",X"7B",X"7F",X"FF",X"7F",X"BF",X"1F",X"57",X"0B",X"00",
|
||||
X"00",X"A0",X"78",X"C8",X"9C",X"66",X"A6",X"46",X"B6",X"CE",X"C6",X"A4",X"8C",X"98",X"60",X"00",
|
||||
X"00",X"01",X"03",X"0F",X"0F",X"1F",X"1E",X"1F",X"1F",X"1F",X"1F",X"0F",X"07",X"07",X"01",X"00",
|
||||
X"00",X"00",X"81",X"00",X"80",X"20",X"00",X"80",X"20",X"00",X"00",X"00",X"81",X"80",X"00",X"00",
|
||||
X"00",X"00",X"00",X"1B",X"36",X"14",X"48",X"B0",X"C4",X"28",X"24",X"32",X"0B",X"04",X"00",X"00",
|
||||
X"58",X"0E",X"21",X"09",X"1A",X"20",X"00",X"00",X"00",X"00",X"28",X"04",X"06",X"21",X"02",X"18",
|
||||
X"04",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"04",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"90",X"04",X"88",X"40",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"A4",X"40",X"82",X"88",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"02",X"02",X"01",X"10",X"04",X"42",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"44",X"02",X"42",X"A6",X"8B",X"D3",X"EE",X"58",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"08",X"00",X"06",X"02",X"00",X"01",X"00",X"00",X"01",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"00",X"00",X"90",X"48",X"68",X"60",X"A0",X"28",
|
||||
X"00",X"F0",X"7C",X"8E",X"3E",X"42",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"03",X"0C",X"08",X"11",X"12",X"24",X"29",X"31",X"2A",X"26",X"06",X"0A",X"32",X"2A",X"26",
|
||||
X"00",X"F0",X"7C",X"8E",X"3E",X"42",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"03",X"0C",X"08",X"11",X"12",X"24",X"09",X"11",X"2A",X"26",X"26",X"2A",X"32",X"2A",X"06",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"26",X"2A",X"32",X"0A",X"06",X"26",X"2A",X"32",X"32",X"2A",X"26",X"06",X"0A",X"32",X"2A",X"26",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"06",X"2A",X"32",X"2A",X"26",X"26",X"2A",X"12",X"12",X"2A",X"26",X"26",X"2A",X"32",X"2A",X"06",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"C0",X"E0",X"F0",X"F0",X"F8",X"F8",X"FC",X"FC",
|
||||
X"00",X"00",X"00",X"00",X"00",X"02",X"07",X"1F",X"FF",X"1F",X"07",X"03",X"03",X"01",X"01",X"01",
|
||||
X"FE",X"FE",X"FE",X"FE",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FE",X"FE",X"FE",X"FE",
|
||||
X"01",X"01",X"01",X"03",X"03",X"07",X"1F",X"FF",X"FF",X"1F",X"07",X"03",X"03",X"01",X"01",X"01",
|
||||
X"00",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"00",
|
||||
X"00",X"00",X"00",X"00",X"01",X"02",X"0C",X"00",X"00",X"0C",X"02",X"01",X"00",X"00",X"00",X"00",
|
||||
X"80",X"80",X"80",X"C0",X"C0",X"E0",X"F8",X"FF",X"FF",X"F8",X"E0",X"C0",X"80",X"80",X"80",X"80",
|
||||
X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"FF",X"7F",X"7F",X"7F",
|
||||
X"00",X"80",X"98",X"B8",X"B9",X"B3",X"A0",X"B0",X"B3",X"B1",X"B8",X"B8",X"BB",X"98",X"80",X"00",
|
||||
X"00",X"00",X"00",X"00",X"01",X"02",X"0C",X"00",X"00",X"0C",X"02",X"01",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"0E",X"1E",X"3E",X"7E",X"FE",X"FC",X"F8",X"F0",X"E0",X"C0",X"B0",X"70",X"F8",X"78",X"78",X"38",
|
||||
X"1C",X"1E",X"1E",X"1F",X"0E",X"0D",X"03",X"07",X"0F",X"1F",X"3F",X"7F",X"FE",X"FC",X"F8",X"F0",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"80",X"9C",X"38",X"C0",X"40",X"20",X"A0",X"A0",X"20",X"40",X"C0",X"38",X"9C",X"80",X"00",
|
||||
X"3F",X"FF",X"07",X"03",X"00",X"01",X"19",X"3B",X"3B",X"19",X"01",X"00",X"03",X"07",X"FF",X"3F",
|
||||
X"F0",X"FC",X"F0",X"C0",X"B8",X"70",X"80",X"80",X"80",X"80",X"70",X"B8",X"C0",X"F0",X"FC",X"F0",
|
||||
X"0F",X"67",X"13",X"01",X"0B",X"B3",X"63",X"67",X"67",X"63",X"B3",X"0B",X"01",X"13",X"67",X"0F",
|
||||
X"C0",X"E0",X"E7",X"CE",X"30",X"50",X"48",X"E8",X"E8",X"48",X"50",X"30",X"CE",X"E7",X"E0",X"C0",
|
||||
X"0F",X"3F",X"01",X"00",X"00",X"00",X"06",X"0E",X"0E",X"06",X"00",X"00",X"00",X"01",X"3F",X"0F",
|
||||
X"FC",X"FF",X"FC",X"70",X"EE",X"DC",X"E0",X"E0",X"E0",X"E0",X"DC",X"EE",X"70",X"FC",X"FF",X"FC",
|
||||
X"03",X"19",X"04",X"00",X"02",X"2C",X"18",X"19",X"19",X"18",X"2C",X"02",X"00",X"04",X"19",X"03",
|
||||
X"00",X"00",X"00",X"00",X"04",X"02",X"82",X"96",X"6E",X"FE",X"92",X"04",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"80",X"00",X"80",X"01",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"10",X"04",
|
||||
X"00",X"00",X"00",X"04",X"06",X"03",X"87",X"CF",X"7B",X"D2",X"84",X"00",X"00",X"00",X"00",X"00",
|
||||
X"04",X"10",X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"00",X"00",X"80",X"00",X"80",X"00",X"00",
|
||||
X"00",X"10",X"08",X"08",X"78",X"9C",X"10",X"44",X"10",X"9C",X"7C",X"18",X"30",X"20",X"60",X"00",
|
||||
X"04",X"10",X"00",X"00",X"00",X"01",X"01",X"00",X"01",X"01",X"00",X"80",X"00",X"80",X"00",X"00",
|
||||
X"00",X"60",X"20",X"30",X"7C",X"CE",X"88",X"A2",X"88",X"CE",X"7C",X"18",X"08",X"08",X"10",X"00",
|
||||
X"00",X"00",X"80",X"00",X"80",X"01",X"01",X"00",X"01",X"01",X"00",X"00",X"00",X"00",X"10",X"04",
|
||||
X"0A",X"00",X"08",X"00",X"00",X"80",X"80",X"00",X"80",X"80",X"01",X"00",X"01",X"00",X"00",X"00",
|
||||
X"00",X"06",X"04",X"0C",X"7E",X"C7",X"4B",X"1B",X"4B",X"C7",X"7E",X"18",X"10",X"10",X"20",X"00",
|
||||
X"00",X"00",X"00",X"01",X"00",X"01",X"80",X"80",X"00",X"80",X"80",X"00",X"00",X"08",X"00",X"0A",
|
||||
X"00",X"20",X"10",X"10",X"18",X"7E",X"C7",X"4B",X"1B",X"4B",X"C7",X"7E",X"0C",X"04",X"06",X"00",
|
||||
X"00",X"00",X"08",X"04",X"04",X"2C",X"DC",X"FC",X"24",X"08",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"80",X"02",X"03",X"01",X"00",X"01",X"01",X"00",X"00",X"00",X"20",X"08",X"00",X"00",
|
||||
X"00",X"00",X"80",X"CE",X"7B",X"D2",X"84",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"01",X"00",X"00",X"00",X"00",X"00",X"80",X"00",X"80",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"40",X"30",X"7E",X"49",X"02",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"08",X"02",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"20",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"20",X"00",X"20",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"18",X"08",X"0C",X"1E",X"70",X"40",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"20",X"00",X"20",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"08",X"04",X"04",X"3C",X"CE",X"88",X"20",X"80",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"02",X"08",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"60",X"20",X"30",X"7C",X"CE",X"88",X"A2",X"88",X"C8",X"40",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"00",X"80",X"01",X"01",X"00",X"01",X"01",X"00",X"00",
|
||||
X"00",X"00",X"00",X"20",X"10",X"10",X"F0",X"38",X"20",X"88",X"20",X"38",X"F8",X"30",X"40",X"00",
|
||||
X"00",X"00",X"08",X"20",X"00",X"00",X"00",X"03",X"02",X"00",X"02",X"03",X"00",X"80",X"00",X"00",
|
||||
X"80",X"A0",X"00",X"40",X"80",X"10",X"04",X"00",X"00",X"C0",X"20",X"30",X"20",X"80",X"00",X"80",
|
||||
X"01",X"0F",X"03",X"6E",X"3E",X"7F",X"5D",X"5C",X"45",X"76",X"5F",X"4C",X"0F",X"0B",X"15",X"0B",
|
||||
X"00",X"00",X"00",X"60",X"C4",X"A0",X"80",X"20",X"80",X"60",X"E0",X"C0",X"80",X"10",X"40",X"80",
|
||||
X"04",X"2E",X"43",X"08",X"03",X"04",X"80",X"12",X"18",X"DC",X"62",X"D6",X"45",X"88",X"08",X"14",
|
||||
X"00",X"C0",X"40",X"60",X"F8",X"9C",X"10",X"44",X"10",X"9C",X"F8",X"30",X"10",X"10",X"20",X"00",
|
||||
X"00",X"20",X"40",X"48",X"D0",X"03",X"B3",X"09",X"03",X"93",X"58",X"D0",X"48",X"A8",X"20",X"10",
|
||||
X"C0",X"30",X"80",X"20",X"40",X"80",X"80",X"00",X"00",X"00",X"00",X"08",X"30",X"00",X"30",X"C0",
|
||||
X"07",X"1E",X"30",X"37",X"66",X"7C",X"6C",X"68",X"62",X"6A",X"6D",X"34",X"33",X"10",X"0E",X"07",
|
||||
X"80",X"60",X"80",X"20",X"30",X"10",X"10",X"00",X"00",X"10",X"10",X"A0",X"60",X"00",X"E0",X"80",
|
||||
X"0F",X"05",X"03",X"0F",X"2C",X"5F",X"56",X"44",X"56",X"5F",X"7F",X"2E",X"2E",X"03",X"1F",X"07",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"E0",X"58",X"E0",X"C8",X"0C",X"C0",X"80",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"03",X"01",X"00",X"03",X"0B",X"17",X"15",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"E0",X"18",X"40",X"90",X"20",X"40",X"40",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"03",X"0F",X"18",X"1B",X"33",X"3E",X"36",X"34",X"00",
|
||||
X"00",X"00",X"00",X"00",X"80",X"60",X"80",X"20",X"30",X"10",X"10",X"00",X"00",X"10",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"0F",X"05",X"03",X"0F",X"2C",X"5F",X"56",X"44",X"56",X"5F",X"7F",X"00",
|
||||
X"00",X"00",X"00",X"80",X"60",X"00",X"40",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"0F",X"3C",X"61",X"6E",X"CC",X"F9",X"D9",X"D0",X"C4",X"D4",X"DA",X"68",X"00",
|
||||
X"80",X"60",X"00",X"20",X"10",X"00",X"00",X"00",X"00",X"20",X"40",X"80",X"C0",X"E0",X"C0",X"80",
|
||||
X"0F",X"1C",X"20",X"66",X"68",X"DA",X"D4",X"C4",X"D0",X"D9",X"F9",X"ED",X"6F",X"77",X"3F",X"0F",
|
||||
X"80",X"60",X"00",X"40",X"80",X"00",X"20",X"00",X"00",X"00",X"10",X"80",X"E0",X"60",X"E0",X"80",
|
||||
X"0F",X"3C",X"61",X"6E",X"CC",X"F9",X"D9",X"D0",X"C4",X"D4",X"DB",X"6F",X"67",X"3E",X"1C",X"0F",
|
||||
X"00",X"30",X"00",X"20",X"40",X"80",X"80",X"00",X"00",X"00",X"00",X"00",X"20",X"00",X"30",X"00",
|
||||
X"06",X"12",X"30",X"30",X"02",X"04",X"0C",X"08",X"62",X"62",X"48",X"34",X"33",X"10",X"0E",X"07",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"12",X"10",X"10",X"00",X"00",X"00",X"00",X"40",X"60",X"40",X"20",X"01",X"00",X"08",X"07",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"20",X"00",
|
||||
X"00",X"04",X"20",X"20",X"00",X"00",X"04",X"30",X"80",X"C0",X"80",X"40",X"00",X"00",X"10",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"20",X"00",X"00",X"04",X"07",X"04",X"00",X"80",X"E0",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"30",X"18",X"38",X"18",X"38",X"18",X"1C",X"1E",X"0F",X"1F",X"08",X"10",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"04",X"07",X"04",X"00",X"80",X"E0",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"10",X"08",X"18",X"08",X"18",X"18",X"1C",X"3E",X"1F",X"3F",X"18",X"30",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"60",X"64",X"07",X"04",X"00",X"80",X"E0",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"10",X"08",X"18",X"08",X"1A",X"18",X"1C",X"3E",X"1F",X"3F",X"18",X"30",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"64",X"67",X"04",X"00",X"80",X"E0",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"30",X"18",X"38",X"18",X"3A",X"18",X"1C",X"1E",X"0F",X"1F",X"08",X"10",X"00",X"00",
|
||||
X"00",X"00",X"0C",X"18",X"FC",X"F8",X"3C",X"18",X"58",X"18",X"18",X"3C",X"28",X"0C",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"01",X"00",X"00",X"20",X"E8",X"20",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"20",X"18",X"1C",X"38",X"7C",X"18",X"1D",X"0D",X"06",X"27",X"02",X"01",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"20",X"E0",X"21",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"04",X"07",X"04",X"00",X"80",X"E0",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"18",X"38",X"18",X"38",X"18",X"1C",X"1E",X"0F",X"1F",X"08",X"10",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"02",X"02",X"00",X"C0",X"F0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"04",X"0C",X"0C",X"0E",X"1F",X"0F",X"1F",X"0C",X"18",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"80",X"E0",X"F8",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"06",X"07",X"07",X"03",X"07",X"02",X"04",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"C0",X"F0",X"FC",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"07",X"03",X"07",X"03",X"06",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"40",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"06",X"03",X"07",X"03",X"07",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"18",X"98",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"04",X"02",X"06",X"02",X"06",X"06",X"07",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"32",X"33",X"02",X"00",X"C0",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"18",X"0C",X"1C",X"0C",X"1D",X"0C",X"0E",X"0F",X"07",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"60",X"64",X"07",X"04",X"00",X"80",X"E0",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"10",X"08",X"18",X"08",X"1A",X"18",X"1C",X"3E",X"1F",X"3F",X"18",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"10",X"9C",X"90",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"18",X"10",X"00",X"00",X"01",X"01",X"00",X"00",X"10",X"0C",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"64",X"67",X"04",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"12",X"0C",X"02",X"04",X"04",X"00",X"00",X"08",X"0A",X"04",X"0E",X"11",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"60",X"64",X"07",X"04",X"00",X"80",X"E0",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"30",X"18",X"1C",X"08",X"0A",X"10",X"0C",X"06",X"0F",X"0F",X"18",X"30",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"64",X"67",X"04",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"20",X"38",X"20",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"03",X"03",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"30",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"20",X"38",X"20",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"03",X"03",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"C8",X"CE",X"08",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"10",X"73",X"13",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"03",X"14",X"74",X"13",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"C0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"19",X"19",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"40",X"50",X"1C",X"10",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"40",X"50",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"E0",X"FC",X"FE",X"E0",X"C0",X"80",X"80",X"00",X"80",X"C0",X"E0",X"FE",X"FC",X"E0",X"00",X"00",
|
||||
X"3F",X"FF",X"07",X"0F",X"07",X"03",X"03",X"00",X"03",X"07",X"0F",X"07",X"FF",X"3F",X"00",X"00",
|
||||
X"00",X"E0",X"FC",X"E2",X"C0",X"80",X"80",X"00",X"80",X"C0",X"E2",X"FC",X"E0",X"00",X"00",X"00",
|
||||
X"00",X"3F",X"FF",X"0F",X"07",X"03",X"03",X"00",X"03",X"07",X"0F",X"FF",X"3F",X"00",X"00",X"00",
|
||||
X"60",X"7C",X"BE",X"A0",X"00",X"04",X"10",X"10",X"04",X"00",X"A0",X"7E",X"FC",X"E0",X"00",X"00",
|
||||
X"3F",X"FF",X"07",X"0F",X"07",X"00",X"00",X"00",X"00",X"07",X"0F",X"07",X"FC",X"3F",X"00",X"00",
|
||||
X"00",X"E0",X"7C",X"A2",X"00",X"04",X"10",X"10",X"04",X"00",X"A2",X"BC",X"60",X"00",X"00",X"00",
|
||||
X"00",X"3F",X"FC",X"0F",X"07",X"00",X"00",X"00",X"00",X"07",X"0F",X"FF",X"3F",X"00",X"00",X"00",
|
||||
X"F8",X"FE",X"E0",X"40",X"E0",X"00",X"00",X"00",X"00",X"40",X"C0",X"C0",X"60",X"B9",X"5C",X"00",
|
||||
X"00",X"0D",X"1C",X"3F",X"60",X"00",X"00",X"10",X"04",X"04",X"10",X"00",X"06",X"70",X"0F",X"00",
|
||||
X"00",X"5C",X"BB",X"40",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"E0",X"40",X"E0",X"FE",X"F8",
|
||||
X"00",X"0F",X"73",X"01",X"00",X"10",X"04",X"04",X"10",X"00",X"00",X"60",X"3F",X"1C",X"0D",X"00",
|
||||
X"00",X"C0",X"80",X"00",X"00",X"00",X"00",X"80",X"C0",X"FC",X"F8",X"C0",X"00",X"00",X"00",X"00",
|
||||
X"00",X"1F",X"0F",X"07",X"07",X"00",X"07",X"0F",X"1F",X"0F",X"FF",X"7F",X"00",X"00",X"00",X"00",
|
||||
X"00",X"80",X"80",X"00",X"80",X"C0",X"E2",X"FC",X"E0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"03",X"03",X"00",X"03",X"07",X"0F",X"FF",X"3F",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"C0",X"E0",X"F0",X"FF",X"FE",X"F0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"01",X"03",X"07",X"03",X"7F",X"1F",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"C0",X"F8",X"FE",X"F8",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"01",X"03",X"3F",X"0F",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"F8",X"1F",X"E8",X"C0",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"0F",X"3F",X"03",X"01",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"B0",X"BE",X"DE",X"D0",X"80",X"02",X"08",X"08",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"1F",X"7F",X"03",X"07",X"03",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"E0",X"7C",X"A2",X"00",X"04",X"10",X"10",X"04",X"00",X"80",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"3F",X"FC",X"0F",X"07",X"00",X"00",X"00",X"00",X"07",X"0F",X"00",
|
||||
X"00",X"00",X"C0",X"F8",X"7C",X"40",X"00",X"08",X"20",X"20",X"08",X"00",X"40",X"F8",X"C0",X"00",
|
||||
X"00",X"00",X"7E",X"FE",X"0F",X"1F",X"0E",X"00",X"00",X"00",X"00",X"0E",X"1F",X"0E",X"F9",X"00",
|
||||
X"00",X"00",X"00",X"00",X"E0",X"FC",X"FE",X"10",X"10",X"FE",X"FC",X"E0",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"07",X"3F",X"FF",X"00",X"00",X"FF",X"3F",X"07",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"E0",X"F8",X"BC",X"02",X"04",X"10",X"10",X"06",X"FE",X"FC",X"E0",X"00",X"00",X"00",
|
||||
X"00",X"00",X"3F",X"7F",X"CF",X"07",X"00",X"00",X"00",X"00",X"FF",X"7F",X"1F",X"00",X"00",X"00");
|
||||
begin
|
||||
process(clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
data <= rom_data(to_integer(unsigned(addr)));
|
||||
end if;
|
||||
end process;
|
||||
end architecture;
|
||||
@@ -0,0 +1,534 @@
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all,ieee.numeric_std.all;
|
||||
|
||||
entity fg_sp_graphx_3 is
|
||||
port (
|
||||
clk : in std_logic;
|
||||
addr : in std_logic_vector(12 downto 0);
|
||||
data : out std_logic_vector(7 downto 0)
|
||||
);
|
||||
end entity;
|
||||
|
||||
architecture prom of fg_sp_graphx_3 is
|
||||
type rom is array(0 to 8191) of std_logic_vector(7 downto 0);
|
||||
signal rom_data: rom := (
|
||||
X"00",X"90",X"10",X"FC",X"FE",X"FE",X"FE",X"FF",X"FF",X"FE",X"FE",X"FE",X"FC",X"D0",X"10",X"00",
|
||||
X"03",X"06",X"06",X"1F",X"9F",X"FF",X"FF",X"1F",X"1F",X"0F",X"7F",X"7F",X"5F",X"06",X"16",X"0C",
|
||||
X"00",X"10",X"10",X"FC",X"FE",X"FE",X"FE",X"FF",X"FF",X"FE",X"FE",X"FE",X"FC",X"D0",X"90",X"00",
|
||||
X"0C",X"16",X"06",X"1F",X"5F",X"7F",X"7F",X"1F",X"1F",X"0F",X"FF",X"FF",X"9F",X"06",X"06",X"03",
|
||||
X"00",X"10",X"10",X"FC",X"FE",X"FE",X"FE",X"FF",X"FF",X"FE",X"FE",X"FE",X"FC",X"10",X"90",X"00",
|
||||
X"0C",X"16",X"06",X"5F",X"7F",X"7F",X"1F",X"1F",X"1F",X"FF",X"FF",X"9F",X"1F",X"06",X"06",X"03",
|
||||
X"00",X"90",X"10",X"FC",X"FE",X"FE",X"FE",X"FF",X"FF",X"FE",X"FE",X"FE",X"FC",X"10",X"10",X"00",
|
||||
X"03",X"06",X"06",X"9F",X"FF",X"FF",X"1F",X"1F",X"1F",X"7F",X"7F",X"5F",X"1F",X"06",X"16",X"0C",
|
||||
X"00",X"E0",X"F8",X"FE",X"FE",X"FF",X"FF",X"FE",X"FE",X"FE",X"FC",X"D0",X"10",X"00",X"00",X"00",
|
||||
X"00",X"1F",X"9F",X"FF",X"FF",X"1F",X"1F",X"0F",X"7F",X"7F",X"5F",X"06",X"16",X"0C",X"00",X"00",
|
||||
X"00",X"C0",X"F8",X"FE",X"FF",X"FF",X"FF",X"FF",X"FE",X"68",X"48",X"80",X"00",X"00",X"00",X"00",
|
||||
X"00",X"3F",X"3F",X"0F",X"0F",X"07",X"7F",X"7F",X"4F",X"03",X"03",X"01",X"00",X"00",X"00",X"00",
|
||||
X"00",X"C0",X"F8",X"FE",X"FF",X"FF",X"FF",X"B4",X"84",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"07",X"07",X"03",X"1F",X"1F",X"17",X"01",X"05",X"03",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"C0",X"F8",X"FE",X"FF",X"DA",X"D2",X"60",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"01",X"1F",X"1F",X"13",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"60",X"D2",X"C2",X"FF",X"FE",X"F8",X"C0",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"13",X"1F",X"1F",X"03",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"84",X"84",X"FF",X"FF",X"FF",X"FE",X"F8",X"C0",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"03",X"05",X"01",X"17",X"1F",X"1F",X"07",X"07",X"07",X"00",
|
||||
X"00",X"00",X"00",X"00",X"80",X"48",X"08",X"FE",X"FF",X"FF",X"FF",X"FF",X"FE",X"F8",X"C0",X"00",
|
||||
X"00",X"00",X"00",X"00",X"01",X"03",X"03",X"4F",X"7F",X"7F",X"0F",X"0F",X"0F",X"3F",X"3F",X"00",
|
||||
X"00",X"00",X"00",X"10",X"10",X"FC",X"FE",X"FE",X"FE",X"FF",X"FF",X"FE",X"FE",X"F8",X"C0",X"00",
|
||||
X"00",X"00",X"0C",X"16",X"06",X"5F",X"7F",X"7F",X"1F",X"1F",X"1F",X"FF",X"FF",X"9F",X"1F",X"00",
|
||||
X"C0",X"60",X"E1",X"FB",X"FE",X"FC",X"F8",X"F8",X"F8",X"F8",X"FC",X"FE",X"FB",X"E1",X"60",X"C0",
|
||||
X"20",X"A1",X"50",X"5F",X"BF",X"7F",X"3F",X"BF",X"7F",X"BF",X"3F",X"7F",X"BF",X"50",X"51",X"88",
|
||||
X"00",X"80",X"C0",X"F0",X"F1",X"FF",X"FF",X"F0",X"F0",X"FF",X"FF",X"F1",X"F0",X"C0",X"80",X"00",
|
||||
X"40",X"27",X"A1",X"7F",X"7F",X"7F",X"7F",X"FF",X"7F",X"7F",X"FF",X"7F",X"BF",X"21",X"47",X"80",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"F0",X"FC",X"FC",X"FE",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FE",X"FE",X"F8",
|
||||
X"F0",X"DC",X"92",X"FD",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"93",X"DF",X"F0",
|
||||
X"00",X"01",X"07",X"1F",X"9F",X"FF",X"FF",X"1F",X"1F",X"FF",X"FF",X"9F",X"1F",X"07",X"01",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"C0",X"C0",X"E0",X"F0",X"F0",X"F0",X"F0",X"F0",X"F0",X"E0",X"E0",X"C0",X"00",X"00",
|
||||
X"80",X"4F",X"BF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"BF",X"4F",X"80",
|
||||
X"01",X"03",X"07",X"1F",X"9F",X"FF",X"FF",X"1F",X"1F",X"FF",X"FF",X"9F",X"1F",X"07",X"03",X"01",
|
||||
X"00",X"00",X"80",X"C0",X"E0",X"F0",X"F0",X"F0",X"F0",X"F0",X"F0",X"E0",X"C0",X"00",X"00",X"00",
|
||||
X"00",X"0F",X"3F",X"3F",X"7F",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"7F",X"7F",X"1F",X"00",
|
||||
X"00",X"E0",X"F8",X"F8",X"FC",X"FE",X"FE",X"FE",X"FE",X"FE",X"FE",X"FC",X"FC",X"F8",X"E0",X"00",
|
||||
X"00",X"01",X"03",X"0F",X"0F",X"1F",X"1F",X"1F",X"1F",X"1F",X"1F",X"0F",X"07",X"07",X"01",X"00",
|
||||
X"00",X"00",X"C1",X"08",X"80",X"A4",X"00",X"80",X"20",X"00",X"48",X"00",X"81",X"C8",X"00",X"00",
|
||||
X"00",X"00",X"00",X"1B",X"37",X"1C",X"4A",X"B0",X"C4",X"69",X"34",X"33",X"0B",X"04",X"00",X"00",
|
||||
X"78",X"8E",X"25",X"19",X"1A",X"30",X"00",X"00",X"00",X"00",X"28",X"16",X"06",X"35",X"02",X"58",
|
||||
X"04",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"04",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"90",X"44",X"88",X"40",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"A4",X"40",X"A2",X"88",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"02",X"00",X"01",X"02",X"02",X"02",X"05",X"10",X"04",X"42",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"10",X"00",X"00",X"40",X"00",X"00",X"54",X"02",X"4A",X"A6",X"8B",X"F3",X"EE",X"5A",
|
||||
X"00",X"08",X"00",X"01",X"10",X"00",X"00",X"09",X"00",X"06",X"03",X"00",X"05",X"00",X"00",X"01",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"80",X"08",X"00",X"A0",X"00",X"00",X"20",X"84",X"00",X"10",X"90",X"48",X"68",X"68",X"A0",X"28",
|
||||
X"F0",X"0C",X"82",X"71",X"C1",X"BD",X"41",X"80",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"03",X"0C",X"13",X"17",X"0E",X"2D",X"5B",X"56",X"4E",X"55",X"19",X"19",X"15",X"0D",X"55",X"59",
|
||||
X"F0",X"0C",X"82",X"71",X"C1",X"BD",X"41",X"80",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"03",X"0C",X"13",X"17",X"2E",X"2D",X"1B",X"16",X"0E",X"15",X"59",X"59",X"55",X"4D",X"15",X"19",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"59",X"55",X"0D",X"15",X"19",X"19",X"55",X"4D",X"4D",X"55",X"19",X"19",X"15",X"0D",X"55",X"59",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"19",X"15",X"4D",X"55",X"59",X"59",X"15",X"0D",X"0D",X"15",X"59",X"59",X"55",X"4D",X"15",X"19",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"01",X"42",X"5C",X"60",X"41",X"4E",X"70",X"40",X"40",X"70",X"4E",X"41",X"60",X"5C",X"42",X"01",
|
||||
X"00",X"00",X"03",X"0F",X"0E",X"0D",X"03",X"0F",X"0F",X"03",X"0D",X"0E",X"0F",X"03",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"40",X"40",X"F0",X"F8",X"F8",X"F8",X"FC",X"FC",X"F8",X"F8",X"F8",X"F0",X"40",X"40",X"00",
|
||||
X"0D",X"5A",X"5C",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"5C",X"5A",X"0D",
|
||||
X"00",X"00",X"03",X"0F",X"0E",X"0D",X"03",X"0F",X"0F",X"03",X"0D",X"0E",X"0F",X"03",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"44",X"7C",X"40",X"00",X"7C",X"44",X"7C",X"00",X"7C",X"44",X"7C",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"48",X"64",X"54",X"48",X"00",X"7C",X"44",X"7C",X"00",X"7C",X"44",X"7C",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"30",X"28",X"7C",X"20",X"00",X"7C",X"44",X"7C",X"00",X"7C",X"44",X"7C",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"78",X"54",X"54",X"74",X"00",X"7C",X"44",X"7C",X"00",X"7C",X"44",X"7C",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"6C",X"54",X"54",X"6C",X"00",X"7C",X"44",X"7C",X"00",X"7C",X"44",X"7C",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"01",X"01",X"01",X"81",X"01",X"02",X"04",X"08",X"10",X"30",X"48",X"88",X"04",X"04",X"04",X"04",
|
||||
X"02",X"01",X"01",X"00",X"01",X"02",X"04",X"00",X"00",X"00",X"00",X"00",X"01",X"02",X"04",X"08",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"80",X"C0",X"C0",X"C0",X"C0",X"80",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"18",X"0C",X"05",X"03",X"07",X"07",X"07",X"07",X"03",X"05",X"0C",X"18",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"18",X"0C",X"02",X"04",X"0C",X"1C",X"18",X"18",X"1C",X"0C",X"04",X"02",X"0C",X"18",X"00",
|
||||
X"00",X"00",X"00",X"00",X"40",X"E0",X"F0",X"F0",X"F0",X"F0",X"E0",X"40",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"06",X"03",X"01",X"00",X"01",X"01",X"01",X"01",X"00",X"01",X"03",X"06",X"00",X"00",
|
||||
X"00",X"00",X"00",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"00",X"00",X"00",
|
||||
X"00",X"06",X"03",X"00",X"01",X"03",X"07",X"06",X"06",X"07",X"03",X"01",X"00",X"03",X"06",X"00",
|
||||
X"00",X"00",X"80",X"04",X"06",X"02",X"82",X"96",X"6E",X"FE",X"92",X"04",X"00",X"50",X"00",X"00",
|
||||
X"00",X"82",X"80",X"80",X"80",X"81",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"20",X"10",X"0E",
|
||||
X"00",X"00",X"50",X"06",X"07",X"03",X"87",X"CF",X"7B",X"D2",X"84",X"00",X"00",X"80",X"00",X"00",
|
||||
X"0E",X"10",X"20",X"00",X"00",X"01",X"00",X"00",X"00",X"00",X"80",X"80",X"80",X"80",X"82",X"00",
|
||||
X"00",X"10",X"58",X"08",X"78",X"FC",X"FC",X"FC",X"FC",X"FC",X"7C",X"18",X"30",X"A0",X"60",X"00",
|
||||
X"0E",X"10",X"20",X"00",X"00",X"01",X"01",X"00",X"01",X"01",X"80",X"80",X"80",X"80",X"82",X"00",
|
||||
X"00",X"60",X"A0",X"30",X"7C",X"FE",X"FE",X"FE",X"FE",X"FE",X"7C",X"18",X"08",X"58",X"10",X"00",
|
||||
X"00",X"82",X"80",X"80",X"80",X"81",X"01",X"00",X"01",X"01",X"00",X"00",X"00",X"20",X"10",X"0E",
|
||||
X"0A",X"46",X"0F",X"07",X"03",X"80",X"80",X"00",X"80",X"81",X"01",X"01",X"01",X"01",X"00",X"00",
|
||||
X"00",X"06",X"05",X"0C",X"7E",X"FF",X"FF",X"FF",X"FF",X"FF",X"7E",X"18",X"10",X"90",X"20",X"80",
|
||||
X"00",X"00",X"01",X"01",X"01",X"01",X"81",X"80",X"00",X"80",X"80",X"03",X"07",X"0F",X"46",X"0A",
|
||||
X"80",X"20",X"90",X"10",X"18",X"7E",X"FF",X"FF",X"FF",X"FF",X"FF",X"7E",X"0C",X"05",X"06",X"00",
|
||||
X"00",X"00",X"08",X"04",X"04",X"2C",X"DC",X"FC",X"24",X"08",X"00",X"A0",X"00",X"00",X"00",X"00",
|
||||
X"00",X"80",X"80",X"82",X"03",X"01",X"00",X"01",X"01",X"00",X"00",X"40",X"20",X"1C",X"00",X"00",
|
||||
X"00",X"00",X"80",X"CE",X"7B",X"D2",X"84",X"00",X"00",X"80",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"01",X"00",X"00",X"00",X"00",X"80",X"80",X"80",X"80",X"82",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"40",X"30",X"7E",X"49",X"02",X"00",X"28",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"10",X"08",X"07",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"20",X"00",X"00",X"20",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"20",X"20",X"20",X"20",X"20",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"98",X"28",X"0C",X"1E",X"78",X"40",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"20",X"20",X"20",X"20",X"20",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"08",X"2C",X"04",X"3C",X"FE",X"FE",X"78",X"C0",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"07",X"08",X"10",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"60",X"A0",X"30",X"7C",X"FE",X"FE",X"FE",X"FE",X"F8",X"40",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"82",X"80",X"80",X"80",X"81",X"01",X"00",X"01",X"01",X"00",X"00",
|
||||
X"00",X"00",X"00",X"20",X"B0",X"10",X"F0",X"F8",X"F8",X"F8",X"F8",X"F8",X"F8",X"30",X"40",X"00",
|
||||
X"00",X"00",X"1C",X"20",X"40",X"00",X"00",X"03",X"03",X"01",X"03",X"03",X"80",X"80",X"80",X"00",
|
||||
X"80",X"B4",X"E0",X"C8",X"D0",X"B1",X"C4",X"80",X"C0",X"80",X"CC",X"78",X"60",X"B0",X"02",X"90",
|
||||
X"09",X"AF",X"6B",X"3F",X"CF",X"D4",X"FF",X"F7",X"FB",X"DF",X"BF",X"17",X"F7",X"33",X"4F",X"0B",
|
||||
X"01",X"C0",X"E8",X"C0",X"64",X"F0",X"E8",X"E0",X"F0",X"E4",X"E0",X"C2",X"C0",X"14",X"E8",X"81",
|
||||
X"87",X"2E",X"4F",X"5F",X"1E",X"2B",X"B7",X"27",X"2F",X"EF",X"DB",X"BC",X"DE",X"8F",X"4F",X"15",
|
||||
X"00",X"D0",X"C2",X"60",X"F8",X"FC",X"FC",X"FC",X"FC",X"FC",X"F8",X"30",X"90",X"B0",X"21",X"90",
|
||||
X"08",X"A4",X"65",X"D0",X"E8",X"C3",X"F3",X"71",X"33",X"93",X"6A",X"D0",X"F4",X"B0",X"B2",X"10",
|
||||
X"C4",X"F0",X"F2",X"F8",X"F8",X"FC",X"FD",X"FC",X"FC",X"FE",X"FE",X"FC",X"F8",X"F9",X"F4",X"C0",
|
||||
X"47",X"1F",X"3F",X"3F",X"FF",X"7F",X"7F",X"7F",X"7F",X"FF",X"7F",X"3F",X"3F",X"1F",X"0F",X"27",
|
||||
X"90",X"E0",X"F0",X"F0",X"F8",X"FC",X"F8",X"F8",X"F8",X"F8",X"F8",X"F0",X"F8",X"E0",X"F0",X"80",
|
||||
X"0F",X"5F",X"3F",X"FF",X"7F",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"7F",X"7F",X"BF",X"0F",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"E4",X"F8",X"FC",X"FC",X"FE",X"F8",X"C0",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"03",X"17",X"0F",X"3F",X"1F",X"3F",X"3F",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"E2",X"F8",X"F9",X"FC",X"FC",X"FE",X"F8",X"C0",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"23",X"0F",X"1F",X"1F",X"7F",X"3F",X"3F",X"3F",X"00",
|
||||
X"00",X"00",X"00",X"00",X"90",X"E0",X"F0",X"F0",X"F8",X"FC",X"F8",X"F8",X"F8",X"F8",X"C0",X"00",
|
||||
X"00",X"00",X"00",X"00",X"0F",X"5F",X"3F",X"FF",X"7F",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"00",
|
||||
X"00",X"00",X"00",X"88",X"E0",X"E4",X"F0",X"F0",X"F8",X"FA",X"F8",X"F8",X"FC",X"F8",X"C0",X"00",
|
||||
X"00",X"00",X"00",X"8F",X"3F",X"7F",X"7F",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"7F",X"00",
|
||||
X"80",X"E8",X"E2",X"B0",X"F8",X"F0",X"FD",X"D8",X"F0",X"E2",X"F8",X"A1",X"F0",X"E4",X"C0",X"88",
|
||||
X"0F",X"1F",X"3F",X"7F",X"7F",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"7F",X"7F",X"3F",X"0F",
|
||||
X"88",X"E0",X"E4",X"F0",X"A1",X"F8",X"E0",X"74",X"D8",X"FD",X"F0",X"C8",X"F0",X"E2",X"E8",X"80",
|
||||
X"0F",X"3F",X"7F",X"7F",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"7F",X"7F",X"3F",X"1F",X"0F",
|
||||
X"04",X"30",X"72",X"78",X"78",X"B0",X"C1",X"EC",X"6C",X"8E",X"6E",X"24",X"A0",X"B9",X"B4",X"00",
|
||||
X"46",X"13",X"39",X"38",X"13",X"87",X"AD",X"1E",X"6F",X"F7",X"58",X"3D",X"37",X"1F",X"0F",X"27",
|
||||
X"00",X"80",X"80",X"10",X"30",X"00",X"00",X"82",X"00",X"10",X"30",X"20",X"80",X"00",X"90",X"00",
|
||||
X"02",X"13",X"57",X"3B",X"70",X"81",X"D0",X"B0",X"C8",X"70",X"50",X"A1",X"45",X"0F",X"0B",X"27",
|
||||
X"00",X"00",X"00",X"00",X"10",X"00",X"02",X"00",X"00",X"04",X"00",X"40",X"00",X"00",X"20",X"00",
|
||||
X"00",X"04",X"22",X"20",X"60",X"04",X"0E",X"B4",X"C0",X"E4",X"A0",X"40",X"14",X"08",X"11",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"20",X"30",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"60",X"F0",X"F0",X"F0",X"60",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"02",X"02",X"02",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"60",X"F0",X"F0",X"F0",X"60",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"02",X"02",X"02",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"40",X"40",X"40",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"06",X"0F",X"0F",X"0F",X"06",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"A0",X"A0",X"20",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"03",X"07",X"07",X"07",X"03",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"30",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"0C",X"58",X"40",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"18",X"BC",X"BC",X"B8",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"30",X"78",X"78",X"78",X"30",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"01",X"01",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"60",X"F0",X"F0",X"F0",X"60",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"02",X"02",X"02",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"C0",X"C0",X"80",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"03",X"03",X"01",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"60",X"F0",X"F0",X"60",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"60",X"F0",X"F0",X"F0",X"60",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"02",X"02",X"02",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"60",X"F0",X"F0",X"60",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"03",X"07",X"07",X"03",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"C0",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"30",X"78",X"40",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"80",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"03",X"07",X"07",X"03",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"C0",X"E0",X"E0",X"C0",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"01",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"03",X"07",X"07",X"03",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"03",X"07",X"07",X"03",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"18",X"3C",X"3C",X"18",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"40",X"C0",X"E0",X"E0",X"C0",X"40",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"40",X"40",X"C0",X"C0",X"40",X"40",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"E0",X"FC",X"FE",X"E1",X"C0",X"80",X"80",X"00",X"80",X"C0",X"E1",X"FE",X"FC",X"E0",X"00",X"00",
|
||||
X"3F",X"FF",X"07",X"0F",X"07",X"03",X"C3",X"38",X"03",X"07",X"0F",X"07",X"FF",X"3F",X"00",X"00",
|
||||
X"00",X"E0",X"FC",X"E3",X"C0",X"80",X"80",X"00",X"80",X"C0",X"E3",X"FC",X"E0",X"00",X"00",X"00",
|
||||
X"00",X"3F",X"FF",X"0F",X"07",X"03",X"33",X"C8",X"03",X"07",X"0F",X"FF",X"3F",X"00",X"00",X"00",
|
||||
X"60",X"1C",X"02",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"02",X"1C",X"E0",X"00",X"00",
|
||||
X"3F",X"C0",X"00",X"00",X"00",X"00",X"C0",X"38",X"00",X"00",X"00",X"00",X"C0",X"3F",X"00",X"00",
|
||||
X"00",X"E0",X"1C",X"03",X"00",X"00",X"00",X"00",X"00",X"00",X"03",X"1C",X"60",X"00",X"00",X"00",
|
||||
X"00",X"3F",X"C0",X"00",X"00",X"00",X"38",X"C0",X"00",X"00",X"00",X"C0",X"3F",X"00",X"00",X"00",
|
||||
X"F8",X"06",X"00",X"00",X"00",X"00",X"00",X"00",X"1C",X"03",X"00",X"00",X"00",X"01",X"5C",X"00",
|
||||
X"00",X"0D",X"10",X"20",X"40",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"70",X"0F",X"00",
|
||||
X"00",X"5C",X"03",X"00",X"00",X"00",X"03",X"1C",X"00",X"00",X"00",X"00",X"00",X"00",X"06",X"F8",
|
||||
X"00",X"0F",X"70",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"40",X"20",X"10",X"0D",X"00",
|
||||
X"00",X"C0",X"80",X"00",X"00",X"00",X"00",X"80",X"C2",X"FC",X"F8",X"C0",X"00",X"00",X"00",X"00",
|
||||
X"00",X"1F",X"0F",X"07",X"87",X"70",X"07",X"0F",X"1F",X"0F",X"FF",X"7F",X"00",X"00",X"00",X"00",
|
||||
X"00",X"80",X"80",X"00",X"80",X"C0",X"E3",X"FC",X"E0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"03",X"33",X"C8",X"03",X"07",X"0F",X"FF",X"3F",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"C0",X"E0",X"F0",X"FF",X"FE",X"F0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"1C",X"01",X"03",X"07",X"03",X"7F",X"1F",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"C0",X"F8",X"FE",X"F8",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"01",X"03",X"3F",X"0F",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"F8",X"07",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"0F",X"30",X"00",X"00",X"00",X"0E",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"B0",X"0E",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"1F",X"60",X"00",X"00",X"00",X"00",X"60",X"1C",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"E0",X"1C",X"03",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"3F",X"C0",X"00",X"00",X"00",X"38",X"C0",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"C0",X"38",X"04",X"02",X"00",X"00",X"00",X"00",X"00",X"00",X"02",X"00",X"00",X"00",
|
||||
X"00",X"00",X"7E",X"80",X"00",X"00",X"00",X"00",X"80",X"70",X"00",X"00",X"00",X"00",X"80",X"00",
|
||||
X"00",X"00",X"00",X"00",X"E0",X"FC",X"FF",X"00",X"00",X"FF",X"FC",X"E0",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"07",X"3F",X"FF",X"C0",X"38",X"FF",X"3F",X"07",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"E0",X"F8",X"1C",X"03",X"00",X"00",X"00",X"03",X"FE",X"FC",X"E0",X"00",X"00",X"00",
|
||||
X"00",X"00",X"3F",X"7F",X"C0",X"00",X"00",X"38",X"C0",X"00",X"FF",X"7F",X"1F",X"00",X"00",X"00",
|
||||
X"00",X"60",X"1C",X"02",X"01",X"00",X"00",X"00",X"00",X"01",X"02",X"1E",X"FC",X"E0",X"00",X"00",
|
||||
X"00",X"3F",X"C0",X"00",X"00",X"00",X"00",X"C0",X"38",X"00",X"00",X"C0",X"7F",X"3F",X"00",X"00",
|
||||
X"00",X"00",X"FC",X"F8",X"C6",X"1E",X"3C",X"F8",X"F0",X"E0",X"80",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"01",X"07",X"0F",X"1F",X"3C",X"38",X"63",X"4F",X"7F",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"80",X"E0",X"F0",X"F8",X"3C",X"1E",X"C6",X"F8",X"FC",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"7F",X"4F",X"63",X"38",X"3C",X"1F",X"0F",X"07",X"01",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"E0",X"C0",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"1F",X"13",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"7F",X"FE",X"F1",X"C7",X"0E",X"38",X"C0",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"03",X"07",X"0F",X"0E",X"18",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"E0",X"F0",X"F8",X"38",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"7F",X"4F",X"63",X"38",X"3C",X"1F",X"00",
|
||||
X"00",X"00",X"00",X"00",X"F8",X"F0",X"8C",X"3C",X"78",X"F0",X"E0",X"C0",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"03",X"0F",X"1F",X"3E",X"78",X"71",X"C7",X"9F",X"FF",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"FF",X"F9",X"C7",X"3E",X"FE",X"FC",X"F8",X"C0",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"01",X"07",X"1F",X"3C",X"70",X"9F",X"1F",X"2F",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"C0",X"F8",X"FC",X"FE",X"3E",X"07",X"01",X"C0",X"F8",X"FE",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"0F",X"2F",X"1F",X"80",X"60",X"30",X"3C",X"1F",X"07",X"01",X"00",X"00",X"00",
|
||||
X"40",X"C0",X"C0",X"80",X"0C",X"3C",X"38",X"C0",X"E0",X"C0",X"00",X"80",X"A0",X"70",X"F0",X"78",
|
||||
X"00",X"00",X"03",X"05",X"10",X"36",X"78",X"71",X"C7",X"99",X"FC",X"0F",X"07",X"02",X"00",X"00",
|
||||
X"C0",X"A0",X"00",X"04",X"08",X"40",X"F0",X"80",X"40",X"30",X"00",X"00",X"C0",X"88",X"20",X"10",
|
||||
X"00",X"91",X"25",X"49",X"28",X"60",X"70",X"C2",X"0B",X"B1",X"B0",X"5C",X"0C",X"02",X"40",X"00",
|
||||
X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"20",X"00",X"00",X"00",
|
||||
X"00",X"01",X"10",X"40",X"20",X"80",X"80",X"48",X"10",X"45",X"00",X"00",X"40",X"28",X"0C",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"03",X"00",X"00",X"00",X"00",X"00",X"02",X"02",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"09",X"0F",X"0F",X"09",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"02",X"02",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"03",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"09",X"0F",X"0F",X"09",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"06",X"06",X"00",X"00",X"00",X"00",X"00",X"06",X"06",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"02",X"06",X"0E",X"0F",X"0F",X"0E",X"06",X"02",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"06",X"06",X"00",X"00",X"00",X"00",X"06",X"06",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"02",X"06",X"0E",X"0F",X"0F",X"0E",X"06",X"02",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"80",X"80",X"D0",X"F0",X"D0",X"80",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"10",X"20",X"00",X"00",X"00",X"01",X"01",X"00",X"10",X"00",X"10",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"80",X"D0",X"F0",X"D0",X"80",X"80",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"10",X"00",X"10",X"00",X"01",X"01",X"00",X"00",X"00",X"20",X"10",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"04",X"04",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"12",X"1E",X"1E",X"12",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"03",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"09",X"0F",X"0F",X"09",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"80",X"80",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"07",X"07",X"04",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"40",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"02",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"80",X"80",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"03",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"06",X"06",X"00",X"00",X"80",X"80",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"03",X"07",X"07",X"07",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"06",X"06",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"02",X"06",X"0E",X"0F",X"0F",X"0E",X"06",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"0C",X"0C",X"00",X"00",X"00",X"00",X"00",X"0C",X"08",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"04",X"0C",X"1C",X"1E",X"1E",X"1C",X"0C",X"04",X"00",X"00",
|
||||
X"00",X"E0",X"50",X"80",X"1C",X"38",X"30",X"70",X"60",X"60",X"00",X"30",X"20",X"00",X"00",X"00",
|
||||
X"00",X"08",X"18",X"09",X"03",X"0C",X"08",X"1D",X"34",X"03",X"01",X"00",X"02",X"02",X"00",X"00",
|
||||
X"00",X"00",X"30",X"70",X"F2",X"64",X"23",X"19",X"30",X"00",X"B2",X"72",X"06",X"4C",X"98",X"80",
|
||||
X"06",X"0D",X"A0",X"00",X"50",X"82",X"D6",X"0E",X"16",X"37",X"53",X"58",X"00",X"08",X"44",X"01",
|
||||
X"00",X"00",X"00",X"00",X"0C",X"0C",X"00",X"00",X"00",X"00",X"0C",X"0C",X"00",X"00",X"40",X"00",
|
||||
X"22",X"60",X"08",X"40",X"84",X"44",X"1C",X"8E",X"DE",X"5C",X"0C",X"04",X"40",X"60",X"42",X"06",
|
||||
X"F0",X"C0",X"E4",X"EC",X"7C",X"38",X"30",X"70",X"E0",X"E0",X"F0",X"30",X"20",X"00",X"00",X"00",
|
||||
X"00",X"08",X"1D",X"1F",X"3F",X"0E",X"0C",X"1F",X"37",X"07",X"07",X"03",X"03",X"02",X"00",X"00",
|
||||
X"00",X"00",X"00",X"20",X"30",X"F0",X"E0",X"E0",X"70",X"30",X"38",X"7C",X"EC",X"E4",X"C0",X"F0",
|
||||
X"00",X"00",X"02",X"03",X"03",X"07",X"07",X"37",X"1F",X"0C",X"0E",X"3F",X"1F",X"1D",X"08",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"24",X"32",X"33",X"7C",X"40",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"3C",X"30",X"79",X"FB",X"DF",X"8E",X"0C",X"DC",X"F8",X"C0",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"02",X"07",X"07",X"0F",X"03",X"03",X"07",X"0D",X"01",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"90",X"98",X"F8",X"F0",X"F0",X"B8",X"18",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"01",X"01",X"03",X"03",X"1B",X"0F",X"06",X"07",X"00",
|
||||
X"00",X"00",X"F0",X"C0",X"E4",X"EC",X"7C",X"38",X"30",X"70",X"E0",X"E0",X"F0",X"30",X"20",X"00",
|
||||
X"00",X"00",X"00",X"08",X"1D",X"1F",X"3F",X"0E",X"0C",X"1F",X"37",X"07",X"07",X"03",X"03",X"00",
|
||||
X"00",X"00",X"20",X"B8",X"EC",X"C6",X"E0",X"E0",X"E0",X"C0",X"82",X"82",X"C4",X"40",X"E0",X"E0",
|
||||
X"00",X"00",X"03",X"03",X"27",X"3D",X"7C",X"7C",X"66",X"67",X"23",X"37",X"1C",X"0C",X"03",X"00",
|
||||
X"E0",X"E0",X"40",X"C4",X"82",X"82",X"C0",X"E0",X"E0",X"E0",X"C6",X"EC",X"B8",X"20",X"00",X"00",
|
||||
X"00",X"03",X"0C",X"1C",X"37",X"23",X"67",X"66",X"7C",X"7C",X"3D",X"27",X"03",X"03",X"00",X"00",
|
||||
X"00",X"00",X"00",X"20",X"20",X"00",X"60",X"E0",X"70",X"30",X"78",X"1C",X"80",X"50",X"E0",X"00",
|
||||
X"00",X"00",X"02",X"02",X"00",X"01",X"03",X"35",X"1C",X"0A",X"0C",X"03",X"09",X"18",X"08",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"C0",X"80",X"00",X"80",X"00",X"00",
|
||||
X"10",X"00",X"00",X"11",X"00",X"08",X"1B",X"2F",X"62",X"50",X"01",X"08",X"0C",X"82",X"07",X"20",
|
||||
X"00",X"00",X"00",X"00",X"00",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"08",X"20",X"60",X"12",X"40",X"00",X"40",X"02",X"60",X"00",X"A1",X"30",X"40",X"60",X"08",X"02",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"C4",X"F0",X"F2",X"F8",X"F8",X"FC",X"FD",X"FC",X"FC",X"FE",X"FE",X"FC",X"F8",X"F9",X"F4",X"C0",
|
||||
X"47",X"1F",X"3F",X"3F",X"FF",X"7F",X"7F",X"7F",X"7F",X"FF",X"7F",X"3F",X"3F",X"1F",X"0F",X"27",
|
||||
X"C4",X"F0",X"F2",X"F8",X"F8",X"FC",X"FC",X"FC",X"FC",X"FE",X"FE",X"FC",X"F8",X"F8",X"F4",X"C0",
|
||||
X"47",X"1F",X"3F",X"3F",X"FF",X"7F",X"7F",X"7F",X"7F",X"FF",X"7F",X"3F",X"3F",X"1F",X"0F",X"27",
|
||||
X"C4",X"F0",X"F0",X"F8",X"F8",X"FC",X"FC",X"FC",X"FC",X"FC",X"FC",X"FC",X"F8",X"F8",X"F4",X"C0",
|
||||
X"47",X"1F",X"3F",X"3F",X"FF",X"7F",X"7F",X"7F",X"7F",X"FF",X"7F",X"3F",X"3F",X"1F",X"0F",X"27",
|
||||
X"C0",X"F0",X"F0",X"F8",X"F8",X"F8",X"F8",X"F8",X"F8",X"F8",X"F8",X"F8",X"F8",X"F8",X"F0",X"C0",
|
||||
X"47",X"1F",X"3F",X"3F",X"FF",X"7F",X"7F",X"7F",X"7F",X"FF",X"7F",X"3F",X"3F",X"1F",X"0F",X"27",
|
||||
X"C0",X"F0",X"F0",X"F0",X"F0",X"F0",X"F0",X"F0",X"F0",X"F0",X"F0",X"F0",X"F0",X"F0",X"F0",X"C0",
|
||||
X"47",X"1F",X"3F",X"3F",X"FF",X"7F",X"7F",X"7F",X"7F",X"FF",X"7F",X"3F",X"3F",X"1F",X"0F",X"27",
|
||||
X"C0",X"E0",X"E0",X"E0",X"E0",X"E0",X"E0",X"E0",X"E0",X"E0",X"E0",X"E0",X"E0",X"E0",X"E0",X"C0",
|
||||
X"47",X"1F",X"3F",X"3F",X"FF",X"7F",X"7F",X"7F",X"7F",X"FF",X"7F",X"3F",X"3F",X"1F",X"0F",X"27",
|
||||
X"C0",X"C0",X"C0",X"C0",X"C0",X"C0",X"C0",X"C0",X"C0",X"C0",X"C0",X"C0",X"C0",X"C0",X"C0",X"C0",
|
||||
X"47",X"1F",X"3F",X"3F",X"FF",X"7F",X"7F",X"7F",X"7F",X"FF",X"7F",X"3F",X"3F",X"1F",X"0F",X"27",
|
||||
X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80",
|
||||
X"47",X"1F",X"3F",X"3F",X"FF",X"7F",X"7F",X"7F",X"7F",X"FF",X"7F",X"3F",X"3F",X"1F",X"0F",X"27",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"47",X"1F",X"3F",X"3F",X"FF",X"7F",X"7F",X"7F",X"7F",X"FF",X"7F",X"3F",X"3F",X"1F",X"0F",X"27",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"46",X"1E",X"3E",X"3E",X"FE",X"7E",X"7E",X"7E",X"7E",X"FE",X"7E",X"3E",X"3E",X"1E",X"0E",X"26",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"44",X"1C",X"3C",X"3C",X"FC",X"7C",X"7C",X"7C",X"7C",X"FC",X"7C",X"3C",X"3C",X"1C",X"0C",X"24",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"40",X"18",X"38",X"38",X"F8",X"78",X"78",X"78",X"78",X"F8",X"78",X"38",X"38",X"18",X"08",X"20",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"40",X"10",X"30",X"30",X"F0",X"70",X"70",X"70",X"70",X"F0",X"70",X"30",X"30",X"10",X"00",X"20",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"40",X"00",X"20",X"20",X"E0",X"60",X"60",X"60",X"60",X"E0",X"60",X"20",X"20",X"00",X"00",X"20",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"40",X"00",X"00",X"00",X"C0",X"40",X"40",X"40",X"40",X"C0",X"40",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"80",X"00",X"00",X"00",X"00",X"80",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"60",X"F0",X"F0",X"60",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"60",X"F0",X"F0",X"60",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"60",X"F0",X"F0",X"60",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"60",X"F0",X"F0",X"60",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"60",X"F0",X"F0",X"60",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"60",X"E0",X"E0",X"60",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"40",X"C0",X"C0",X"40",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"FC",X"F8",X"C6",X"1E",X"3C",X"F8",X"F0",X"E0",X"80",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"01",X"07",X"0F",X"1F",X"3C",X"38",X"63",X"4F",X"7F",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"FC",X"F8",X"C6",X"1E",X"3C",X"F8",X"F0",X"E0",X"80",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"01",X"07",X"0F",X"1F",X"3C",X"38",X"63",X"4F",X"7F",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"FC",X"F8",X"C4",X"1C",X"3C",X"F8",X"F0",X"E0",X"80",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"01",X"07",X"0F",X"1F",X"3C",X"38",X"63",X"4F",X"7F",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"F8",X"F8",X"C0",X"18",X"38",X"F8",X"F0",X"E0",X"80",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"01",X"07",X"0F",X"1F",X"3C",X"38",X"63",X"4F",X"7F",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"F0",X"F0",X"C0",X"10",X"30",X"F0",X"F0",X"E0",X"80",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"01",X"07",X"0F",X"1F",X"3C",X"38",X"63",X"4F",X"7F",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"E0",X"E0",X"C0",X"00",X"20",X"E0",X"E0",X"E0",X"80",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"01",X"07",X"0F",X"1F",X"3C",X"38",X"63",X"4F",X"7F",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"C0",X"C0",X"C0",X"00",X"00",X"C0",X"C0",X"C0",X"80",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"01",X"07",X"0F",X"1F",X"3C",X"38",X"63",X"4F",X"7F",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"80",X"80",X"80",X"00",X"00",X"80",X"80",X"80",X"80",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"01",X"07",X"0F",X"1F",X"3C",X"38",X"63",X"4F",X"7F",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"01",X"07",X"0F",X"1F",X"3C",X"38",X"63",X"4F",X"7F",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"06",X"0E",X"1E",X"3C",X"38",X"62",X"4E",X"7E",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"04",X"0C",X"1C",X"3C",X"38",X"60",X"4C",X"7C",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"08",X"18",X"38",X"38",X"60",X"48",X"78",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"10",X"30",X"30",X"60",X"40",X"70",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"20",X"20",X"60",X"40",X"60",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"40",X"40",X"40",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"F0",X"C0",X"E4",X"EC",X"7C",X"38",X"30",X"70",X"E0",X"E0",X"F0",X"30",X"20",X"00",X"00",X"00",
|
||||
X"00",X"08",X"1D",X"1F",X"3F",X"0E",X"0C",X"1F",X"37",X"07",X"07",X"03",X"03",X"02",X"00",X"00",
|
||||
X"F0",X"C0",X"E4",X"EC",X"7C",X"38",X"30",X"70",X"E0",X"E0",X"F0",X"30",X"20",X"00",X"00",X"00",
|
||||
X"00",X"08",X"1D",X"1F",X"3F",X"0E",X"0C",X"1F",X"37",X"07",X"07",X"03",X"03",X"02",X"00",X"00",
|
||||
X"F0",X"C0",X"E4",X"EC",X"7C",X"38",X"30",X"70",X"E0",X"E0",X"F0",X"30",X"20",X"00",X"00",X"00",
|
||||
X"00",X"08",X"1D",X"1F",X"3F",X"0E",X"0C",X"1F",X"37",X"07",X"07",X"03",X"03",X"02",X"00",X"00",
|
||||
X"F0",X"C0",X"E0",X"E8",X"78",X"38",X"30",X"70",X"E0",X"E0",X"F0",X"30",X"20",X"00",X"00",X"00",
|
||||
X"00",X"08",X"1D",X"1F",X"3F",X"0E",X"0C",X"1F",X"37",X"07",X"07",X"03",X"03",X"02",X"00",X"00",
|
||||
X"F0",X"C0",X"E0",X"E0",X"70",X"30",X"30",X"70",X"E0",X"E0",X"F0",X"30",X"20",X"00",X"00",X"00",
|
||||
X"00",X"08",X"1D",X"1F",X"3F",X"0E",X"0C",X"1F",X"37",X"07",X"07",X"03",X"03",X"02",X"00",X"00",
|
||||
X"E0",X"C0",X"E0",X"E0",X"60",X"20",X"20",X"60",X"E0",X"E0",X"E0",X"20",X"20",X"00",X"00",X"00",
|
||||
X"00",X"08",X"1D",X"1F",X"3F",X"0E",X"0C",X"1F",X"37",X"07",X"07",X"03",X"03",X"02",X"00",X"00",
|
||||
X"C0",X"C0",X"C0",X"C0",X"40",X"00",X"00",X"40",X"C0",X"C0",X"C0",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"08",X"1D",X"1F",X"3F",X"0E",X"0C",X"1F",X"37",X"07",X"07",X"03",X"03",X"02",X"00",X"00",
|
||||
X"80",X"80",X"80",X"80",X"00",X"00",X"00",X"00",X"80",X"80",X"80",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"08",X"1D",X"1F",X"3F",X"0E",X"0C",X"1F",X"37",X"07",X"07",X"03",X"03",X"02",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"08",X"1D",X"1F",X"3F",X"0E",X"0C",X"1F",X"37",X"07",X"07",X"03",X"03",X"02",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"08",X"1C",X"1E",X"3E",X"0E",X"0C",X"1E",X"36",X"06",X"06",X"02",X"02",X"02",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"08",X"1C",X"1C",X"3C",X"0C",X"0C",X"1C",X"34",X"04",X"04",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"08",X"18",X"18",X"38",X"08",X"08",X"18",X"30",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"10",X"10",X"30",X"00",X"00",X"10",X"30",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"20",X"00",X"00",X"00",X"20",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00");
|
||||
begin
|
||||
process(clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
data <= rom_data(to_integer(unsigned(addr)));
|
||||
end if;
|
||||
end process;
|
||||
end architecture;
|
||||
@@ -0,0 +1,60 @@
|
||||
make_vhdl_prom t-0a.j11 sound_prog.vhd
|
||||
|
||||
make_vhdl_prom t-03.b5 bg_map.vhd
|
||||
|
||||
copy /b t-04.b7 + t-04.b7 + t-04.b7 + t-07.b11 + t-05.b9 + t-08.b13 + t-06.b10 + t-09.b14 rom.ROM
|
||||
|
||||
make_vhdl_prom rom.ROM prog.vhd
|
||||
copy /b dummy4k + t-04.b7 + t-04.b7 + t-07.b11 + t-05.b9 + t-08.b13 + t-06.b10 + t-09.b14 prgrom
|
||||
make_vhdl_prom prgrom prog.vhd
|
||||
copy /B t-11.k11 + t-12.k13 fg_sp_graphx_1.bin
|
||||
make_vhdl_prom fg_sp_graphx_1.bin fg_sp_graphx_1.vhd
|
||||
|
||||
copy /B t-0e.k6 + t-0f.k8 fg_sp_graphx_2.bin
|
||||
make_vhdl_prom fg_sp_graphx_2.bin fg_sp_graphx_2.vhd
|
||||
|
||||
copy /B t-0b.k2 + t-0c.k4 fg_sp_graphx_3.bin
|
||||
make_vhdl_prom fg_sp_graphx_3.bin fg_sp_graphx_3.vhd
|
||||
|
||||
make_vhdl_prom t-00.b1 bg_graphx_1.vhd
|
||||
make_vhdl_prom t-01.b2 bg_graphx_2.vhd
|
||||
make_vhdl_prom t-02.b4 bg_graphx_3.vhd
|
||||
|
||||
copy /b rom.ROM + t-0a.j11 TREASURE.ROM
|
||||
pause
|
||||
|
||||
ROM_START( tisland )
|
||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||
ROM_LOAD( "t-04.b7", 0xa000, 0x1000, CRC(641af7f9) SHA1(50cd8f2372725356bb5a66024084363f5c5a870d) )
|
||||
ROM_RELOAD( 0x9000, 0x1000 )
|
||||
ROM_LOAD( "t-07.b11", 0xb000, 0x1000, CRC(6af00c8b) SHA1(e3948ca36642d3c2a1f94b017893d6e2fe178bb0) )
|
||||
ROM_LOAD( "t-05.b9", 0xc000, 0x1000, CRC(95b1a1d3) SHA1(5636580f26e839d1140838c7efc1cabc2cf06f6f) )
|
||||
ROM_LOAD( "t-08.b13", 0xd000, 0x1000, CRC(b7bbc008) SHA1(751491eac90f46985c83a6c06088638bcd0c0f20) )
|
||||
ROM_LOAD( "t-06.b10", 0xe000, 0x1000, CRC(5a6783cf) SHA1(f518290efec0fedb92432b4e3448aea2438b8448) )
|
||||
ROM_LOAD( "t-09.b14", 0xf000, 0x1000, CRC(5b26771a) SHA1(31d86acba4b6549fc08a3947d6d6d1a470fcb9da) )
|
||||
|
||||
ROM_REGION( 0x10000, "audiocpu", 0 )
|
||||
ROM_LOAD( "t-0a.j11", 0xe000, 0x1000, CRC(807e1652) SHA1(ccfee616dc0e34d10a0e62b9864fd987291bf176) )
|
||||
|
||||
ROM_REGION( 0x3000, "gfx1", 0 )
|
||||
ROM_LOAD( "t-13.k14", 0x0000, 0x1000, CRC(95bdec2f) SHA1(201b9c53ea53a25535b619231d0d14e08c206ecf) )
|
||||
ROM_LOAD( "t-10.k10", 0x1000, 0x1000, CRC(3ba416cb) SHA1(90c968f963ba6f52f979f28f62eaccc0e2911508) )
|
||||
ROM_LOAD( "t-0d.k5", 0x2000, 0x1000, CRC(3d3e40b2) SHA1(90576c82500ce8eddbf4dd02e59ec4ccc3b13000) ) /* 8x8 tiles */
|
||||
|
||||
ROM_REGION( 0x1800, "gfx2", 0 ) /* bg tiles */
|
||||
// also contains the (incomplete) bg tilemap data for 1 tilemap (0x400-0x7ff of every rom is same as bg_map region, leftover?) */
|
||||
ROM_LOAD( "t-00.b1", 0x0000, 0x0800, CRC(05eaf899) SHA1(b03a1b7d985b4d841d6bbb213a32a33e324dff89) ) /* charset #2 */
|
||||
ROM_LOAD( "t-01.b2", 0x0800, 0x0800, CRC(f692e9e0) SHA1(e07ef20de8e9387f1096412d42d14ed5e52bbbd9) )
|
||||
ROM_LOAD( "t-02.b4", 0x1000, 0x0800, CRC(88396cae) SHA1(47233d91e9c7b14091a0050524fa49e1bc69311d) )
|
||||
|
||||
ROM_REGION( 0x6000, "gfx3", 0 )
|
||||
ROM_LOAD( "t-11.k11", 0x0000, 0x1000, CRC(779cc47c) SHA1(8921b81d460232252fd5a3c9bb2ad0befc1421da) ) /* 16x16 tiles*/
|
||||
ROM_LOAD( "t-12.k13", 0x1000, 0x1000, CRC(c804a8aa) SHA1(f8ce1da88443416b6cd276741a600104d36c3725) )
|
||||
ROM_LOAD( "t-0e.k6", 0x2000, 0x1000, CRC(63aa2b22) SHA1(765c405b1948191f5bdf1d8c1e7f20acb0894195) )
|
||||
ROM_LOAD( "t-0f.k8", 0x3000, 0x1000, CRC(3eeca392) SHA1(78deceea3628aed0a57cb4208d260a91a304695a) )
|
||||
ROM_LOAD( "t-0b.k2", 0x4000, 0x1000, CRC(ec416f20) SHA1(20852ef9753b103c5ec03d5eede778c0e25fc059) )
|
||||
ROM_LOAD( "t-0c.k4", 0x5000, 0x1000, CRC(428513a7) SHA1(aab97ee938dc743a2941f71f827c22b9dde8aef0) )
|
||||
|
||||
ROM_REGION( 0x1000, "bg_map", 0 ) /* bg tilemap data */
|
||||
ROM_LOAD( "t-03.b5", 0x0000, 0x1000, CRC(68df6d50) SHA1(461acc39089faac36bf8a8d279fbb6c046ae0264) )
|
||||
ROM_END
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,278 @@
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all,ieee.numeric_std.all;
|
||||
|
||||
entity sound_prog is
|
||||
port (
|
||||
clk : in std_logic;
|
||||
addr : in std_logic_vector(11 downto 0);
|
||||
data : out std_logic_vector(7 downto 0)
|
||||
);
|
||||
end entity;
|
||||
|
||||
architecture prom of sound_prog is
|
||||
type rom is array(0 to 4095) of std_logic_vector(7 downto 0);
|
||||
signal rom_data: rom := (
|
||||
X"48",X"8A",X"48",X"98",X"48",X"AD",X"00",X"A0",X"48",X"F0",X"66",X"29",X"C0",X"D0",X"28",X"68",
|
||||
X"29",X"1F",X"F0",X"52",X"C5",X"13",X"90",X"4E",X"85",X"13",X"A8",X"0A",X"AA",X"B9",X"7C",X"F2",
|
||||
X"85",X"03",X"BD",X"F1",X"F2",X"85",X"05",X"E8",X"BD",X"F1",X"F2",X"85",X"06",X"A9",X"00",X"85",
|
||||
X"01",X"A2",X"FF",X"9A",X"4C",X"A6",X"F0",X"68",X"30",X"32",X"29",X"0F",X"85",X"14",X"AA",X"BD",
|
||||
X"8D",X"F2",X"85",X"04",X"BD",X"95",X"F2",X"85",X"15",X"A9",X"00",X"85",X"02",X"85",X"0E",X"85",
|
||||
X"1C",X"85",X"1A",X"A5",X"14",X"C9",X"01",X"F0",X"09",X"38",X"E9",X"06",X"B0",X"04",X"A9",X"01",
|
||||
X"85",X"1C",X"A9",X"01",X"85",X"19",X"68",X"A8",X"68",X"AA",X"68",X"40",X"E6",X"1B",X"4C",X"66",
|
||||
X"F0",X"78",X"D8",X"A2",X"FF",X"9A",X"A2",X"40",X"A9",X"00",X"95",X"01",X"CA",X"10",X"FB",X"A2",
|
||||
X"0B",X"A0",X"00",X"B9",X"9D",X"F2",X"8D",X"00",X"40",X"8D",X"00",X"80",X"C8",X"B9",X"9D",X"F2",
|
||||
X"8D",X"00",X"20",X"8D",X"00",X"60",X"C8",X"CA",X"10",X"E9",X"AD",X"00",X"A0",X"A9",X"FF",X"8D",
|
||||
X"00",X"C0",X"58",X"4C",X"A3",X"F0",X"A9",X"07",X"8D",X"00",X"40",X"A5",X"03",X"8D",X"00",X"20",
|
||||
X"A4",X"01",X"B1",X"05",X"C9",X"80",X"F0",X"1F",X"85",X"0B",X"C8",X"B1",X"05",X"85",X"0C",X"C8",
|
||||
X"B1",X"05",X"85",X"0D",X"A5",X"0B",X"8D",X"00",X"40",X"A5",X"0C",X"8D",X"00",X"20",X"C8",X"84",
|
||||
X"01",X"20",X"72",X"F2",X"4C",X"B0",X"F0",X"A2",X"00",X"86",X"13",X"BD",X"B5",X"F2",X"8D",X"00",
|
||||
X"40",X"E8",X"BD",X"B5",X"F2",X"8D",X"00",X"20",X"E8",X"E0",X"08",X"D0",X"EE",X"4C",X"A2",X"F0",
|
||||
X"48",X"8A",X"48",X"98",X"48",X"A5",X"1B",X"F0",X"06",X"20",X"54",X"F2",X"4C",X"41",X"F1",X"A5",
|
||||
X"19",X"F0",X"3E",X"A5",X"1C",X"D0",X"40",X"A5",X"1A",X"D0",X"31",X"E6",X"1A",X"A2",X"00",X"A4",
|
||||
X"15",X"B9",X"13",X"F3",X"95",X"07",X"C8",X"E8",X"E0",X"04",X"D0",X"F5",X"A9",X"07",X"8D",X"00",
|
||||
X"80",X"A5",X"04",X"8D",X"00",X"60",X"A0",X"00",X"A9",X"09",X"8D",X"00",X"80",X"B1",X"07",X"8D",
|
||||
X"00",X"60",X"A9",X"0A",X"8D",X"00",X"80",X"B1",X"09",X"8D",X"00",X"60",X"20",X"7A",X"F1",X"C6",
|
||||
X"0E",X"68",X"A8",X"68",X"AA",X"68",X"40",X"A5",X"1A",X"D0",X"27",X"E6",X"1A",X"A6",X"15",X"BD",
|
||||
X"13",X"F3",X"85",X"07",X"E8",X"BD",X"13",X"F3",X"85",X"08",X"A9",X"07",X"8D",X"00",X"80",X"A5",
|
||||
X"04",X"8D",X"00",X"60",X"A0",X"00",X"A9",X"08",X"8D",X"00",X"80",X"B1",X"07",X"85",X"17",X"8D",
|
||||
X"00",X"60",X"20",X"D0",X"F1",X"C6",X"0E",X"4C",X"41",X"F1",X"A4",X"02",X"A5",X"0E",X"D0",X"46",
|
||||
X"A6",X"14",X"BD",X"DB",X"F2",X"85",X"0E",X"C8",X"A9",X"03",X"8D",X"00",X"80",X"B1",X"07",X"C9",
|
||||
X"80",X"F0",X"39",X"C9",X"81",X"F0",X"30",X"48",X"4A",X"4A",X"4A",X"4A",X"8D",X"00",X"60",X"A9",
|
||||
X"02",X"8D",X"00",X"80",X"68",X"29",X"0F",X"AA",X"BD",X"BD",X"F2",X"8D",X"00",X"60",X"A9",X"00",
|
||||
X"8D",X"00",X"80",X"B1",X"09",X"85",X"10",X"8D",X"00",X"60",X"A9",X"04",X"8D",X"00",X"80",X"A5",
|
||||
X"10",X"8D",X"00",X"60",X"84",X"02",X"60",X"A9",X"00",X"85",X"02",X"60",X"20",X"54",X"F2",X"60",
|
||||
X"A4",X"02",X"A5",X"0E",X"D0",X"40",X"A6",X"14",X"BD",X"DB",X"F2",X"85",X"0E",X"A5",X"02",X"29",
|
||||
X"03",X"D0",X"3D",X"A9",X"08",X"8D",X"00",X"80",X"A5",X"17",X"8D",X"00",X"60",X"C8",X"A9",X"01",
|
||||
X"8D",X"00",X"80",X"B1",X"07",X"C9",X"80",X"F0",X"23",X"C9",X"81",X"F0",X"1A",X"48",X"4A",X"4A",
|
||||
X"4A",X"4A",X"8D",X"00",X"60",X"A9",X"00",X"8D",X"00",X"80",X"68",X"29",X"0F",X"AA",X"BD",X"BD",
|
||||
X"F2",X"8D",X"00",X"60",X"84",X"02",X"60",X"A9",X"00",X"85",X"02",X"60",X"20",X"54",X"F2",X"60",
|
||||
X"4A",X"B0",X"09",X"4A",X"B0",X"1A",X"4A",X"B0",X"21",X"4C",X"ED",X"F1",X"A5",X"17",X"38",X"E9",
|
||||
X"01",X"85",X"18",X"A9",X"08",X"8D",X"00",X"80",X"A5",X"18",X"8D",X"00",X"60",X"4C",X"ED",X"F1",
|
||||
X"A5",X"17",X"38",X"E9",X"02",X"85",X"18",X"4C",X"33",X"F2",X"A5",X"17",X"38",X"E9",X"04",X"85",
|
||||
X"18",X"4C",X"33",X"F2",X"A2",X"00",X"BD",X"B5",X"F2",X"8D",X"00",X"80",X"E8",X"BD",X"B5",X"F2",
|
||||
X"8D",X"00",X"60",X"E8",X"E0",X"08",X"D0",X"EE",X"A9",X"00",X"A2",X"04",X"95",X"19",X"CA",X"10",
|
||||
X"FB",X"60",X"A2",X"80",X"CA",X"D0",X"FD",X"C6",X"0D",X"D0",X"F7",X"60",X"00",X"FE",X"FE",X"FE",
|
||||
X"F7",X"FD",X"FD",X"FD",X"FD",X"FD",X"FD",X"FD",X"FC",X"F7",X"FD",X"FB",X"FB",X"00",X"F9",X"FE",
|
||||
X"FE",X"FE",X"FE",X"F9",X"FF",X"00",X"02",X"06",X"08",X"0A",X"0C",X"0E",X"12",X"00",X"00",X"01",
|
||||
X"00",X"02",X"00",X"03",X"00",X"04",X"00",X"05",X"00",X"07",X"FF",X"08",X"00",X"09",X"00",X"0A",
|
||||
X"00",X"0E",X"00",X"0F",X"00",X"07",X"FF",X"08",X"00",X"09",X"00",X"0A",X"00",X"00",X"F5",X"BC",
|
||||
X"86",X"BC",X"24",X"F7",X"CC",X"A4",X"7E",X"5A",X"38",X"18",X"FA",X"68",X"43",X"00",X"00",X"01",
|
||||
X"00",X"02",X"00",X"03",X"00",X"04",X"00",X"05",X"00",X"07",X"FF",X"00",X"60",X"30",X"28",X"20",
|
||||
X"18",X"40",X"00",X"00",X"00",X"01",X"00",X"02",X"00",X"03",X"00",X"04",X"00",X"05",X"00",X"07",
|
||||
X"FF",X"00",X"00",X"33",X"F3",X"67",X"F3",X"86",X"F3",X"A5",X"F3",X"3C",X"F4",X"6D",X"F4",X"9E",
|
||||
X"F4",X"CF",X"F4",X"00",X"F5",X"6A",X"F5",X"98",X"F5",X"CF",X"F5",X"F4",X"F5",X"61",X"F6",X"5B",
|
||||
X"F7",X"98",X"F7",X"00",X"00",X"C3",X"F7",X"F9",X"F7",X"2E",X"F8",X"D0",X"F8",X"72",X"F9",X"14",
|
||||
X"FA",X"B6",X"FA",X"38",X"FB",X"B9",X"FB",X"B9",X"FB",X"B9",X"FB",X"B9",X"FB",X"B9",X"FB",X"B9",
|
||||
X"FB",X"B9",X"FB",X"01",X"00",X"01",X"08",X"0F",X"01",X"00",X"2C",X"10",X"00",X"3B",X"10",X"00",
|
||||
X"2C",X"10",X"00",X"3B",X"10",X"00",X"2C",X"10",X"00",X"3B",X"10",X"00",X"37",X"10",X"00",X"3B",
|
||||
X"10",X"00",X"37",X"10",X"00",X"3B",X"10",X"00",X"37",X"10",X"00",X"3B",X"10",X"00",X"2C",X"10",
|
||||
X"00",X"3B",X"10",X"00",X"2C",X"10",X"80",X"01",X"00",X"01",X"08",X"0D",X"01",X"00",X"59",X"08",
|
||||
X"00",X"4F",X"08",X"00",X"47",X"08",X"00",X"43",X"08",X"00",X"3B",X"08",X"00",X"35",X"08",X"00",
|
||||
X"2F",X"08",X"00",X"2C",X"08",X"80",X"01",X"00",X"01",X"08",X"0D",X"01",X"00",X"2C",X"08",X"00",
|
||||
X"2F",X"08",X"00",X"35",X"08",X"00",X"3B",X"08",X"00",X"43",X"08",X"00",X"47",X"08",X"00",X"4F",
|
||||
X"08",X"00",X"59",X"08",X"80",X"06",X"09",X"08",X"08",X"0B",X"02",X"08",X"0C",X"02",X"08",X"0D",
|
||||
X"02",X"08",X"0E",X"02",X"08",X"0F",X"02",X"08",X"0E",X"02",X"08",X"0D",X"02",X"08",X"0C",X"02",
|
||||
X"08",X"0B",X"02",X"08",X"0A",X"02",X"08",X"0A",X"02",X"08",X"08",X"02",X"08",X"07",X"02",X"08",
|
||||
X"06",X"02",X"08",X"05",X"02",X"08",X"06",X"02",X"08",X"07",X"02",X"08",X"08",X"02",X"08",X"09",
|
||||
X"02",X"08",X"0A",X"02",X"08",X"0B",X"02",X"08",X"0C",X"02",X"08",X"0D",X"02",X"08",X"0E",X"02",
|
||||
X"08",X"0F",X"02",X"06",X"0C",X"08",X"08",X"0E",X"02",X"06",X"0B",X"08",X"08",X"0D",X"02",X"06",
|
||||
X"0A",X"08",X"08",X"0C",X"02",X"06",X"09",X"08",X"08",X"0B",X"02",X"06",X"08",X"08",X"08",X"0A",
|
||||
X"02",X"06",X"07",X"08",X"08",X"09",X"02",X"06",X"06",X"08",X"08",X"08",X"02",X"06",X"05",X"08",
|
||||
X"08",X"07",X"02",X"06",X"04",X"08",X"08",X"06",X"02",X"06",X"03",X"08",X"08",X"05",X"02",X"06",
|
||||
X"02",X"08",X"08",X"04",X"02",X"06",X"08",X"08",X"08",X"03",X"02",X"80",X"09",X"10",X"01",X"0C",
|
||||
X"08",X"01",X"0D",X"09",X"01",X"03",X"01",X"01",X"02",X"FA",X"20",X"02",X"F8",X"02",X"02",X"FA",
|
||||
X"20",X"02",X"FC",X"02",X"02",X"FA",X"20",X"02",X"F8",X"02",X"02",X"FA",X"20",X"02",X"FC",X"02",
|
||||
X"02",X"FF",X"02",X"02",X"FF",X"02",X"02",X"FF",X"02",X"02",X"FF",X"02",X"80",X"09",X"10",X"01",
|
||||
X"0C",X"08",X"01",X"0D",X"09",X"01",X"03",X"01",X"01",X"02",X"92",X"20",X"02",X"90",X"02",X"02",
|
||||
X"92",X"20",X"02",X"94",X"02",X"02",X"92",X"20",X"02",X"9C",X"02",X"02",X"92",X"20",X"02",X"9F",
|
||||
X"02",X"02",X"98",X"02",X"02",X"9C",X"02",X"02",X"98",X"02",X"02",X"9C",X"02",X"80",X"09",X"10",
|
||||
X"01",X"0C",X"08",X"01",X"0D",X"09",X"01",X"03",X"01",X"01",X"02",X"66",X"20",X"02",X"68",X"02",
|
||||
X"02",X"66",X"20",X"02",X"6C",X"02",X"02",X"66",X"20",X"02",X"68",X"02",X"02",X"66",X"20",X"02",
|
||||
X"6C",X"02",X"02",X"66",X"02",X"02",X"6F",X"02",X"02",X"66",X"02",X"02",X"6F",X"02",X"80",X"09",
|
||||
X"10",X"01",X"0C",X"08",X"01",X"0D",X"09",X"01",X"03",X"00",X"01",X"02",X"FA",X"20",X"02",X"F8",
|
||||
X"02",X"02",X"FA",X"20",X"02",X"FC",X"02",X"02",X"FA",X"20",X"02",X"F8",X"02",X"02",X"FA",X"20",
|
||||
X"02",X"FC",X"02",X"02",X"FF",X"02",X"02",X"FF",X"02",X"02",X"FF",X"02",X"02",X"FF",X"02",X"80",
|
||||
X"03",X"00",X"01",X"09",X"10",X"01",X"0C",X"08",X"01",X"0D",X"09",X"01",X"02",X"70",X"01",X"02",
|
||||
X"6F",X"01",X"02",X"6E",X"01",X"02",X"6D",X"01",X"02",X"6C",X"01",X"02",X"6B",X"01",X"02",X"6A",
|
||||
X"01",X"02",X"69",X"01",X"02",X"68",X"04",X"02",X"67",X"04",X"02",X"66",X"04",X"02",X"65",X"04",
|
||||
X"02",X"64",X"04",X"02",X"63",X"08",X"02",X"62",X"08",X"02",X"61",X"08",X"02",X"60",X"08",X"02",
|
||||
X"5F",X"08",X"02",X"5E",X"08",X"02",X"5D",X"08",X"02",X"5C",X"08",X"02",X"5B",X"08",X"02",X"5A",
|
||||
X"08",X"02",X"59",X"08",X"02",X"58",X"08",X"02",X"57",X"08",X"02",X"56",X"08",X"02",X"55",X"08",
|
||||
X"02",X"54",X"10",X"02",X"53",X"10",X"02",X"52",X"10",X"80",X"09",X"10",X"01",X"0C",X"08",X"01",
|
||||
X"0D",X"09",X"01",X"03",X"0F",X"01",X"02",X"FF",X"08",X"03",X"00",X"01",X"02",X"F0",X"08",X"03",
|
||||
X"0E",X"01",X"02",X"FF",X"08",X"03",X"00",X"01",X"02",X"A0",X"08",X"03",X"0D",X"01",X"02",X"FF",
|
||||
X"08",X"03",X"00",X"01",X"02",X"60",X"20",X"80",X"03",X"00",X"01",X"09",X"10",X"01",X"0C",X"08",
|
||||
X"01",X"0D",X"09",X"01",X"02",X"11",X"10",X"02",X"77",X"10",X"02",X"D5",X"10",X"02",X"49",X"10",
|
||||
X"03",X"04",X"01",X"02",X"6A",X"10",X"03",X"01",X"01",X"02",X"49",X"10",X"02",X"D5",X"10",X"02",
|
||||
X"77",X"10",X"02",X"19",X"10",X"02",X"00",X"10",X"03",X"00",X"01",X"02",X"EA",X"10",X"80",X"08",
|
||||
X"10",X"01",X"09",X"10",X"01",X"0C",X"08",X"01",X"0D",X"09",X"01",X"01",X"03",X"01",X"00",X"F5",
|
||||
X"10",X"03",X"01",X"01",X"02",X"FA",X"10",X"00",X"24",X"10",X"02",X"92",X"10",X"00",X"A4",X"10",
|
||||
X"02",X"52",X"10",X"80",X"06",X"03",X"10",X"08",X"0F",X"02",X"08",X"0E",X"02",X"08",X"0D",X"02",
|
||||
X"08",X"0C",X"02",X"08",X"0B",X"02",X"08",X"0A",X"02",X"08",X"09",X"02",X"08",X"07",X"02",X"08",
|
||||
X"06",X"02",X"08",X"07",X"02",X"08",X"08",X"02",X"06",X"0A",X"10",X"08",X"09",X"02",X"08",X"0A",
|
||||
X"10",X"08",X"0B",X"10",X"08",X"0C",X"02",X"08",X"0D",X"02",X"06",X"07",X"10",X"08",X"0C",X"02",
|
||||
X"06",X"06",X"10",X"08",X"0B",X"02",X"06",X"05",X"10",X"08",X"0A",X"02",X"06",X"04",X"10",X"08",
|
||||
X"09",X"02",X"06",X"03",X"10",X"08",X"08",X"02",X"06",X"02",X"10",X"08",X"07",X"02",X"06",X"01",
|
||||
X"02",X"08",X"06",X"02",X"08",X"05",X"02",X"08",X"04",X"02",X"08",X"03",X"02",X"08",X"02",X"02",
|
||||
X"80",X"09",X"10",X"01",X"03",X"00",X"01",X"0C",X"80",X"01",X"0D",X"09",X"01",X"02",X"3F",X"10",
|
||||
X"02",X"3D",X"10",X"02",X"3B",X"10",X"02",X"39",X"10",X"02",X"37",X"10",X"02",X"35",X"10",X"02",
|
||||
X"33",X"10",X"02",X"31",X"10",X"02",X"2F",X"10",X"02",X"2D",X"10",X"02",X"2B",X"10",X"02",X"29",
|
||||
X"10",X"02",X"27",X"10",X"02",X"25",X"10",X"02",X"23",X"10",X"02",X"21",X"10",X"02",X"1F",X"10",
|
||||
X"02",X"20",X"10",X"02",X"22",X"10",X"02",X"24",X"10",X"02",X"26",X"10",X"02",X"28",X"10",X"02",
|
||||
X"2A",X"10",X"02",X"2C",X"10",X"02",X"2E",X"10",X"02",X"30",X"10",X"02",X"32",X"10",X"02",X"34",
|
||||
X"10",X"02",X"36",X"10",X"02",X"38",X"10",X"02",X"3A",X"10",X"02",X"3C",X"10",X"02",X"3E",X"10",
|
||||
X"02",X"40",X"08",X"02",X"42",X"08",X"02",X"44",X"08",X"02",X"46",X"08",X"02",X"48",X"08",X"02",
|
||||
X"4A",X"08",X"02",X"4C",X"08",X"02",X"50",X"08",X"02",X"52",X"08",X"02",X"54",X"08",X"02",X"56",
|
||||
X"08",X"02",X"58",X"08",X"02",X"5A",X"08",X"02",X"5C",X"08",X"02",X"5E",X"08",X"02",X"60",X"04",
|
||||
X"02",X"64",X"04",X"02",X"68",X"04",X"02",X"6C",X"04",X"02",X"70",X"04",X"02",X"74",X"04",X"02",
|
||||
X"78",X"04",X"02",X"7C",X"04",X"02",X"80",X"04",X"02",X"84",X"04",X"02",X"88",X"04",X"02",X"8C",
|
||||
X"04",X"02",X"90",X"04",X"02",X"94",X"04",X"02",X"98",X"04",X"02",X"9C",X"04",X"02",X"A0",X"04",
|
||||
X"02",X"A4",X"04",X"02",X"A4",X"04",X"02",X"A8",X"04",X"02",X"AC",X"04",X"02",X"B0",X"04",X"02",
|
||||
X"B4",X"04",X"02",X"B8",X"04",X"02",X"BC",X"04",X"02",X"C0",X"04",X"02",X"C4",X"04",X"02",X"C8",
|
||||
X"04",X"02",X"CC",X"04",X"02",X"D0",X"04",X"02",X"D4",X"04",X"80",X"0A",X"0F",X"01",X"04",X"40",
|
||||
X"20",X"04",X"80",X"20",X"04",X"40",X"20",X"04",X"80",X"20",X"04",X"40",X"20",X"04",X"80",X"20",
|
||||
X"04",X"40",X"20",X"04",X"80",X"20",X"04",X"40",X"20",X"04",X"80",X"20",X"04",X"40",X"20",X"04",
|
||||
X"80",X"20",X"04",X"40",X"20",X"04",X"80",X"20",X"04",X"40",X"20",X"04",X"80",X"20",X"04",X"40",
|
||||
X"20",X"04",X"80",X"20",X"04",X"40",X"20",X"80",X"0A",X"10",X"01",X"0C",X"08",X"01",X"0D",X"09",
|
||||
X"01",X"04",X"32",X"10",X"04",X"2A",X"10",X"04",X"32",X"10",X"04",X"2A",X"10",X"04",X"32",X"10",
|
||||
X"04",X"2A",X"10",X"04",X"32",X"10",X"04",X"2A",X"10",X"04",X"32",X"10",X"04",X"2A",X"10",X"04",
|
||||
X"32",X"10",X"80",X"08",X"31",X"31",X"31",X"31",X"31",X"31",X"31",X"31",X"31",X"31",X"31",X"00",
|
||||
X"33",X"33",X"33",X"33",X"33",X"33",X"33",X"33",X"33",X"33",X"33",X"00",X"35",X"35",X"35",X"35",
|
||||
X"35",X"35",X"35",X"35",X"35",X"35",X"35",X"00",X"1D",X"1D",X"2C",X"2C",X"2A",X"2A",X"28",X"28",
|
||||
X"26",X"26",X"35",X"35",X"33",X"33",X"31",X"31",X"81",X"0A",X"A9",X"C9",X"FD",X"A9",X"C9",X"FD",
|
||||
X"A9",X"C9",X"FD",X"A9",X"C9",X"FD",X"96",X"BD",X"E1",X"96",X"BD",X"E1",X"96",X"BD",X"E1",X"96",
|
||||
X"BD",X"E1",X"86",X"A9",X"C9",X"86",X"A9",X"C9",X"86",X"A9",X"C9",X"86",X"A9",X"C9",X"7E",X"7E",
|
||||
X"86",X"86",X"96",X"96",X"A9",X"A9",X"BC",X"BC",X"C9",X"C9",X"E1",X"E1",X"FD",X"FD",X"07",X"21",
|
||||
X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"0E",X"00",X"00",X"00",X"0F",X"00",X"00",X"00",X"21",
|
||||
X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"0E",X"00",X"00",X"00",X"0F",X"00",X"00",X"00",X"21",
|
||||
X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"2E",X"00",X"00",X"00",X"2F",X"00",X"00",X"00",X"21",
|
||||
X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"11",X"00",X"00",X"00",X"21",X"00",X"00",X"00",X"21",
|
||||
X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"2E",X"00",X"00",X"00",X"2F",X"00",X"00",X"00",X"21",
|
||||
X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"2E",X"00",X"00",X"00",X"2F",X"00",X"00",X"00",X"21",
|
||||
X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"1E",X"00",X"00",X"00",X"0F",X"00",X"00",X"00",X"21",
|
||||
X"00",X"00",X"00",X"0A",X"00",X"00",X"00",X"21",X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"11",
|
||||
X"00",X"00",X"00",X"0E",X"00",X"00",X"00",X"0A",X"00",X"00",X"00",X"0F",X"00",X"00",X"00",X"21",
|
||||
X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"0E",X"00",X"00",X"00",X"0F",X"00",X"00",X"00",X"81",
|
||||
X"08",X"21",X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"0E",X"00",X"00",X"00",X"0F",X"00",X"00",
|
||||
X"00",X"21",X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"0E",X"00",X"00",X"00",X"0F",X"00",X"00",
|
||||
X"00",X"21",X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"2E",X"00",X"00",X"00",X"2F",X"00",X"00",
|
||||
X"00",X"21",X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"11",X"00",X"00",X"00",X"21",X"00",X"00",
|
||||
X"00",X"21",X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"2E",X"00",X"00",X"00",X"2F",X"00",X"00",
|
||||
X"00",X"21",X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"2E",X"00",X"00",X"00",X"2F",X"00",X"00",
|
||||
X"00",X"21",X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"1E",X"00",X"00",X"00",X"0F",X"00",X"00",
|
||||
X"00",X"21",X"00",X"00",X"00",X"0A",X"00",X"00",X"00",X"21",X"00",X"00",X"00",X"01",X"00",X"00",
|
||||
X"00",X"11",X"00",X"00",X"00",X"0E",X"00",X"00",X"00",X"0A",X"00",X"00",X"00",X"0F",X"00",X"00",
|
||||
X"00",X"21",X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"0E",X"00",X"00",X"00",X"0F",X"00",X"00",
|
||||
X"00",X"81",X"09",X"21",X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"0E",X"00",X"00",X"00",X"0F",
|
||||
X"00",X"00",X"00",X"21",X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"0E",X"00",X"00",X"00",X"0F",
|
||||
X"00",X"00",X"00",X"21",X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"2E",X"00",X"00",X"00",X"2F",
|
||||
X"00",X"00",X"00",X"21",X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"11",X"00",X"00",X"00",X"21",
|
||||
X"00",X"00",X"00",X"21",X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"2E",X"00",X"00",X"00",X"2F",
|
||||
X"00",X"00",X"00",X"21",X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"2E",X"00",X"00",X"00",X"2F",
|
||||
X"00",X"00",X"00",X"21",X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"1E",X"00",X"00",X"00",X"0F",
|
||||
X"00",X"00",X"00",X"21",X"00",X"00",X"00",X"0A",X"00",X"00",X"00",X"21",X"00",X"00",X"00",X"01",
|
||||
X"00",X"00",X"00",X"11",X"00",X"00",X"00",X"0E",X"00",X"00",X"00",X"0A",X"00",X"00",X"00",X"0F",
|
||||
X"00",X"00",X"00",X"21",X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"0E",X"00",X"00",X"00",X"0F",
|
||||
X"00",X"00",X"00",X"81",X"0A",X"21",X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"0E",X"00",X"00",
|
||||
X"00",X"0F",X"00",X"00",X"00",X"21",X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"0E",X"00",X"00",
|
||||
X"00",X"0F",X"00",X"00",X"00",X"21",X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"2E",X"00",X"00",
|
||||
X"00",X"2F",X"00",X"00",X"00",X"21",X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"11",X"00",X"00",
|
||||
X"00",X"21",X"00",X"00",X"00",X"21",X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"2E",X"00",X"00",
|
||||
X"00",X"2F",X"00",X"00",X"00",X"21",X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"2E",X"00",X"00",
|
||||
X"00",X"2F",X"00",X"00",X"00",X"21",X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"1E",X"00",X"00",
|
||||
X"00",X"0F",X"00",X"00",X"00",X"21",X"00",X"00",X"00",X"0A",X"00",X"00",X"00",X"21",X"00",X"00",
|
||||
X"00",X"01",X"00",X"00",X"00",X"11",X"00",X"00",X"00",X"0E",X"00",X"00",X"00",X"0A",X"00",X"00",
|
||||
X"00",X"0F",X"00",X"00",X"00",X"21",X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"0E",X"00",X"00",
|
||||
X"00",X"0F",X"00",X"00",X"00",X"81",X"08",X"1D",X"1D",X"1D",X"1D",X"1D",X"1D",X"1D",X"1D",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"2C",X"2C",X"2C",X"2C",X"2C",X"2C",X"2C",X"2C",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"2A",X"2A",X"2A",X"2A",X"2A",X"2A",X"2A",X"2A",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"28",X"28",X"00",X"00",X"26",X"26",X"00",X"00",X"35",
|
||||
X"35",X"00",X"00",X"33",X"33",X"00",X"00",X"1D",X"1D",X"1D",X"1D",X"1D",X"1D",X"1D",X"1D",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"2C",X"2C",X"2C",X"2C",X"2C",X"2C",X"2C",X"2C",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"2A",X"2A",X"2A",X"2A",X"2A",X"2A",X"2A",X"2A",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"28",X"28",X"00",X"00",X"26",X"26",X"00",X"00",X"35",
|
||||
X"35",X"00",X"00",X"33",X"33",X"00",X"00",X"81",X"08",X"7E",X"7E",X"00",X"00",X"96",X"00",X"7E",
|
||||
X"7E",X"00",X"00",X"96",X"00",X"7E",X"00",X"96",X"00",X"86",X"86",X"00",X"00",X"A9",X"00",X"86",
|
||||
X"86",X"00",X"00",X"A9",X"00",X"86",X"00",X"A9",X"00",X"96",X"96",X"00",X"00",X"BD",X"00",X"96",
|
||||
X"96",X"00",X"00",X"BD",X"00",X"96",X"00",X"BD",X"00",X"A9",X"A9",X"00",X"00",X"BD",X"BD",X"00",
|
||||
X"00",X"C9",X"C9",X"00",X"00",X"E1",X"E1",X"00",X"00",X"7E",X"7E",X"00",X"00",X"96",X"00",X"7E",
|
||||
X"7E",X"00",X"00",X"96",X"00",X"7E",X"00",X"96",X"00",X"86",X"86",X"00",X"00",X"A9",X"00",X"86",
|
||||
X"86",X"00",X"00",X"A9",X"00",X"86",X"00",X"A9",X"00",X"96",X"96",X"00",X"00",X"BD",X"00",X"96",
|
||||
X"96",X"00",X"00",X"BD",X"00",X"96",X"00",X"BD",X"00",X"A9",X"A9",X"00",X"00",X"BD",X"BD",X"00",
|
||||
X"00",X"C9",X"C9",X"00",X"00",X"E1",X"E1",X"00",X"00",X"4C",X"71",X"FC",X"78",X"D8",X"A2",X"FF",
|
||||
X"9A",X"AD",X"00",X"A0",X"A9",X"00",X"8D",X"00",X"C0",X"A0",X"00",X"A2",X"00",X"B9",X"00",X"F0",
|
||||
X"95",X"00",X"C8",X"E8",X"D0",X"F7",X"B9",X"00",X"F0",X"9D",X"00",X"01",X"C8",X"E8",X"D0",X"F6",
|
||||
X"B5",X"00",X"D9",X"00",X"F0",X"D0",X"D2",X"C8",X"E8",X"D0",X"F5",X"BD",X"00",X"01",X"D9",X"00",
|
||||
X"F0",X"D0",X"7E",X"C8",X"E8",X"D0",X"F4",X"C8",X"C0",X"20",X"D0",X"CF",X"A2",X"00",X"A0",X"00",
|
||||
X"98",X"85",X"1D",X"A9",X"02",X"85",X"1E",X"BD",X"00",X"F0",X"91",X"1D",X"E8",X"C8",X"D0",X"F7",
|
||||
X"E6",X"1E",X"A5",X"1E",X"C9",X"04",X"90",X"EF",X"A9",X"00",X"85",X"1D",X"A9",X"02",X"85",X"1E",
|
||||
X"B1",X"1D",X"DD",X"00",X"F0",X"D0",X"4A",X"E8",X"C8",X"D0",X"F5",X"E6",X"1E",X"A5",X"1E",X"C9",
|
||||
X"04",X"90",X"ED",X"E8",X"E0",X"20",X"D0",X"C6",X"A2",X"00",X"BD",X"59",X"FC",X"8D",X"00",X"40",
|
||||
X"E8",X"BD",X"59",X"FC",X"8D",X"00",X"20",X"E8",X"E0",X"18",X"D0",X"EE",X"A2",X"80",X"A0",X"00",
|
||||
X"88",X"D0",X"FD",X"CA",X"D0",X"FA",X"4C",X"71",X"F0",X"00",X"66",X"01",X"01",X"02",X"1C",X"03",
|
||||
X"01",X"04",X"EF",X"05",X"00",X"07",X"F8",X"08",X"10",X"09",X"10",X"0A",X"10",X"0C",X"30",X"0D",
|
||||
X"09",X"A0",X"00",X"B9",X"92",X"FC",X"8D",X"00",X"40",X"C8",X"B9",X"92",X"FC",X"8D",X"00",X"20",
|
||||
X"C8",X"C0",X"18",X"D0",X"EE",X"A2",X"A0",X"A0",X"00",X"88",X"D0",X"FD",X"CA",X"D0",X"FA",X"4C",
|
||||
X"71",X"FC",X"00",X"CC",X"01",X"02",X"02",X"A4",X"03",X"02",X"04",X"7E",X"05",X"02",X"07",X"38",
|
||||
X"08",X"10",X"09",X"10",X"0A",X"10",X"0C",X"30",X"0D",X"09",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
|
||||
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F0",X"F0",X"BC",X"FB",X"00",X"F0");
|
||||
begin
|
||||
process(clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
data <= rom_data(to_integer(unsigned(addr)));
|
||||
end if;
|
||||
end process;
|
||||
end architecture;
|
||||
@@ -0,0 +1,257 @@
|
||||
module Treasure_Island
|
||||
(
|
||||
output LED,
|
||||
output [5:0] VGA_R,
|
||||
output [5:0] VGA_G,
|
||||
output [5:0] VGA_B,
|
||||
output VGA_HS,
|
||||
output VGA_VS,
|
||||
output AUDIO_L,
|
||||
output AUDIO_R,
|
||||
input SPI_SCK,
|
||||
output SPI_DO,
|
||||
input SPI_DI,
|
||||
input SPI_SS2,
|
||||
input SPI_SS3,
|
||||
input CONF_DATA0,
|
||||
input CLOCK_27,
|
||||
output [12:0] SDRAM_A,
|
||||
inout [15:0] SDRAM_DQ,
|
||||
output SDRAM_DQML,
|
||||
output SDRAM_DQMH,
|
||||
output SDRAM_nWE,
|
||||
output SDRAM_nCAS,
|
||||
output SDRAM_nRAS,
|
||||
output SDRAM_nCS,
|
||||
output [1:0] SDRAM_BA,
|
||||
output SDRAM_CLK,
|
||||
output SDRAM_CKE
|
||||
);
|
||||
|
||||
`include "rtl\build_id.v"
|
||||
|
||||
localparam CONF_STR = {
|
||||
"TREASURE;ROM;",
|
||||
"O2,Rotate Controls,Off,On;",
|
||||
"O34,Scanlines,Off,25%,50%,75%;",
|
||||
"O5,Blend,Off,On;",
|
||||
"T0,Reset;",
|
||||
"V,v1.0.",`BUILD_DATE
|
||||
};
|
||||
|
||||
assign LED = ~ioctl_downl;
|
||||
assign AUDIO_R = AUDIO_L;
|
||||
assign SDRAM_CLK = clk_72;
|
||||
assign SDRAM_CKE = 1;
|
||||
|
||||
wire [31:0] status;
|
||||
wire [1:0] buttons;
|
||||
wire [1:0] switches;
|
||||
wire [9:0] kbjoy;
|
||||
wire [7:0] joystick_0;
|
||||
wire [7:0] joystick_1;
|
||||
wire scandoublerD;
|
||||
wire ypbpr;
|
||||
wire key_strobe;
|
||||
wire key_pressed;
|
||||
wire [7:0] key_code;
|
||||
|
||||
wire [10:0] audio;
|
||||
|
||||
|
||||
wire hs, vs, cs;
|
||||
wire [2:0] r, g;
|
||||
wire [1:0] b;
|
||||
wire blankn;
|
||||
|
||||
|
||||
|
||||
wire clk_72, clk_12;
|
||||
wire pll_locked;
|
||||
|
||||
pll pll(
|
||||
.inclk0(CLOCK_27),
|
||||
.areset(0),
|
||||
.c0(clk_72),
|
||||
.c1(clk_12),
|
||||
.locked(pll_locked)
|
||||
);
|
||||
|
||||
wire ioctl_downl;
|
||||
wire [7:0] ioctl_index;
|
||||
wire ioctl_wr;
|
||||
wire [24:0] ioctl_addr;
|
||||
wire [7:0] ioctl_dout;
|
||||
|
||||
data_io data_io(
|
||||
.clk_sys ( clk_72 ),
|
||||
.SPI_SCK ( SPI_SCK ),
|
||||
.SPI_SS2 ( SPI_SS2 ),
|
||||
.SPI_DI ( SPI_DI ),
|
||||
.ioctl_download( ioctl_downl ),
|
||||
.ioctl_index ( ioctl_index ),
|
||||
.ioctl_wr ( ioctl_wr ),
|
||||
.ioctl_addr ( ioctl_addr ),
|
||||
.ioctl_dout ( ioctl_dout )
|
||||
);
|
||||
|
||||
reg port1_req, port2_req;
|
||||
wire [24:0] bg_ioctl_addr = ioctl_addr - 17'h10000;
|
||||
wire [14:0] prg_rom_addr;
|
||||
wire [11:0] snd_rom_addr;
|
||||
wire [15:0] prg_rom_do, snd_rom_do;
|
||||
|
||||
|
||||
wire [13:0] BGCH_A;
|
||||
wire [15:0] BGCH_D;
|
||||
sdram sdram(
|
||||
.*,
|
||||
.init_n ( pll_locked ),
|
||||
.clk ( clk_72 ),
|
||||
|
||||
// port1 used for main + aux CPU
|
||||
.port1_req ( port1_req ),
|
||||
.port1_ack ( ),
|
||||
.port1_a ( ioctl_addr[23:1] ),
|
||||
.port1_ds ( {ioctl_addr[0], ~ioctl_addr[0]} ),
|
||||
.port1_we ( ioctl_downl ),
|
||||
.port1_d ( {ioctl_dout, ioctl_dout} ),
|
||||
.port1_q ( ),
|
||||
|
||||
.cpu1_addr ( ioctl_downl ? 16'hffff : {2'b00, prg_rom_addr[14:1]} ),
|
||||
.cpu1_q ( prg_rom_do ),
|
||||
.cpu2_addr ( ioctl_downl ? 16'hffff : {snd_rom_addr[11:1] + 16'h8000} ),
|
||||
.cpu2_q ( snd_rom_do ),
|
||||
|
||||
// port2 for graphics
|
||||
.port2_req ( port2_req ),
|
||||
.port2_ack ( ),
|
||||
.port2_a ( bg_ioctl_addr[23:1] ),
|
||||
.port2_ds ( {bg_ioctl_addr[0], ~bg_ioctl_addr[0]} ),
|
||||
.port2_we ( ioctl_downl ),
|
||||
.port2_d ( {ioctl_dout, ioctl_dout} ),
|
||||
.port2_q ( ),
|
||||
|
||||
.bg_addr ( BGCH_A ),
|
||||
.bg_q ( BGCH_D )
|
||||
);
|
||||
|
||||
// ROM download controller
|
||||
always @(posedge clk_72) begin
|
||||
reg ioctl_wr_last = 0;
|
||||
|
||||
ioctl_wr_last <= ioctl_wr;
|
||||
if (ioctl_downl) begin
|
||||
if (~ioctl_wr_last && ioctl_wr) begin
|
||||
port1_req <= ~port1_req;
|
||||
port2_req <= ~port2_req;
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
reg reset = 1;
|
||||
reg rom_loaded = 0;
|
||||
always @(posedge clk_72) begin
|
||||
reg ioctl_downlD;
|
||||
ioctl_downlD <= ioctl_downl;
|
||||
if (ioctl_downlD & ~ioctl_downl) rom_loaded <= 1;
|
||||
reset <= status[0] | buttons[1] | ~rom_loaded;
|
||||
end
|
||||
|
||||
Treasure_Island_Top Treasure_Island_Top(
|
||||
.clock_12 (clk_12),
|
||||
.reset (reset),
|
||||
.video_r (r),
|
||||
.video_g (g),
|
||||
.video_b (b),
|
||||
.video_csync (cs),
|
||||
.video_blankn (blankn),
|
||||
.video_hs (hs),
|
||||
.video_vs (vs),
|
||||
.audio_out (audio),
|
||||
.P1 ({2'b11, 1'b1, m_fireA, m_down, m_up, m_left, m_right}),
|
||||
.P2 ({2'b11, 1'b1, m_fire2A, m_down2, m_up2, m_left2, m_right2}),
|
||||
.SYS ({m_coin2, m_coin1, 2'b11, 1'b1, m_tilt, m_two_players, m_one_player}),
|
||||
.DSW1 ({7'b011_1111}),
|
||||
.DSW2 ({8'b1110_1011}),
|
||||
.prg_rom_addr(prg_rom_addr),
|
||||
.prg_rom_do(prg_rom_addr[0] ? prg_rom_do[15:8] : prg_rom_do[7:0]),
|
||||
.snd_rom_addr(snd_rom_addr),
|
||||
.snd_rom_do(snd_rom_addr[0] ? snd_rom_do[15:8] : snd_rom_do[7:0]),
|
||||
.dbg_cpu_addr()
|
||||
);
|
||||
|
||||
|
||||
mist_video #(.COLOR_DEPTH(3), .SD_HCNT_WIDTH(10)) mist_video(
|
||||
.clk_sys ( clk_72 ),
|
||||
.SPI_SCK ( SPI_SCK ),
|
||||
.SPI_SS3 ( SPI_SS3 ),
|
||||
.SPI_DI ( SPI_DI ),
|
||||
.R ( blankn ? r : 0 ),
|
||||
.G ( blankn ? g : 0 ),
|
||||
.B ( blankn ? {b[1], b} : 0 ),
|
||||
.HSync ( hs ),
|
||||
.VSync ( vs ),
|
||||
.VGA_R ( VGA_R ),
|
||||
.VGA_G ( VGA_G ),
|
||||
.VGA_B ( VGA_B ),
|
||||
.VGA_VS ( VGA_VS ),
|
||||
.VGA_HS ( VGA_HS ),
|
||||
.rotate ( {1'b1,status[2]} ),
|
||||
.ce_divider ( 1'b0 ),
|
||||
.blend ( status[5] ),
|
||||
.scandoubler_disable( scandoublerD ),
|
||||
.no_csync ( 1'b0 ),
|
||||
.scanlines ( status[4:3] ),
|
||||
.ypbpr ( ypbpr )
|
||||
);
|
||||
|
||||
user_io #(
|
||||
.STRLEN(($size(CONF_STR)>>3)))
|
||||
user_io(
|
||||
.clk_sys (clk_72 ),
|
||||
.conf_str (CONF_STR ),
|
||||
.SPI_CLK (SPI_SCK ),
|
||||
.SPI_SS_IO (CONF_DATA0 ),
|
||||
.SPI_MISO (SPI_DO ),
|
||||
.SPI_MOSI (SPI_DI ),
|
||||
.buttons (buttons ),
|
||||
.switches (switches ),
|
||||
.scandoubler_disable (scandoublerD ),
|
||||
.ypbpr (ypbpr ),
|
||||
.key_strobe (key_strobe ),
|
||||
.key_pressed (key_pressed ),
|
||||
.key_code (key_code ),
|
||||
.joystick_0 (joystick_0 ),
|
||||
.joystick_1 (joystick_1 ),
|
||||
.status (status )
|
||||
);
|
||||
|
||||
dac #(.C_bits(11))dac(
|
||||
.clk_i(clk_72),
|
||||
.res_n_i(1),
|
||||
.dac_i(audio),
|
||||
.dac_o(AUDIO_L)
|
||||
);
|
||||
|
||||
wire m_up, m_down, m_left, m_right, m_fireA, m_fireB, m_fireC, m_fireD, m_fireE, m_fireF;
|
||||
wire m_up2, m_down2, m_left2, m_right2, m_fire2A, m_fire2B, m_fire2C, m_fire2D, m_fire2E, m_fire2F;
|
||||
wire m_tilt, m_coin1, m_coin2, m_coin3, m_coin4, m_one_player, m_two_players, m_three_players, m_four_players;
|
||||
|
||||
arcade_inputs inputs (
|
||||
.clk ( clk_72 ),
|
||||
.key_strobe ( key_strobe ),
|
||||
.key_pressed ( key_pressed ),
|
||||
.key_code ( key_code ),
|
||||
.joystick_0 ( joystick_0 ),
|
||||
.joystick_1 ( joystick_1 ),
|
||||
.rotate ( status[2] ),
|
||||
.orientation ( {1'b1, 1'b1}),
|
||||
.joyswap ( 1'b0 ),
|
||||
.oneplayer ( 1'b0 ),
|
||||
.controls ( {m_tilt, m_coin4, m_coin3, m_coin2, m_coin1, m_four_players, m_three_players, m_two_players, m_one_player} ),
|
||||
.player1 ( {m_fireF, m_fireE, m_fireD, m_fireC, m_fireB, m_fireA, m_up, m_down, m_left, m_right} ),
|
||||
.player2 ( {m_fire2F, m_fire2E, m_fire2D, m_fire2C, m_fire2B, m_fire2A, m_up2, m_down2, m_left2, m_right2} )
|
||||
);
|
||||
|
||||
endmodule
|
||||
@@ -0,0 +1,430 @@
|
||||
---------------------------------------------------------------------------------
|
||||
-- burger time sound by Dar (darfpga@aol.fr) (27/12/2017)
|
||||
-- http://darfpga.blogspot.fr
|
||||
---------------------------------------------------------------------------------
|
||||
-- Educational use only
|
||||
-- Do not redistribute synthetized file with roms
|
||||
-- Do not redistribute roms whatever the form
|
||||
-- Use at your own risk
|
||||
---------------------------------------------------------------------------------
|
||||
-- gen_ram.vhd & io_ps2_keyboard
|
||||
--------------------------------
|
||||
-- Copyright 2005-2008 by Peter Wendrich (pwsoft@syntiac.com)
|
||||
-- http://www.syntiac.com/fpga64.html
|
||||
---------------------------------------------------------------------------------
|
||||
-- T65(b) core.Ver 301 by MikeJ March 2005
|
||||
-- Latest version from www.fpgaarcade.com (original www.opencores.org)
|
||||
---------------------------------------------------------------------------------
|
||||
-- YM2149 (AY-3-8910)
|
||||
-- Copyright (c) MikeJ - Jan 2005
|
||||
---------------------------------------------------------------------------------
|
||||
-- Use burger_time_de10_lite.sdc to compile (Timequest constraints)
|
||||
-- /!\
|
||||
-- Don't forget to set device configuration mode with memory initialization
|
||||
-- (Assignments/Device/Pin options/Configuration mode)
|
||||
---------------------------------------------------------------------------------
|
||||
---------------------------------------------------------------------------------
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.ALL;
|
||||
use ieee.std_logic_unsigned.all;
|
||||
use ieee.numeric_std.all;
|
||||
|
||||
entity Treasure_Island_Sound is
|
||||
port
|
||||
(
|
||||
clock_12 : in std_logic;
|
||||
reset : in std_logic;
|
||||
|
||||
sound_req : in std_logic;
|
||||
sound_code_in : in std_logic_vector(7 downto 0);
|
||||
sound_timing : in std_logic;
|
||||
|
||||
audio_out : out std_logic_vector(10 downto 0);
|
||||
snd_rom_addr : out std_logic_vector(11 downto 0);
|
||||
snd_rom_do : in std_logic_vector(7 downto 0);
|
||||
dbg_cpu_addr: out std_logic_vector(15 downto 0)
|
||||
);
|
||||
end Treasure_Island_Sound;
|
||||
|
||||
architecture syn of Treasure_Island_Sound is
|
||||
|
||||
-- clocks, reset
|
||||
signal clock_12n : std_logic;
|
||||
signal clock_div1 : std_logic_vector(8 downto 0) := (others =>'0');
|
||||
signal clock_div2 : std_logic_vector(4 downto 0) := (others =>'0');
|
||||
signal clock_500K : std_logic;
|
||||
signal ayx_clock : std_logic;
|
||||
signal reset_n : std_logic;
|
||||
|
||||
-- cpu signals
|
||||
signal cpu_addr : std_logic_vector(23 downto 0);
|
||||
signal cpu_di : std_logic_vector( 7 downto 0);
|
||||
signal cpu_di_dec : std_logic_vector( 7 downto 0);
|
||||
signal cpu_do : std_logic_vector( 7 downto 0);
|
||||
signal cpu_rw_n : std_logic;
|
||||
signal cpu_nmi_n : std_logic;
|
||||
signal cpu_irq_n : std_logic;
|
||||
signal cpu_sync : std_logic;
|
||||
|
||||
-- program rom signals
|
||||
signal prog_rom_cs : std_logic;
|
||||
signal prog_rom_do : std_logic_vector(7 downto 0);
|
||||
|
||||
-- working ram signals
|
||||
signal wram_cs : std_logic;
|
||||
signal wram_we : std_logic;
|
||||
signal wram_do : std_logic_vector(7 downto 0);
|
||||
|
||||
-- sound req management
|
||||
signal nmi_reg : std_logic;
|
||||
signal nmi_reg_cs : std_logic;
|
||||
signal nmi_reg_we : std_logic;
|
||||
signal sound_code : std_logic_vector(7 downto 0);
|
||||
signal sound_code_cs : std_logic;
|
||||
|
||||
-- ay-3-8910 signal
|
||||
signal ay1_bc1 : std_logic;
|
||||
signal ay1_bdir : std_logic;
|
||||
signal ay1_audio_chan : std_logic_vector(1 downto 0);
|
||||
signal ay1_audio_muxed: std_logic_vector(7 downto 0);
|
||||
signal ay1_chan_a: std_logic_vector(7 downto 0);
|
||||
signal ay1_chan_b: std_logic_vector(7 downto 0);
|
||||
signal ay1_chan_c: std_logic_vector(7 downto 0);
|
||||
|
||||
signal ay2_bc1 : std_logic;
|
||||
signal ay2_bdir : std_logic;
|
||||
signal ay2_audio_chan : std_logic_vector(1 downto 0);
|
||||
signal ay2_audio_muxed: std_logic_vector(7 downto 0);
|
||||
signal ay2_chan_a: std_logic_vector(7 downto 0);
|
||||
signal ay2_chan_b: std_logic_vector(7 downto 0);
|
||||
signal ay2_chan_c: std_logic_vector(7 downto 0);
|
||||
|
||||
-- digital filtering AY2 channel A
|
||||
signal uin : integer range -256 to 255;
|
||||
signal u3 : integer range -32768 to 32767;
|
||||
signal u4 : integer range -32768 to 32767;
|
||||
signal du3 : integer range -32768*4096 to 32767*4096;
|
||||
signal du4 : integer range -32768*4096 to 32767*4096;
|
||||
signal uout : integer range -32768 to 32767;
|
||||
signal uout_lim : integer range -128 to 127;
|
||||
|
||||
begin
|
||||
|
||||
process (clock_12, cpu_sync)
|
||||
begin
|
||||
if rising_edge(clock_12) then
|
||||
if cpu_sync = '1' then
|
||||
dbg_cpu_addr <= cpu_addr(15 downto 0);
|
||||
end if;
|
||||
end if;
|
||||
end process;
|
||||
|
||||
reset_n <= not reset;
|
||||
clock_12n <= not clock_12;
|
||||
|
||||
process (clock_12, reset)
|
||||
begin
|
||||
if reset='1' then
|
||||
clock_div1 <= (others => '0');
|
||||
clock_div2 <= (others => '0');
|
||||
else
|
||||
if rising_edge(clock_12) then
|
||||
if clock_div1 = "111111111" then -- divide by 512 (23.437kHz)
|
||||
clock_div1 <= "000000000";
|
||||
else
|
||||
clock_div1 <= clock_div1 + '1';
|
||||
end if;
|
||||
if clock_div2 = "10111" then -- divide by 24
|
||||
clock_div2 <= "00000";
|
||||
else
|
||||
clock_div2 <= clock_div2 + '1';
|
||||
end if;
|
||||
end if;
|
||||
end if;
|
||||
end process;
|
||||
|
||||
clock_500K <= clock_div2(4); --12MHz/24 = 500kHz
|
||||
ayx_clock <= clock_div1(2); --12MHz/8 = 1.5MHz
|
||||
|
||||
--static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, btime_state )
|
||||
-- AM_RANGE(0x0000, 0x03ff) AM_MIRROR(0x1c00) AM_RAM AM_SHARE("audio_rambase")
|
||||
-- AM_RANGE(0x2000, 0x3fff) AM_DEVWRITE("ay1", ay8910_device, data_w)
|
||||
-- AM_RANGE(0x4000, 0x5fff) AM_DEVWRITE("ay1", ay8910_device, address_w)
|
||||
-- AM_RANGE(0x6000, 0x7fff) AM_DEVWRITE("ay2", ay8910_device, data_w)
|
||||
-- AM_RANGE(0x8000, 0x9fff) AM_DEVWRITE("ay2", ay8910_device, address_w)
|
||||
-- AM_RANGE(0xa000, 0xbfff) AM_READ(audio_command_r)
|
||||
-- AM_RANGE(0xc000, 0xdfff) AM_WRITE(audio_nmi_enable_w)
|
||||
-- AM_RANGE(0xe000, 0xefff) AM_MIRROR(0x1000) AM_ROM
|
||||
--ADDRESS_MAP_END
|
||||
|
||||
-- chip select
|
||||
wram_cs <= '1' when cpu_addr(15 downto 13) = "000" else '0'; -- working ram 0000-07ff .. 1fff
|
||||
ay1_bc1 <= '1' when cpu_addr(15 downto 13) = "010" else '0';
|
||||
ay1_bdir <= '1' when cpu_addr(15 downto 13) = "001" or ay1_bc1 = '1' else '0';
|
||||
ay2_bc1 <= '1' when cpu_addr(15 downto 13) = "100" else '0';
|
||||
ay2_bdir <= '1' when cpu_addr(15 downto 13) = "011" or ay2_bc1 = '1' else '0';
|
||||
sound_code_cs <= '1' when cpu_addr(15 downto 13) = "101" else '0';
|
||||
nmi_reg_cs <= '1' when cpu_addr(15 downto 13) = "110" else '0';
|
||||
prog_rom_cs <= '1' when cpu_addr(15 downto 13) = "111" else '0';
|
||||
|
||||
-- write enable
|
||||
wram_we <= '1' when wram_cs = '1' and cpu_rw_n = '0' else '0';
|
||||
nmi_reg_we <= '1' when nmi_reg_cs = '1' and cpu_rw_n = '0' else '0';
|
||||
|
||||
-- cpu di mux
|
||||
cpu_di <= wram_do when wram_cs = '1' else
|
||||
prog_rom_do when prog_rom_cs = '1' else
|
||||
sound_code when sound_code_cs = '1' else
|
||||
X"FF";
|
||||
|
||||
-- regsiter sound code and irq management
|
||||
process (clock_12)
|
||||
begin
|
||||
if rising_edge(clock_12) then
|
||||
if sound_req = '1' then
|
||||
sound_code <= sound_code_in;
|
||||
cpu_irq_n <= '0';
|
||||
end if;
|
||||
if sound_code_cs = '1' then
|
||||
cpu_irq_n <= '1';
|
||||
end if;
|
||||
end if;
|
||||
end process;
|
||||
|
||||
-- nmi autorisation management
|
||||
process (reset, clock_12)
|
||||
begin
|
||||
if reset = '1' then
|
||||
nmi_reg <= '0';
|
||||
else
|
||||
if rising_edge(clock_12) then
|
||||
if nmi_reg_we = '1' then
|
||||
nmi_reg <= cpu_do(0);
|
||||
end if;
|
||||
end if;
|
||||
end if;
|
||||
end process;
|
||||
|
||||
-- nmi
|
||||
cpu_nmi_n <= '0' when nmi_reg = '1' and sound_timing = '1' else '1';
|
||||
|
||||
-- demux AY chips output
|
||||
process (ayx_clock)
|
||||
begin
|
||||
if rising_edge(ayx_clock) then
|
||||
if ay1_audio_chan = "00" then ay1_chan_a <= ay1_audio_muxed; end if;
|
||||
if ay1_audio_chan = "01" then ay1_chan_b <= ay1_audio_muxed; end if;
|
||||
if ay1_audio_chan = "10" then ay1_chan_c <= ay1_audio_muxed; end if;
|
||||
if ay2_audio_chan = "00" then ay2_chan_a <= ay2_audio_muxed; end if;
|
||||
if ay2_audio_chan = "01" then ay2_chan_b <= ay2_audio_muxed; end if;
|
||||
if ay2_audio_chan = "10" then ay2_chan_c <= ay2_audio_muxed; end if;
|
||||
end if;
|
||||
end process;
|
||||
|
||||
-- AOP Rauch passe bande filter
|
||||
--
|
||||
-- ----------o------------
|
||||
-- u4^ | | |
|
||||
-- | --- C4 | | R5 |
|
||||
-- | --- | | |
|
||||
-- | | C3 | |
|
||||
-- --| R1 |----o----||---o------|\ |
|
||||
-- ^ | ------> u3 | \__o---
|
||||
-- | | | / ^
|
||||
-- |uin | | R2 --|/ |
|
||||
-- | | | | | uout
|
||||
-- | | | |
|
||||
-- ------------o--------------o----------
|
||||
--
|
||||
--
|
||||
-- i1 = (sin+u3)/R1
|
||||
-- i2 = -u3/R2
|
||||
-- i3 = (u4-u3)/R5
|
||||
-- i4 = i2-i1-i3
|
||||
--
|
||||
-- u3(t+dt) = u3(t) + i3(t)*dt/C3;
|
||||
-- u4(t+dt) = u4(t) + i4(t)*dt/C4;
|
||||
|
||||
-- uout = u4-u3
|
||||
|
||||
-- R1 = 5000;
|
||||
-- R2 = 10000;
|
||||
-- C3 = 0.068e-6;
|
||||
-- C4 = 0.068e-6;
|
||||
-- R5 = 47000;
|
||||
--
|
||||
-- dt = 1/f_ech = 1/23437
|
||||
-- dt/C3 = dt/C4 = 627
|
||||
--
|
||||
-- (i3(t)*dt/C3)*8192 = du3*8192 = ((u4-u3)/47000*627)*8192
|
||||
-- = (u4-u3)*109
|
||||
--
|
||||
-- (i4(t)*dt/C4)*8192 = du4*8192 = (-u3/10000 -(uin+u3)/5000 -(u4-u3)/47000)*627*8192
|
||||
-- = -u3(514+1027-109) - uin*1027 - u4*109
|
||||
-- = -(u4*109 + u3*1432 + uin*1027)
|
||||
--
|
||||
|
||||
-- down sample to 23.437kHz and filter AY2 channel A
|
||||
uin <= to_integer(unsigned(ay2_chan_a));
|
||||
|
||||
process (clock_12)
|
||||
begin
|
||||
if rising_edge(clock_12) then
|
||||
|
||||
if clock_div1 = "000000000" then
|
||||
du3 <= u4*109 - u3*109;
|
||||
du4 <= u4*109 + u3*1432 + uin*1027*16; -- add gain(16) to uin
|
||||
end if;
|
||||
|
||||
if clock_div1 = "000000001" then
|
||||
u3 <= u3 + du3/8192;
|
||||
u4 <= u4 - du4/8192;
|
||||
end if;
|
||||
|
||||
if clock_div1 = "000000010" then
|
||||
uout <= (u4 - u3) / 8; -- adjust output gain
|
||||
end if;
|
||||
|
||||
-- limit signed dynamique before return to unsigned
|
||||
if clock_div1 = "000000011" then
|
||||
if uout > 127 then
|
||||
uout_lim <= 127;
|
||||
elsif uout < -127 then
|
||||
uout_lim <= -127;
|
||||
else
|
||||
uout_lim <= uout;
|
||||
end if;
|
||||
end if;
|
||||
|
||||
if clock_div1 = "000000100" then
|
||||
|
||||
audio_out <= ("000"&ay1_chan_a(7 downto 0)) +
|
||||
("000"&ay1_chan_b(7 downto 0)) +
|
||||
("000"&ay1_chan_c(7 downto 0)) +
|
||||
("000"&std_logic_vector(to_unsigned(uout_lim+128,8)))+
|
||||
("000"&ay2_chan_b(7 downto 0)) +
|
||||
("000"&ay2_chan_c(7 downto 0));
|
||||
end if;
|
||||
|
||||
end if;
|
||||
end process;
|
||||
|
||||
---------------------------
|
||||
-- components
|
||||
---------------------------
|
||||
|
||||
cpu_inst : entity work.T65
|
||||
port map
|
||||
(
|
||||
Mode => "00", -- 6502
|
||||
Res_n => reset_n,
|
||||
Enable => '1',
|
||||
Clk => clock_500K,
|
||||
Rdy => '1',
|
||||
Abort_n => '1',
|
||||
IRQ_n => cpu_irq_n,
|
||||
NMI_n => cpu_nmi_n,
|
||||
SO_n => '1',--cpu_so_n,
|
||||
R_W_n => cpu_rw_n,
|
||||
Sync => cpu_sync, -- open
|
||||
EF => open,
|
||||
MF => open,
|
||||
XF => open,
|
||||
ML_n => open,
|
||||
VP_n => open,
|
||||
VDA => open,
|
||||
VPA => open,
|
||||
A => cpu_addr,
|
||||
DI => cpu_di,
|
||||
DO => cpu_do
|
||||
);
|
||||
|
||||
|
||||
-- working ram
|
||||
wram : entity work.gen_ram
|
||||
generic map( dWidth => 8, aWidth => 11)
|
||||
port map(
|
||||
clk => clock_12n,
|
||||
we => wram_we,
|
||||
addr => cpu_addr(10 downto 0),
|
||||
d => cpu_do,
|
||||
q => wram_do
|
||||
);
|
||||
|
||||
-- program rom
|
||||
program_rom: entity work.sound_prog
|
||||
port map(
|
||||
clk => clock_12n,
|
||||
addr => cpu_addr(11 downto 0),
|
||||
data => prog_rom_do
|
||||
);
|
||||
|
||||
--snd_rom_addr <= cpu_addr(11 downto 0);
|
||||
--prog_rom_do <= snd_rom_do;
|
||||
|
||||
-- AY-3-8910 #1
|
||||
ay_3_8910_1 : entity work.YM2149
|
||||
port map(
|
||||
-- data bus
|
||||
I_DA => cpu_do, -- in std_logic_vector(7 downto 0);
|
||||
O_DA => open, -- out std_logic_vector(7 downto 0);
|
||||
O_DA_OE_L => open, -- out std_logic;
|
||||
-- control
|
||||
I_A9_L => '0', -- in std_logic;
|
||||
I_A8 => '1', -- in std_logic;
|
||||
I_BDIR => ay1_bdir, -- in std_logic;
|
||||
I_BC2 => '1', -- in std_logic;
|
||||
I_BC1 => ay1_bc1, -- in std_logic;
|
||||
I_SEL_L => '1', -- in std_logic;
|
||||
|
||||
O_AUDIO => ay1_audio_muxed, -- out std_logic_vector(7 downto 0);
|
||||
O_CHAN => ay1_audio_chan, -- out std_logic_vector(1 downto 0);
|
||||
|
||||
-- port a
|
||||
I_IOA => X"00", -- in std_logic_vector(7 downto 0);
|
||||
O_IOA => open, -- out std_logic_vector(7 downto 0);
|
||||
O_IOA_OE_L => open, -- out std_logic;
|
||||
-- port b
|
||||
I_IOB => X"00", -- in std_logic_vector(7 downto 0);
|
||||
O_IOB => open, -- out std_logic_vector(7 downto 0);
|
||||
O_IOB_OE_L => open, -- out std_logic;
|
||||
|
||||
ENA => '1', -- in std_logic; -- clock enable for higher speed operation
|
||||
RESET_L => reset_n, -- in std_logic;
|
||||
CLK => ayx_clock -- in std_logic -- note 6 Mhz
|
||||
);
|
||||
|
||||
-- AY-3-8910 #2
|
||||
ay_3_8910_2 : entity work.YM2149
|
||||
port map(
|
||||
-- data bus
|
||||
I_DA => cpu_do, -- in std_logic_vector(7 downto 0);
|
||||
O_DA => open, -- out std_logic_vector(7 downto 0);
|
||||
O_DA_OE_L => open, -- out std_logic;
|
||||
-- control
|
||||
I_A9_L => '0', -- in std_logic;
|
||||
I_A8 => '1', -- in std_logic;
|
||||
I_BDIR => ay2_bdir, -- in std_logic;
|
||||
I_BC2 => '1', -- in std_logic;
|
||||
I_BC1 => ay2_bc1, -- in std_logic;
|
||||
I_SEL_L => '1', -- in std_logic;
|
||||
|
||||
O_AUDIO => ay2_audio_muxed, -- out std_logic_vector(7 downto 0);
|
||||
O_CHAN => ay2_audio_chan, -- out std_logic_vector(1 downto 0);
|
||||
|
||||
-- port a
|
||||
I_IOA => (others => '0'), -- in std_logic_vector(7 downto 0);
|
||||
O_IOA => open, -- out std_logic_vector(7 downto 0);
|
||||
O_IOA_OE_L => open, -- out std_logic;
|
||||
-- port b
|
||||
I_IOB => (others => '0'), -- in std_logic_vector(7 downto 0);
|
||||
O_IOB => open, -- out std_logic_vector(7 downto 0);
|
||||
O_IOB_OE_L => open, -- out std_logic;
|
||||
|
||||
ENA => '1', --cpu_ena, -- in std_logic; -- clock enable for higher speed operation
|
||||
RESET_L => reset_n, -- in std_logic;
|
||||
CLK => ayx_clock -- in std_logic -- note 6 Mhz
|
||||
);
|
||||
|
||||
|
||||
end SYN;
|
||||
@@ -0,0 +1,750 @@
|
||||
---------------------------------------------------------------------------------
|
||||
-- burger time by Dar (darfpga@aol.fr) (27/12/2017)
|
||||
-- http://darfpga.blogspot.fr
|
||||
---------------------------------------------------------------------------------
|
||||
-- Educational use only
|
||||
-- Do not redistribute synthetized file with roms
|
||||
-- Do not redistribute roms whatever the form
|
||||
-- Use at your own risk
|
||||
---------------------------------------------------------------------------------
|
||||
-- gen_ram.vhd & io_ps2_keyboard
|
||||
--------------------------------
|
||||
-- Copyright 2005-2008 by Peter Wendrich (pwsoft@syntiac.com)
|
||||
-- http://www.syntiac.com/fpga64.html
|
||||
---------------------------------------------------------------------------------
|
||||
-- T65(b) core.Ver 301 by MikeJ March 2005
|
||||
-- Latest version from www.fpgaarcade.com (original www.opencores.org)
|
||||
---------------------------------------------------------------------------------
|
||||
-- YM2149 (AY-3-8910)
|
||||
-- Copyright (c) MikeJ - Jan 2005
|
||||
---------------------------------------------------------------------------------
|
||||
-- Use burger_timer_de10_lite.sdc to compile (Timequest constraints)
|
||||
-- /!\
|
||||
-- Don't forget to set device configuration mode with memory initialization
|
||||
-- (Assignments/Device/Pin options/Configuration mode)
|
||||
---------------------------------------------------------------------------------
|
||||
---------------------------------------------------------------------------------
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.ALL;
|
||||
use ieee.std_logic_unsigned.all;
|
||||
use ieee.numeric_std.all;
|
||||
|
||||
entity Treasure_Island_Top is
|
||||
port
|
||||
(
|
||||
clock_12 : in std_logic;
|
||||
reset : in std_logic;
|
||||
|
||||
video_r : out std_logic_vector(2 downto 0);
|
||||
video_g : out std_logic_vector(2 downto 0);
|
||||
video_b : out std_logic_vector(1 downto 0);
|
||||
|
||||
video_hs : out std_logic;
|
||||
video_vs : out std_logic;
|
||||
video_blankn : out std_logic;
|
||||
video_csync : out std_logic;
|
||||
|
||||
audio_out : out std_logic_vector(10 downto 0);
|
||||
P1 : in std_logic_vector(7 downto 0);
|
||||
P2 : in std_logic_vector(7 downto 0);
|
||||
SYS : in std_logic_vector(7 downto 0);
|
||||
DSW1 : in std_logic_vector(6 downto 0);
|
||||
DSW2 : in std_logic_vector(7 downto 0);
|
||||
prg_rom_addr : out std_logic_vector(14 downto 0);
|
||||
prg_rom_do : in std_logic_vector(7 downto 0);
|
||||
snd_rom_addr : out std_logic_vector(11 downto 0);
|
||||
snd_rom_do : in std_logic_vector(7 downto 0);
|
||||
dbg_cpu_addr : out std_logic_vector(15 downto 0)
|
||||
);
|
||||
end Treasure_Island_Top;
|
||||
|
||||
architecture syn of Treasure_Island_Top is
|
||||
|
||||
-- clocks, reset
|
||||
signal clock_12n : std_logic;
|
||||
signal clock_6 : std_logic := '0';
|
||||
signal reset_n : std_logic;
|
||||
|
||||
-- cpu signals
|
||||
signal cpu_addr : std_logic_vector(23 downto 0);
|
||||
signal cpu_di : std_logic_vector( 7 downto 0);
|
||||
signal cpu_di_dec : std_logic_vector( 7 downto 0);
|
||||
signal cpu_do : std_logic_vector( 7 downto 0);
|
||||
signal cpu_rw_n : std_logic;
|
||||
signal cpu_nmi_n : std_logic;
|
||||
signal cpu_sync : std_logic;
|
||||
signal cpu_ena : std_logic;
|
||||
signal had_written : std_logic := '0';
|
||||
signal decrypt : std_logic;
|
||||
|
||||
-- program rom signals
|
||||
signal prog_rom_cs : std_logic;
|
||||
signal prog_rom_do : std_logic_vector(7 downto 0);
|
||||
|
||||
-- working ram signals
|
||||
signal wram_cs : std_logic;
|
||||
signal wram_we : std_logic;
|
||||
signal wram_do : std_logic_vector(7 downto 0);
|
||||
|
||||
-- foreground ram signals
|
||||
signal fg_ram_cs : std_logic;
|
||||
signal fg_ram_low_we : std_logic;
|
||||
signal fg_ram_high_we : std_logic;
|
||||
signal fg_ram_addr_sel : std_logic_vector(1 downto 0);
|
||||
signal fg_ram_addr : std_logic_vector(9 downto 0);
|
||||
signal fg_ram_low_do : std_logic_vector(7 downto 0);
|
||||
signal fg_ram_high_do : std_logic_vector(1 downto 0);
|
||||
|
||||
|
||||
-- video scan counter
|
||||
signal hcnt : std_logic_vector(8 downto 0);
|
||||
signal vcnt : std_logic_vector(8 downto 0);
|
||||
signal hsync0 : std_logic;
|
||||
signal hsync1 : std_logic;
|
||||
signal hsync2 : std_logic;
|
||||
signal csync : std_logic;
|
||||
signal hblank : std_logic;
|
||||
signal vblank : std_logic;
|
||||
|
||||
signal hcnt_flip : std_logic_vector(8 downto 0);
|
||||
signal vcnt_flip : std_logic_vector(8 downto 0);
|
||||
signal cocktail_we : std_logic;
|
||||
signal cocktail_flip : std_logic := '0';
|
||||
signal hcnt8_r : std_logic;
|
||||
signal hcnt8_rr : std_logic;
|
||||
|
||||
-- io
|
||||
signal io_cs : std_logic;
|
||||
signal dip_sw1 : std_logic_vector(7 downto 0);
|
||||
signal dip_sw2 : std_logic_vector(7 downto 0);
|
||||
signal btn_p1 : std_logic_vector(7 downto 0);
|
||||
signal btn_p2 : std_logic_vector(7 downto 0);
|
||||
signal btn_system : std_logic_vector(7 downto 0);
|
||||
|
||||
-- foreground and sprite graphix
|
||||
signal sprite_attr : std_logic_vector( 2 downto 0);
|
||||
signal sprite_tile : std_logic_vector( 7 downto 0);
|
||||
signal sprite_line : std_logic_vector( 7 downto 0);
|
||||
signal sprite_buffer_addr : std_logic_vector( 7 downto 0);
|
||||
signal sprite_buffer_addr_flip : std_logic_vector( 7 downto 0);
|
||||
signal sprite_buffer_di : std_logic_vector( 2 downto 0);
|
||||
signal sprite_buffer_do : std_logic_vector( 2 downto 0);
|
||||
signal fg_grphx_addr : std_logic_vector(12 downto 0);
|
||||
signal fg_grphx_addr_early : std_logic_vector(12 downto 0);
|
||||
signal fg_grphx_1_do : std_logic_vector( 7 downto 0);
|
||||
signal fg_grphx_2_do : std_logic_vector( 7 downto 0);
|
||||
signal fg_grphx_3_do : std_logic_vector( 7 downto 0);
|
||||
signal fg_sp_grphx_1 : std_logic_vector( 7 downto 0);
|
||||
signal fg_sp_grphx_2 : std_logic_vector( 7 downto 0);
|
||||
signal fg_sp_grphx_3 : std_logic_vector( 7 downto 0);
|
||||
signal display_tile : std_logic;
|
||||
signal fg_low_priority : std_logic;
|
||||
signal fg_sp_bits : std_logic_vector( 2 downto 0);
|
||||
signal sp_bits_out : std_logic_vector( 2 downto 0);
|
||||
signal fg_bits : std_logic_vector( 2 downto 0);
|
||||
|
||||
-- color palette
|
||||
signal palette_addr : std_logic_vector(3 downto 0);
|
||||
signal palette_cs : std_logic;
|
||||
signal palette_we : std_logic;
|
||||
signal palette_do : std_logic_vector(7 downto 0);
|
||||
|
||||
-- background map rom
|
||||
signal bg_map_addr : std_logic_vector(11 downto 0);
|
||||
signal bg_map_do : std_logic_vector(7 downto 0);
|
||||
|
||||
-- background control
|
||||
signal scroll1_we : std_logic;
|
||||
signal scroll1 : std_logic_vector(4 downto 0);
|
||||
signal scroll2_we : std_logic;
|
||||
signal scroll2 : std_logic_vector(7 downto 0);
|
||||
|
||||
signal bg_hcnt : std_logic_vector( 7 downto 0);
|
||||
signal bg_scan_hcnt : std_logic_vector( 9 downto 0);
|
||||
signal bg_scan_addr : std_logic_vector( 9 downto 0);
|
||||
signal bg_grphx_addr : std_logic_vector(10 downto 0);
|
||||
signal bg_grphx_1_do : std_logic_vector( 7 downto 0);
|
||||
signal bg_grphx_2_do : std_logic_vector( 7 downto 0);
|
||||
signal bg_grphx_3_do : std_logic_vector( 7 downto 0);
|
||||
signal bg_grphx_1 : std_logic_vector( 7 downto 0);
|
||||
signal bg_grphx_2 : std_logic_vector( 7 downto 0);
|
||||
signal bg_grphx_3 : std_logic_vector( 7 downto 0);
|
||||
signal bg_bits : std_logic_vector( 2 downto 0);
|
||||
|
||||
-- misc
|
||||
signal raz_nmi_we : std_logic;
|
||||
signal coin1_r : std_logic;
|
||||
signal sound_req : std_logic;
|
||||
|
||||
begin
|
||||
|
||||
--process (clock_12, cpu_sync)
|
||||
--begin
|
||||
-- if rising_edge(clock_12) then
|
||||
-- if cpu_sync = '1' then
|
||||
-- dbg_cpu_addr <= cpu_addr(15 downto 0);
|
||||
-- end if;
|
||||
-- end if;
|
||||
--end process;
|
||||
|
||||
reset_n <= not reset;
|
||||
clock_12n <= not clock_12;
|
||||
|
||||
process (clock_12, reset)
|
||||
begin
|
||||
if reset='1' then
|
||||
clock_6 <= '0';
|
||||
else
|
||||
if rising_edge(clock_12) then
|
||||
clock_6 <= not clock_6;
|
||||
end if;
|
||||
end if;
|
||||
end process;
|
||||
|
||||
-------------------
|
||||
-- Video scanner --
|
||||
-------------------
|
||||
|
||||
-- make hcnt and vcnt video scanner (from schematics !)
|
||||
--
|
||||
-- hcnt [0..255,256..383] => 384 pixels, 384/6Mhz => 1 line is 64us (15.625KHz)
|
||||
-- vcnt [8..255,256..279] => 272 lines, 1 frame is 272 x 64us = 17.41ms (57.44Hz)
|
||||
|
||||
process (reset, clock_12, clock_6)
|
||||
begin
|
||||
if reset='1' then
|
||||
hcnt <= (others => '0');
|
||||
vcnt <= (others => '0');
|
||||
else
|
||||
if rising_edge(clock_12) and clock_6 = '1' then
|
||||
hcnt <= hcnt + '1';
|
||||
if hcnt = 383 then
|
||||
hcnt <= (others => '0');
|
||||
if vcnt = 260 then -- total should be 272 from Bump&Jump schematics !
|
||||
vcnt <= (others => '0');
|
||||
else
|
||||
vcnt <= vcnt + '1';
|
||||
end if;
|
||||
end if;
|
||||
end if;
|
||||
|
||||
end if;
|
||||
end process;
|
||||
|
||||
hcnt_flip <= hcnt when cocktail_flip = '0' else not hcnt;
|
||||
vcnt_flip <= not vcnt when cocktail_flip = '0' else vcnt;
|
||||
dip_sw1 <= not vblank & DSW1;
|
||||
dip_sw2 <= not DSW2;
|
||||
btn_p1 <= not P1;
|
||||
btn_p2 <= not P2;
|
||||
btn_system <= not SYS;
|
||||
|
||||
-- misc (coin, nmi, cocktail)
|
||||
process (reset,clock_12)
|
||||
begin
|
||||
if reset = '1' then
|
||||
cpu_nmi_n <= '1';
|
||||
had_written <='0';
|
||||
cocktail_flip <= '0';
|
||||
else
|
||||
if rising_edge(clock_12)then
|
||||
coin1_r <= btn_system(6);
|
||||
if coin1_r = '0' and btn_system(6) = '1' then
|
||||
cpu_nmi_n <= '0';
|
||||
end if;
|
||||
if raz_nmi_we = '1' then
|
||||
cpu_nmi_n <= '1';
|
||||
end if;
|
||||
if cpu_ena = '1' then
|
||||
if cpu_rw_n = '0' then
|
||||
had_written <= '1';
|
||||
elsif cpu_sync = '1' then
|
||||
had_written <= '0';
|
||||
end if;
|
||||
end if;
|
||||
if cocktail_we = '1' then
|
||||
cocktail_flip <= dip_sw1(6) and cpu_do(0);
|
||||
end if;
|
||||
end if;
|
||||
end if;
|
||||
end process;
|
||||
|
||||
|
||||
cpu_ena <= '1' when hcnt(2 downto 0) = "111" and clock_6 = '1' else '0';
|
||||
|
||||
-- chip select
|
||||
wram_cs <= '1' when cpu_addr(15 downto 11) = "00000" else '0'; -- working ram 0000-07ff
|
||||
io_cs <= '1' when cpu_addr(15 downto 3) = "0100000000000" else '0'; -- player/dip_sw 4000-4007 (4004)
|
||||
fg_ram_cs <= '1' when cpu_addr(15 downto 12) = "0001" else '0'; -- foreground ram 1000-1fff
|
||||
palette_cs <= '1' when cpu_addr(15 downto 4) = "000011000000" else '0'; -- palette ram 0c00-0c0f
|
||||
prog_rom_cs <= '1' when cpu_addr(15) = '1' else '0'; -- program rom 9000-ffff
|
||||
|
||||
-- write enable
|
||||
wram_we <= '1' when wram_cs = '1' and cpu_rw_n = '0' and cpu_ena = '1' else '0'; -- 0000-07ff
|
||||
raz_nmi_we <= '1' when io_cs = '1' and cpu_addr(2 downto 0) = "000" and cpu_rw_n = '0' and cpu_ena = '1' else '0'; -- 4000
|
||||
scroll1_we <= '1' when io_cs = '1' and cpu_addr(2 downto 0) = "100" and cpu_rw_n = '0' and cpu_ena = '1' else '0'; -- 4004
|
||||
scroll2_we <= '1' when io_cs = '1' and cpu_addr(2 downto 0) = "101" and cpu_rw_n = '0' and cpu_ena = '1' else '0'; -- 4005
|
||||
cocktail_we <= '1' when io_cs = '1' and cpu_addr(2 downto 0) = "010" and cpu_rw_n = '0' and cpu_ena = '1' else '0'; -- 4002
|
||||
sound_req <= '1' when io_cs = '1' and cpu_addr(2 downto 0) = "011" and cpu_rw_n = '0' else '0'; -- 4003
|
||||
fg_ram_low_we <= '1' when fg_ram_cs = '1' and cpu_addr(10) = '0' and cpu_rw_n = '0' and cpu_ena = '1' else '0'; -- 1000-13ff & 1800-4bff
|
||||
fg_ram_high_we <= '1' when fg_ram_cs = '1' and cpu_addr(10) = '1' and cpu_rw_n = '0' and cpu_ena = '1' else '0'; -- 1400-17ff & 1c00-4fff
|
||||
palette_we <= '1' when palette_cs = '1' and cpu_rw_n = '0' and cpu_ena = '1' else '0'; -- 0c00-0c0f
|
||||
|
||||
-- cpu di mux
|
||||
cpu_di <= wram_do when wram_cs = '1' else
|
||||
prog_rom_do when prog_rom_cs = '1' else
|
||||
dip_sw1 when (io_cs = '1') and (cpu_addr(2 downto 0) = "011") else
|
||||
dip_sw2 when (io_cs = '1') and (cpu_addr(2 downto 0) = "100") else
|
||||
btn_p1 when (io_cs = '1') and (cpu_addr(2 downto 0) = "000") else
|
||||
btn_p2 when (io_cs = '1') and (cpu_addr(2 downto 0) = "001") else
|
||||
btn_system when (io_cs = '1') and (cpu_addr(2 downto 0) = "010") else
|
||||
fg_ram_low_do when (fg_ram_cs = '1') and (cpu_addr(10) = '0') else
|
||||
"000000"&fg_ram_high_do when (fg_ram_cs = '1') and (cpu_addr(10) = '1') else
|
||||
X"FF";
|
||||
|
||||
-- decrypt fetched instruction
|
||||
decrypt <= '1' when ((cpu_addr(15 downto 0) and X"0104") = X"0104") and (cpu_sync = '1') and (had_written = '1') else '0';
|
||||
cpu_di_dec <= cpu_di when decrypt = '0' else
|
||||
cpu_di(6) & cpu_di(5) & cpu_di(3) & cpu_di(4) & cpu_di(2) & cpu_di(7) & cpu_di(1 downto 0);
|
||||
|
||||
----------------------------
|
||||
-- foreground and sprites --
|
||||
----------------------------
|
||||
|
||||
-- foreground ram addr
|
||||
fg_ram_addr_sel <= "00" when cpu_ena = '1' and cpu_addr(11) = '0' else
|
||||
"01" when cpu_ena = '1' and cpu_addr(11) = '1' else
|
||||
"10" when cpu_ena = '0' and hcnt(8) = '0' else
|
||||
"11";
|
||||
|
||||
with fg_ram_addr_sel select
|
||||
fg_ram_addr <= cpu_addr(4 downto 0) & cpu_addr(9 downto 5) when "00", -- cpu mirrored addressing
|
||||
cpu_addr(9 downto 0) when "01", -- cpu normal addressing
|
||||
vcnt_flip(7 downto 3) & hcnt_flip(7 downto 3) when "10", -- foreground tile scan addressing
|
||||
"00000" & hcnt(6 downto 2) when others; -- sprite data scan addressing
|
||||
|
||||
-- latch sprite data,
|
||||
-- manage fg and sprite graphix rom address
|
||||
-- manage sprite line buffer address
|
||||
process (clock_12, clock_6)
|
||||
begin
|
||||
if rising_edge(clock_12) and clock_6 = '1' then
|
||||
|
||||
if hcnt(3 downto 0) = "0000" then
|
||||
sprite_attr <= fg_ram_low_do(2 downto 0);
|
||||
end if;
|
||||
if hcnt(3 downto 0) = "0100" then
|
||||
sprite_tile <= fg_ram_low_do(7 downto 0);
|
||||
end if;
|
||||
if hcnt(3 downto 0) = "1000" then
|
||||
if sprite_attr(1) = '0' then
|
||||
sprite_line <= vcnt_flip(7 downto 0) - 0 + fg_ram_low_do(7 downto 0);
|
||||
else
|
||||
sprite_line <= (vcnt_flip(7 downto 0) - 0 + fg_ram_low_do(7 downto 0)) xor X"0F"; -- flip V
|
||||
end if;
|
||||
end if;
|
||||
|
||||
if hcnt(2 downto 0) = "100" then
|
||||
hcnt8_r <= hcnt(8);
|
||||
fg_grphx_addr_early <= fg_ram_high_do & fg_ram_low_do & vcnt_flip(2 downto 0); -- fg_ram_low_do(7) = '1' => low priority foreground
|
||||
if hcnt8_r = '1' then
|
||||
fg_grphx_addr <= sprite_tile & not (sprite_attr(2) xor hcnt_flip(3) xor cocktail_flip) & sprite_line(3 downto 0);
|
||||
if hcnt(3) = '1' then
|
||||
if (sprite_line(7 downto 4) = "1111") and (sprite_attr(0) = '1') then
|
||||
display_tile <= '1';
|
||||
else
|
||||
display_tile <= '0';
|
||||
end if;
|
||||
end if;
|
||||
else
|
||||
fg_grphx_addr <= fg_grphx_addr_early;
|
||||
display_tile <= '1';
|
||||
end if;
|
||||
end if;
|
||||
|
||||
if hcnt8_r = '1' then
|
||||
if hcnt(3 downto 0) = X"D" then
|
||||
sprite_buffer_addr <= fg_ram_low_do(7 downto 0);
|
||||
hcnt8_rr <= '1';
|
||||
else
|
||||
sprite_buffer_addr <= sprite_buffer_addr + '1';
|
||||
end if;
|
||||
else
|
||||
if hcnt(7 downto 0) = X"0D" then
|
||||
sprite_buffer_addr <= X"01"; -- (others => '0');
|
||||
hcnt8_rr <= '0';
|
||||
else
|
||||
sprite_buffer_addr <= sprite_buffer_addr + '1';
|
||||
end if;
|
||||
end if;
|
||||
|
||||
end if;
|
||||
end process;
|
||||
|
||||
sprite_buffer_addr_flip <= not (sprite_buffer_addr) when hcnt8_rr = '0' and cocktail_flip = '1' else sprite_buffer_addr;
|
||||
|
||||
-- latch and shift foreground and sprite graphics
|
||||
process (clock_12, clock_6)
|
||||
begin
|
||||
if rising_edge(clock_12) and clock_6 = '1' then
|
||||
if hcnt(2 downto 0) = "101" then
|
||||
if display_tile = '1' then
|
||||
fg_sp_grphx_1 <= fg_grphx_1_do;
|
||||
fg_sp_grphx_2 <= fg_grphx_2_do;
|
||||
fg_sp_grphx_3 <= fg_grphx_3_do;
|
||||
fg_low_priority <= '1'; --fg_grphx_addr(10); -- #fg_ram_low_do(7) (always 1 for burger time)
|
||||
else
|
||||
fg_sp_grphx_1 <= (others =>'0');
|
||||
fg_sp_grphx_2 <= (others =>'0');
|
||||
fg_sp_grphx_3 <= (others =>'0');
|
||||
end if;
|
||||
elsif cocktail_flip = '0' or hcnt8_rr = '1' then
|
||||
fg_sp_grphx_1 <= '0' & fg_sp_grphx_1(7 downto 1);
|
||||
fg_sp_grphx_2 <= '0' & fg_sp_grphx_2(7 downto 1);
|
||||
fg_sp_grphx_3 <= '0' & fg_sp_grphx_3(7 downto 1);
|
||||
else
|
||||
fg_sp_grphx_1 <= fg_sp_grphx_1(6 downto 0) & '0';
|
||||
fg_sp_grphx_2 <= fg_sp_grphx_2(6 downto 0) & '0';
|
||||
fg_sp_grphx_3 <= fg_sp_grphx_3(6 downto 0) & '0';
|
||||
end if;
|
||||
end if;
|
||||
end process;
|
||||
|
||||
fg_sp_bits <= fg_sp_grphx_3(0) & fg_sp_grphx_2(0) & fg_sp_grphx_1(0) when cocktail_flip = '0' or hcnt8_rr = '1' else
|
||||
fg_sp_grphx_3(7) & fg_sp_grphx_2(7) & fg_sp_grphx_1(7);
|
||||
|
||||
-- data to sprite buffer
|
||||
sprite_buffer_di <= "000" when hcnt8_rr = '0' else -- clear ram after read
|
||||
sprite_buffer_do when fg_sp_bits = "000" else fg_sp_bits; -- sp vs sp priority rules
|
||||
|
||||
-- read sprite buffer
|
||||
process (clock_12,clock_6)
|
||||
begin
|
||||
if rising_edge(clock_12) and clock_6 = '0' then
|
||||
if hcnt8_rr = '0' then
|
||||
sp_bits_out <= sprite_buffer_do;
|
||||
else
|
||||
sp_bits_out <= "000";
|
||||
end if;
|
||||
end if;
|
||||
end process;
|
||||
|
||||
-- mux foreground and sprite buffer output with priorities
|
||||
fg_bits <= sp_bits_out when (fg_sp_bits = "000") or (sp_bits_out/="000" and fg_low_priority = '1') else fg_sp_bits;
|
||||
|
||||
----------------
|
||||
-- background --
|
||||
----------------
|
||||
|
||||
-- latch scroll1 & 2 data
|
||||
process (clock_12n,clock_6)
|
||||
begin
|
||||
if rising_edge(clock_12n) and clock_6 = '1' then
|
||||
if scroll1_we = '1' then
|
||||
scroll1 <= cpu_do(4 downto 0);
|
||||
end if;
|
||||
if scroll2_we = '1' then
|
||||
scroll2 <= cpu_do;
|
||||
end if;
|
||||
end if;
|
||||
end process;
|
||||
|
||||
-- manage background rom map address
|
||||
bg_scan_hcnt <= (hcnt_flip) + (scroll1(1 downto 0)&scroll2) + "0011110010" when cocktail_flip = '0' else
|
||||
(hcnt_flip) + (scroll1(1 downto 0)&scroll2) + "1100000101";
|
||||
|
||||
bg_map_addr <= scroll1(3) & scroll1(2) & bg_scan_hcnt(9 downto 4) & vcnt_flip(7 downto 4);
|
||||
|
||||
-- manage background graphics rom address
|
||||
process (clock_12,clock_6)
|
||||
begin
|
||||
if rising_edge(clock_12) and clock_6 = '0' then
|
||||
if bg_scan_hcnt(2 downto 0) = "000" then
|
||||
bg_grphx_addr <= bg_map_do(5 downto 0) & bg_scan_hcnt(3) & vcnt_flip(3 downto 0);
|
||||
end if;
|
||||
end if;
|
||||
end process;
|
||||
|
||||
-- latch and shift background graphics
|
||||
process (clock_12,clock_6)
|
||||
begin
|
||||
if rising_edge(clock_12) and clock_6 = '1' then
|
||||
if scroll1(4) = '0' then
|
||||
bg_grphx_1 <= (others => '0');
|
||||
bg_grphx_2 <= (others => '0');
|
||||
bg_grphx_3 <= (others => '0');
|
||||
else
|
||||
if bg_scan_hcnt(2 downto 0) = "000" then
|
||||
bg_grphx_1 <= bg_grphx_1_do;
|
||||
bg_grphx_2 <= bg_grphx_2_do;
|
||||
bg_grphx_3 <= bg_grphx_3_do;
|
||||
elsif cocktail_flip = '0' then
|
||||
bg_grphx_1 <= '0' & bg_grphx_1(7 downto 1);
|
||||
bg_grphx_2 <= '0' & bg_grphx_2(7 downto 1);
|
||||
bg_grphx_3 <= '0' & bg_grphx_3(7 downto 1);
|
||||
else
|
||||
bg_grphx_1 <= bg_grphx_1(6 downto 0) & '0';
|
||||
bg_grphx_2 <= bg_grphx_2(6 downto 0) & '0';
|
||||
bg_grphx_3 <= bg_grphx_3(6 downto 0) & '0';
|
||||
end if;
|
||||
end if;
|
||||
end if;
|
||||
end process;
|
||||
|
||||
bg_bits <= bg_grphx_3(0) & bg_grphx_2(0) & bg_grphx_1(0) when cocktail_flip = '0' else
|
||||
bg_grphx_3(7) & bg_grphx_2(7) & bg_grphx_1(7);
|
||||
|
||||
-- manage color palette address
|
||||
palette_addr <= cpu_addr(3 downto 0) when palette_we = '1' else
|
||||
'1'&bg_bits when fg_bits = "000" else
|
||||
'0'&fg_bits;
|
||||
|
||||
-- get palette output
|
||||
process (clock_12,clock_6)
|
||||
begin
|
||||
if rising_edge(clock_12) and clock_6 = '0' then
|
||||
video_r <= not palette_do(2 downto 0);
|
||||
video_g <= not palette_do(5 downto 3);
|
||||
video_b <= not palette_do(7 downto 6);
|
||||
end if;
|
||||
end process;
|
||||
|
||||
----------------------------
|
||||
-- video syncs and blanks --
|
||||
----------------------------
|
||||
|
||||
video_csync <= csync;
|
||||
|
||||
process(clock_12,clock_6)
|
||||
constant hcnt_base : integer := 312; --320
|
||||
variable vsync_cnt : std_logic_vector(3 downto 0);
|
||||
begin
|
||||
|
||||
if rising_edge(clock_12) and clock_6 = '1' then
|
||||
|
||||
if hcnt = hcnt_base+0 then hsync0 <= '0';
|
||||
elsif hcnt = hcnt_base+24 then hsync0 <= '1';
|
||||
end if;
|
||||
|
||||
if hcnt = hcnt_base+0 then hsync1 <= '0';
|
||||
elsif hcnt = hcnt_base+12 then hsync1 <= '1';
|
||||
elsif hcnt = hcnt_base+192-384 then hsync1 <= '0';
|
||||
elsif hcnt = hcnt_base+204-384 then hsync1 <= '1';
|
||||
end if;
|
||||
|
||||
if hcnt = hcnt_base+0 then hsync2 <= '0';
|
||||
elsif hcnt = hcnt_base+192-12-384 then hsync2 <= '1';
|
||||
elsif hcnt = hcnt_base+192-384 then hsync2 <= '0';
|
||||
elsif hcnt = hcnt_base+0-12 then hsync2 <= '1';
|
||||
end if;
|
||||
|
||||
if hcnt = hcnt_base then
|
||||
if vcnt = 246 then
|
||||
vsync_cnt := X"0";
|
||||
else
|
||||
if vsync_cnt < X"F" then vsync_cnt := vsync_cnt + '1'; end if;
|
||||
end if;
|
||||
end if;
|
||||
|
||||
if vsync_cnt = 0 then csync <= hsync1;
|
||||
elsif vsync_cnt = 1 then csync <= hsync1;
|
||||
elsif vsync_cnt = 2 then csync <= hsync1;
|
||||
elsif vsync_cnt = 3 then csync <= hsync2;
|
||||
elsif vsync_cnt = 4 then csync <= hsync2;
|
||||
elsif vsync_cnt = 5 then csync <= hsync2;
|
||||
elsif vsync_cnt = 6 then csync <= hsync1;
|
||||
elsif vsync_cnt = 7 then csync <= hsync1;
|
||||
elsif vsync_cnt = 8 then csync <= hsync1;
|
||||
else csync <= hsync0;
|
||||
end if;
|
||||
|
||||
if hcnt = 267 then hblank <= '1';
|
||||
elsif hcnt = 14 then hblank <= '0';
|
||||
end if;
|
||||
|
||||
if vcnt = 248 then vblank <= '1';
|
||||
elsif vcnt = 8 then vblank <= '0';
|
||||
end if;
|
||||
|
||||
-- external sync and blank outputs
|
||||
video_blankn <= not (hblank or vblank);
|
||||
|
||||
video_hs <= hsync0;
|
||||
|
||||
if vsync_cnt = 0 then video_vs <= '0';
|
||||
elsif vsync_cnt = 8 then video_vs <= '1';
|
||||
end if;
|
||||
|
||||
end if;
|
||||
end process;
|
||||
|
||||
---------------------------
|
||||
-- components
|
||||
---------------------------
|
||||
|
||||
cpu_inst : entity work.T65
|
||||
port map
|
||||
(
|
||||
Mode => "00", -- 6502
|
||||
Res_n => reset_n,
|
||||
Enable => cpu_ena,
|
||||
Clk => clock_12,
|
||||
Rdy => '1',
|
||||
Abort_n => '1',
|
||||
IRQ_n => '1',--cpu_irq_n,
|
||||
NMI_n => cpu_nmi_n,
|
||||
SO_n => '1',--cpu_so_n,
|
||||
R_W_n => cpu_rw_n,
|
||||
Sync => cpu_sync, -- open
|
||||
EF => open,
|
||||
MF => open,
|
||||
XF => open,
|
||||
ML_n => open,
|
||||
VP_n => open,
|
||||
VDA => open,
|
||||
VPA => open,
|
||||
A => cpu_addr,
|
||||
DI => cpu_di_dec,
|
||||
DO => cpu_do
|
||||
);
|
||||
|
||||
|
||||
-- working ram
|
||||
wram : entity work.gen_ram
|
||||
generic map( dWidth => 8, aWidth => 11)
|
||||
port map(
|
||||
clk => clock_12n,
|
||||
we => wram_we,
|
||||
addr => cpu_addr( 10 downto 0),
|
||||
d => cpu_do,
|
||||
q => wram_do
|
||||
);
|
||||
|
||||
-- program rom
|
||||
--program_rom: entity work.prog
|
||||
--port map(
|
||||
-- clk => clock_12n,
|
||||
-- addr => cpu_addr(14 downto 0),
|
||||
-- data => prog_rom_do
|
||||
--);
|
||||
|
||||
prg_rom_addr <= cpu_addr(14 downto 0);
|
||||
prog_rom_do <= prg_rom_do;
|
||||
|
||||
-- foreground ram low
|
||||
fg_ram_low : entity work.gen_ram
|
||||
generic map( dWidth => 8, aWidth => 10)
|
||||
port map(
|
||||
clk => clock_12n,
|
||||
we => fg_ram_low_we,
|
||||
addr => fg_ram_addr,
|
||||
d => cpu_do,
|
||||
q => fg_ram_low_do
|
||||
);
|
||||
|
||||
-- foreground ram high
|
||||
fg_ram_high : entity work.gen_ram
|
||||
generic map( dWidth => 2, aWidth => 10)
|
||||
port map(
|
||||
clk => clock_12n,
|
||||
we => fg_ram_high_we,
|
||||
addr => fg_ram_addr,
|
||||
d => cpu_do(1 downto 0),
|
||||
q => fg_ram_high_do
|
||||
);
|
||||
|
||||
-- foreground and sprite graphix rom bit #1
|
||||
fg_sp_graphx_1: entity work.fg_sp_graphx_1
|
||||
port map(
|
||||
clk => clock_12n,
|
||||
addr => fg_grphx_addr,
|
||||
data => fg_grphx_1_do
|
||||
);
|
||||
|
||||
-- foreground and sprite graphix rom bit #2
|
||||
fg_sp_graphx_2: entity work.fg_sp_graphx_2
|
||||
port map(
|
||||
clk => clock_12n,
|
||||
addr => fg_grphx_addr,
|
||||
data => fg_grphx_2_do
|
||||
);
|
||||
|
||||
-- foreground and sprite graphix rom bit #3
|
||||
fg_sp_graphx_3: entity work.fg_sp_graphx_3
|
||||
port map(
|
||||
clk => clock_12n,
|
||||
addr => fg_grphx_addr,
|
||||
data => fg_grphx_3_do
|
||||
);
|
||||
|
||||
-- sprite buffer ram
|
||||
sprite_buffer_ram : entity work.gen_ram
|
||||
generic map( dWidth => 3, aWidth => 8)
|
||||
port map(
|
||||
clk => clock_12n,
|
||||
we => clock_6,
|
||||
addr => sprite_buffer_addr_flip,
|
||||
d => sprite_buffer_di,
|
||||
q => sprite_buffer_do
|
||||
);
|
||||
|
||||
-- color palette ram
|
||||
color_ram : entity work.gen_ram
|
||||
generic map( dWidth => 8, aWidth => 4)
|
||||
port map(
|
||||
clk => clock_12n,
|
||||
we => palette_we,
|
||||
addr => palette_addr,
|
||||
d => cpu_do,
|
||||
q => palette_do
|
||||
);
|
||||
|
||||
-- background map rom
|
||||
bg_map: entity work.bg_map
|
||||
port map(
|
||||
clk => clock_12n,
|
||||
addr => bg_map_addr,
|
||||
data => bg_map_do
|
||||
);
|
||||
|
||||
-- background graphix rom bit #1
|
||||
bg_graphx_1: entity work.bg_graphx_1
|
||||
port map(
|
||||
clk => clock_12n,
|
||||
addr => bg_grphx_addr,
|
||||
data => bg_grphx_1_do
|
||||
);
|
||||
|
||||
-- background graphix rom bit #2
|
||||
bg_graphx_2: entity work.bg_graphx_2
|
||||
port map(
|
||||
clk => clock_12n,
|
||||
addr => bg_grphx_addr,
|
||||
data => bg_grphx_2_do
|
||||
);
|
||||
|
||||
---- background graphix rom bit #3
|
||||
bg_graphx_3: entity work.bg_graphx_3
|
||||
port map(
|
||||
clk => clock_12n,
|
||||
addr => bg_grphx_addr,
|
||||
data => bg_grphx_3_do
|
||||
);
|
||||
|
||||
-- sound part
|
||||
Sound: entity work.Treasure_Island_Sound
|
||||
port map(
|
||||
clock_12 => clock_12,
|
||||
reset => reset,
|
||||
|
||||
sound_req => sound_req,
|
||||
sound_code_in => cpu_do,
|
||||
sound_timing => vcnt(3),
|
||||
|
||||
audio_out => audio_out,
|
||||
snd_rom_addr => snd_rom_addr,
|
||||
snd_rom_do => snd_rom_do,
|
||||
dbg_cpu_addr => dbg_cpu_addr
|
||||
);
|
||||
|
||||
end SYN;
|
||||
@@ -0,0 +1,35 @@
|
||||
# ================================================================================
|
||||
#
|
||||
# Build ID Verilog Module Script
|
||||
# Jeff Wiencrot - 8/1/2011
|
||||
#
|
||||
# Generates a Verilog module that contains a timestamp,
|
||||
# from the current build. These values are available from the build_date, build_time,
|
||||
# physical_address, and host_name output ports of the build_id module in the build_id.v
|
||||
# Verilog source file.
|
||||
#
|
||||
# ================================================================================
|
||||
|
||||
proc generateBuildID_Verilog {} {
|
||||
|
||||
# Get the timestamp (see: http://www.altera.com/support/examples/tcl/tcl-date-time-stamp.html)
|
||||
set buildDate [ clock format [ clock seconds ] -format %y%m%d ]
|
||||
set buildTime [ clock format [ clock seconds ] -format %H%M%S ]
|
||||
|
||||
# Create a Verilog file for output
|
||||
set outputFileName "rtl/build_id.v"
|
||||
set outputFile [open $outputFileName "w"]
|
||||
|
||||
# Output the Verilog source
|
||||
puts $outputFile "`define BUILD_DATE \"$buildDate\""
|
||||
puts $outputFile "`define BUILD_TIME \"$buildTime\""
|
||||
close $outputFile
|
||||
|
||||
# Send confirmation message to the Messages window
|
||||
post_message "Generated build identification Verilog module: [pwd]/$outputFileName"
|
||||
post_message "Date: $buildDate"
|
||||
post_message "Time: $buildTime"
|
||||
}
|
||||
|
||||
# Comment out this line to prevent the process from automatically executing when the file is sourced:
|
||||
generateBuildID_Verilog
|
||||
@@ -0,0 +1,84 @@
|
||||
-- -----------------------------------------------------------------------
|
||||
--
|
||||
-- Syntiac's generic VHDL support files.
|
||||
--
|
||||
-- -----------------------------------------------------------------------
|
||||
-- Copyright 2005-2008 by Peter Wendrich (pwsoft@syntiac.com)
|
||||
-- http://www.syntiac.com/fpga64.html
|
||||
--
|
||||
-- Modified April 2016 by Dar (darfpga@aol.fr)
|
||||
-- http://darfpga.blogspot.fr
|
||||
-- Remove address register when writing
|
||||
--
|
||||
-- -----------------------------------------------------------------------
|
||||
--
|
||||
-- gen_rwram.vhd
|
||||
--
|
||||
-- -----------------------------------------------------------------------
|
||||
--
|
||||
-- generic ram.
|
||||
--
|
||||
-- -----------------------------------------------------------------------
|
||||
|
||||
library IEEE;
|
||||
use IEEE.STD_LOGIC_1164.ALL;
|
||||
use IEEE.numeric_std.ALL;
|
||||
|
||||
-- -----------------------------------------------------------------------
|
||||
|
||||
entity gen_ram is
|
||||
generic (
|
||||
dWidth : integer := 8;
|
||||
aWidth : integer := 10
|
||||
);
|
||||
port (
|
||||
clk : in std_logic;
|
||||
we : in std_logic;
|
||||
addr : in std_logic_vector((aWidth-1) downto 0);
|
||||
d : in std_logic_vector((dWidth-1) downto 0);
|
||||
q : out std_logic_vector((dWidth-1) downto 0)
|
||||
);
|
||||
end entity;
|
||||
|
||||
-- -----------------------------------------------------------------------
|
||||
|
||||
architecture rtl of gen_ram is
|
||||
subtype addressRange is integer range 0 to ((2**aWidth)-1);
|
||||
type ramDef is array(addressRange) of std_logic_vector((dWidth-1) downto 0);
|
||||
signal ram: ramDef;
|
||||
|
||||
signal rAddrReg : std_logic_vector((aWidth-1) downto 0);
|
||||
signal qReg : std_logic_vector((dWidth-1) downto 0);
|
||||
begin
|
||||
-- -----------------------------------------------------------------------
|
||||
-- Signals to entity interface
|
||||
-- -----------------------------------------------------------------------
|
||||
-- q <= qReg;
|
||||
|
||||
-- -----------------------------------------------------------------------
|
||||
-- Memory write
|
||||
-- -----------------------------------------------------------------------
|
||||
process(clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
if we = '1' then
|
||||
ram(to_integer(unsigned(addr))) <= d;
|
||||
end if;
|
||||
end if;
|
||||
end process;
|
||||
|
||||
-- -----------------------------------------------------------------------
|
||||
-- Memory read
|
||||
-- -----------------------------------------------------------------------
|
||||
process(clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
-- qReg <= ram(to_integer(unsigned(rAddrReg)));
|
||||
-- rAddrReg <= addr;
|
||||
---- qReg <= ram(to_integer(unsigned(addr)));
|
||||
q <= ram(to_integer(unsigned(addr)));
|
||||
end if;
|
||||
end process;
|
||||
--q <= ram(to_integer(unsigned(addr)));
|
||||
end architecture;
|
||||
|
||||
@@ -0,0 +1,82 @@
|
||||
|
||||
|
||||
module keyboard
|
||||
(
|
||||
input clk,
|
||||
input reset,
|
||||
input ps2_kbd_clk,
|
||||
input ps2_kbd_data,
|
||||
|
||||
output reg[7:0] joystick
|
||||
);
|
||||
|
||||
reg [11:0] shift_reg = 12'hFFF;
|
||||
wire[11:0] kdata = {ps2_kbd_data,shift_reg[11:1]};
|
||||
wire [7:0] kcode = kdata[9:2];
|
||||
reg release_btn = 0;
|
||||
|
||||
reg [7:0] code;
|
||||
reg input_strobe = 0;
|
||||
|
||||
always @(negedge clk) begin
|
||||
reg old_reset = 0;
|
||||
|
||||
old_reset <= reset;
|
||||
|
||||
if(~old_reset & reset)begin
|
||||
joystick <= 0;
|
||||
end
|
||||
|
||||
if(input_strobe) begin
|
||||
case(code)
|
||||
'h16: joystick[1] <= ~release_btn; // 1
|
||||
'h1E: joystick[2] <= ~release_btn; // 2
|
||||
|
||||
'h75: joystick[4] <= ~release_btn; // arrow up
|
||||
'h72: joystick[5] <= ~release_btn; // arrow down
|
||||
'h6B: joystick[6] <= ~release_btn; // arrow left
|
||||
'h74: joystick[7] <= ~release_btn; // arrow right
|
||||
|
||||
'h29: joystick[0] <= ~release_btn; // Space
|
||||
'h11: joystick[1] <= ~release_btn; // Left Alt
|
||||
'h0d: joystick[2] <= ~release_btn; // Tab
|
||||
'h76: joystick[3] <= ~release_btn; // Escape
|
||||
endcase
|
||||
end
|
||||
end
|
||||
|
||||
always @(posedge clk) begin
|
||||
reg [3:0] prev_clk = 0;
|
||||
reg old_reset = 0;
|
||||
reg action = 0;
|
||||
|
||||
old_reset <= reset;
|
||||
input_strobe <= 0;
|
||||
|
||||
if(~old_reset & reset)begin
|
||||
prev_clk <= 0;
|
||||
shift_reg <= 12'hFFF;
|
||||
end else begin
|
||||
prev_clk <= {ps2_kbd_clk,prev_clk[3:1]};
|
||||
if(prev_clk == 1) begin
|
||||
if (kdata[11] & ^kdata[10:2] & ~kdata[1] & kdata[0]) begin
|
||||
shift_reg <= 12'hFFF;
|
||||
if (kcode == 8'he0) ;
|
||||
// Extended key code follows
|
||||
else if (kcode == 8'hf0)
|
||||
// Release code follows
|
||||
action <= 1;
|
||||
else begin
|
||||
// Cancel extended/release flags for next time
|
||||
action <= 0;
|
||||
release_btn <= action;
|
||||
code <= kcode;
|
||||
input_strobe <= 1;
|
||||
end
|
||||
end else begin
|
||||
shift_reg <= kdata;
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
endmodule
|
||||
@@ -0,0 +1,4 @@
|
||||
set_global_assignment -name IP_TOOL_NAME "ALTPLL"
|
||||
set_global_assignment -name IP_TOOL_VERSION "13.1"
|
||||
set_global_assignment -name VERILOG_FILE [file join $::quartus(qip_path) "pll.v"]
|
||||
set_global_assignment -name MISC_FILE [file join $::quartus(qip_path) "pll.ppf"]
|
||||
@@ -0,0 +1,348 @@
|
||||
// megafunction wizard: %ALTPLL%
|
||||
// GENERATION: STANDARD
|
||||
// VERSION: WM1.0
|
||||
// MODULE: altpll
|
||||
|
||||
// ============================================================
|
||||
// File Name: pll.v
|
||||
// Megafunction Name(s):
|
||||
// altpll
|
||||
//
|
||||
// Simulation Library Files(s):
|
||||
// altera_mf
|
||||
// ============================================================
|
||||
// ************************************************************
|
||||
// THIS IS A WIZARD-GENERATED FILE. DO NOT EDIT THIS FILE!
|
||||
//
|
||||
// 13.1.4 Build 182 03/12/2014 SJ Full Version
|
||||
// ************************************************************
|
||||
|
||||
|
||||
//Copyright (C) 1991-2014 Altera Corporation
|
||||
//Your use of Altera Corporation's design tools, logic functions
|
||||
//and other software and tools, and its AMPP partner logic
|
||||
//functions, and any output files from any of the foregoing
|
||||
//(including device programming or simulation files), and any
|
||||
//associated documentation or information are expressly subject
|
||||
//to the terms and conditions of the Altera Program License
|
||||
//Subscription Agreement, Altera MegaCore Function License
|
||||
//Agreement, or other applicable license agreement, including,
|
||||
//without limitation, that your use is for the sole purpose of
|
||||
//programming logic devices manufactured by Altera and sold by
|
||||
//Altera or its authorized distributors. Please refer to the
|
||||
//applicable agreement for further details.
|
||||
|
||||
|
||||
// synopsys translate_off
|
||||
`timescale 1 ps / 1 ps
|
||||
// synopsys translate_on
|
||||
module pll (
|
||||
areset,
|
||||
inclk0,
|
||||
c0,
|
||||
c1,
|
||||
locked);
|
||||
|
||||
input areset;
|
||||
input inclk0;
|
||||
output c0;
|
||||
output c1;
|
||||
output locked;
|
||||
`ifndef ALTERA_RESERVED_QIS
|
||||
// synopsys translate_off
|
||||
`endif
|
||||
tri0 areset;
|
||||
`ifndef ALTERA_RESERVED_QIS
|
||||
// synopsys translate_on
|
||||
`endif
|
||||
|
||||
wire [4:0] sub_wire0;
|
||||
wire sub_wire2;
|
||||
wire [0:0] sub_wire6 = 1'h0;
|
||||
wire [0:0] sub_wire3 = sub_wire0[0:0];
|
||||
wire [1:1] sub_wire1 = sub_wire0[1:1];
|
||||
wire c1 = sub_wire1;
|
||||
wire locked = sub_wire2;
|
||||
wire c0 = sub_wire3;
|
||||
wire sub_wire4 = inclk0;
|
||||
wire [1:0] sub_wire5 = {sub_wire6, sub_wire4};
|
||||
|
||||
altpll altpll_component (
|
||||
.areset (areset),
|
||||
.inclk (sub_wire5),
|
||||
.clk (sub_wire0),
|
||||
.locked (sub_wire2),
|
||||
.activeclock (),
|
||||
.clkbad (),
|
||||
.clkena ({6{1'b1}}),
|
||||
.clkloss (),
|
||||
.clkswitch (1'b0),
|
||||
.configupdate (1'b0),
|
||||
.enable0 (),
|
||||
.enable1 (),
|
||||
.extclk (),
|
||||
.extclkena ({4{1'b1}}),
|
||||
.fbin (1'b1),
|
||||
.fbmimicbidir (),
|
||||
.fbout (),
|
||||
.fref (),
|
||||
.icdrclk (),
|
||||
.pfdena (1'b1),
|
||||
.phasecounterselect ({4{1'b1}}),
|
||||
.phasedone (),
|
||||
.phasestep (1'b1),
|
||||
.phaseupdown (1'b1),
|
||||
.pllena (1'b1),
|
||||
.scanaclr (1'b0),
|
||||
.scanclk (1'b0),
|
||||
.scanclkena (1'b1),
|
||||
.scandata (1'b0),
|
||||
.scandataout (),
|
||||
.scandone (),
|
||||
.scanread (1'b0),
|
||||
.scanwrite (1'b0),
|
||||
.sclkout0 (),
|
||||
.sclkout1 (),
|
||||
.vcooverrange (),
|
||||
.vcounderrange ());
|
||||
defparam
|
||||
altpll_component.bandwidth_type = "AUTO",
|
||||
altpll_component.clk0_divide_by = 3,
|
||||
altpll_component.clk0_duty_cycle = 50,
|
||||
altpll_component.clk0_multiply_by = 8,
|
||||
altpll_component.clk0_phase_shift = "0",
|
||||
altpll_component.clk1_divide_by = 9,
|
||||
altpll_component.clk1_duty_cycle = 50,
|
||||
altpll_component.clk1_multiply_by = 4,
|
||||
altpll_component.clk1_phase_shift = "0",
|
||||
altpll_component.compensate_clock = "CLK0",
|
||||
altpll_component.inclk0_input_frequency = 37037,
|
||||
altpll_component.intended_device_family = "Cyclone III",
|
||||
altpll_component.lpm_hint = "CBX_MODULE_PREFIX=pll",
|
||||
altpll_component.lpm_type = "altpll",
|
||||
altpll_component.operation_mode = "NORMAL",
|
||||
altpll_component.pll_type = "AUTO",
|
||||
altpll_component.port_activeclock = "PORT_UNUSED",
|
||||
altpll_component.port_areset = "PORT_USED",
|
||||
altpll_component.port_clkbad0 = "PORT_UNUSED",
|
||||
altpll_component.port_clkbad1 = "PORT_UNUSED",
|
||||
altpll_component.port_clkloss = "PORT_UNUSED",
|
||||
altpll_component.port_clkswitch = "PORT_UNUSED",
|
||||
altpll_component.port_configupdate = "PORT_UNUSED",
|
||||
altpll_component.port_fbin = "PORT_UNUSED",
|
||||
altpll_component.port_inclk0 = "PORT_USED",
|
||||
altpll_component.port_inclk1 = "PORT_UNUSED",
|
||||
altpll_component.port_locked = "PORT_USED",
|
||||
altpll_component.port_pfdena = "PORT_UNUSED",
|
||||
altpll_component.port_phasecounterselect = "PORT_UNUSED",
|
||||
altpll_component.port_phasedone = "PORT_UNUSED",
|
||||
altpll_component.port_phasestep = "PORT_UNUSED",
|
||||
altpll_component.port_phaseupdown = "PORT_UNUSED",
|
||||
altpll_component.port_pllena = "PORT_UNUSED",
|
||||
altpll_component.port_scanaclr = "PORT_UNUSED",
|
||||
altpll_component.port_scanclk = "PORT_UNUSED",
|
||||
altpll_component.port_scanclkena = "PORT_UNUSED",
|
||||
altpll_component.port_scandata = "PORT_UNUSED",
|
||||
altpll_component.port_scandataout = "PORT_UNUSED",
|
||||
altpll_component.port_scandone = "PORT_UNUSED",
|
||||
altpll_component.port_scanread = "PORT_UNUSED",
|
||||
altpll_component.port_scanwrite = "PORT_UNUSED",
|
||||
altpll_component.port_clk0 = "PORT_USED",
|
||||
altpll_component.port_clk1 = "PORT_USED",
|
||||
altpll_component.port_clk2 = "PORT_UNUSED",
|
||||
altpll_component.port_clk3 = "PORT_UNUSED",
|
||||
altpll_component.port_clk4 = "PORT_UNUSED",
|
||||
altpll_component.port_clk5 = "PORT_UNUSED",
|
||||
altpll_component.port_clkena0 = "PORT_UNUSED",
|
||||
altpll_component.port_clkena1 = "PORT_UNUSED",
|
||||
altpll_component.port_clkena2 = "PORT_UNUSED",
|
||||
altpll_component.port_clkena3 = "PORT_UNUSED",
|
||||
altpll_component.port_clkena4 = "PORT_UNUSED",
|
||||
altpll_component.port_clkena5 = "PORT_UNUSED",
|
||||
altpll_component.port_extclk0 = "PORT_UNUSED",
|
||||
altpll_component.port_extclk1 = "PORT_UNUSED",
|
||||
altpll_component.port_extclk2 = "PORT_UNUSED",
|
||||
altpll_component.port_extclk3 = "PORT_UNUSED",
|
||||
altpll_component.self_reset_on_loss_lock = "OFF",
|
||||
altpll_component.width_clock = 5;
|
||||
|
||||
|
||||
endmodule
|
||||
|
||||
// ============================================================
|
||||
// CNX file retrieval info
|
||||
// ============================================================
|
||||
// Retrieval info: PRIVATE: ACTIVECLK_CHECK STRING "0"
|
||||
// Retrieval info: PRIVATE: BANDWIDTH STRING "1.000"
|
||||
// Retrieval info: PRIVATE: BANDWIDTH_FEATURE_ENABLED STRING "1"
|
||||
// Retrieval info: PRIVATE: BANDWIDTH_FREQ_UNIT STRING "MHz"
|
||||
// Retrieval info: PRIVATE: BANDWIDTH_PRESET STRING "Low"
|
||||
// Retrieval info: PRIVATE: BANDWIDTH_USE_AUTO STRING "1"
|
||||
// Retrieval info: PRIVATE: BANDWIDTH_USE_PRESET STRING "0"
|
||||
// Retrieval info: PRIVATE: CLKBAD_SWITCHOVER_CHECK STRING "0"
|
||||
// Retrieval info: PRIVATE: CLKLOSS_CHECK STRING "0"
|
||||
// Retrieval info: PRIVATE: CLKSWITCH_CHECK STRING "0"
|
||||
// Retrieval info: PRIVATE: CNX_NO_COMPENSATE_RADIO STRING "0"
|
||||
// Retrieval info: PRIVATE: CREATE_CLKBAD_CHECK STRING "0"
|
||||
// Retrieval info: PRIVATE: CREATE_INCLK1_CHECK STRING "0"
|
||||
// Retrieval info: PRIVATE: CUR_DEDICATED_CLK STRING "c0"
|
||||
// Retrieval info: PRIVATE: CUR_FBIN_CLK STRING "c0"
|
||||
// Retrieval info: PRIVATE: DEVICE_SPEED_GRADE STRING "8"
|
||||
// Retrieval info: PRIVATE: DIV_FACTOR0 NUMERIC "33"
|
||||
// Retrieval info: PRIVATE: DIV_FACTOR1 NUMERIC "9"
|
||||
// Retrieval info: PRIVATE: DUTY_CYCLE0 STRING "50.00000000"
|
||||
// Retrieval info: PRIVATE: DUTY_CYCLE1 STRING "50.00000000"
|
||||
// Retrieval info: PRIVATE: EFF_OUTPUT_FREQ_VALUE0 STRING "72.000000"
|
||||
// Retrieval info: PRIVATE: EFF_OUTPUT_FREQ_VALUE1 STRING "12.000000"
|
||||
// Retrieval info: PRIVATE: EXPLICIT_SWITCHOVER_COUNTER STRING "0"
|
||||
// Retrieval info: PRIVATE: EXT_FEEDBACK_RADIO STRING "0"
|
||||
// Retrieval info: PRIVATE: GLOCKED_COUNTER_EDIT_CHANGED STRING "1"
|
||||
// Retrieval info: PRIVATE: GLOCKED_FEATURE_ENABLED STRING "0"
|
||||
// Retrieval info: PRIVATE: GLOCKED_MODE_CHECK STRING "0"
|
||||
// Retrieval info: PRIVATE: GLOCK_COUNTER_EDIT NUMERIC "1048575"
|
||||
// Retrieval info: PRIVATE: HAS_MANUAL_SWITCHOVER STRING "1"
|
||||
// Retrieval info: PRIVATE: INCLK0_FREQ_EDIT STRING "27.000"
|
||||
// Retrieval info: PRIVATE: INCLK0_FREQ_UNIT_COMBO STRING "MHz"
|
||||
// Retrieval info: PRIVATE: INCLK1_FREQ_EDIT STRING "100.000"
|
||||
// Retrieval info: PRIVATE: INCLK1_FREQ_EDIT_CHANGED STRING "1"
|
||||
// Retrieval info: PRIVATE: INCLK1_FREQ_UNIT_CHANGED STRING "1"
|
||||
// Retrieval info: PRIVATE: INCLK1_FREQ_UNIT_COMBO STRING "MHz"
|
||||
// Retrieval info: PRIVATE: INTENDED_DEVICE_FAMILY STRING "Cyclone III"
|
||||
// Retrieval info: PRIVATE: INT_FEEDBACK__MODE_RADIO STRING "1"
|
||||
// Retrieval info: PRIVATE: LOCKED_OUTPUT_CHECK STRING "1"
|
||||
// Retrieval info: PRIVATE: LONG_SCAN_RADIO STRING "1"
|
||||
// Retrieval info: PRIVATE: LVDS_MODE_DATA_RATE STRING "Not Available"
|
||||
// Retrieval info: PRIVATE: LVDS_MODE_DATA_RATE_DIRTY NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: LVDS_PHASE_SHIFT_UNIT0 STRING "deg"
|
||||
// Retrieval info: PRIVATE: LVDS_PHASE_SHIFT_UNIT1 STRING "ps"
|
||||
// Retrieval info: PRIVATE: MIG_DEVICE_SPEED_GRADE STRING "Any"
|
||||
// Retrieval info: PRIVATE: MIRROR_CLK0 STRING "0"
|
||||
// Retrieval info: PRIVATE: MIRROR_CLK1 STRING "0"
|
||||
// Retrieval info: PRIVATE: MULT_FACTOR0 NUMERIC "70"
|
||||
// Retrieval info: PRIVATE: MULT_FACTOR1 NUMERIC "4"
|
||||
// Retrieval info: PRIVATE: NORMAL_MODE_RADIO STRING "1"
|
||||
// Retrieval info: PRIVATE: OUTPUT_FREQ0 STRING "72.00000000"
|
||||
// Retrieval info: PRIVATE: OUTPUT_FREQ1 STRING "12.00000000"
|
||||
// Retrieval info: PRIVATE: OUTPUT_FREQ_MODE0 STRING "1"
|
||||
// Retrieval info: PRIVATE: OUTPUT_FREQ_MODE1 STRING "0"
|
||||
// Retrieval info: PRIVATE: OUTPUT_FREQ_UNIT0 STRING "MHz"
|
||||
// Retrieval info: PRIVATE: OUTPUT_FREQ_UNIT1 STRING "MHz"
|
||||
// Retrieval info: PRIVATE: PHASE_RECONFIG_FEATURE_ENABLED STRING "1"
|
||||
// Retrieval info: PRIVATE: PHASE_RECONFIG_INPUTS_CHECK STRING "0"
|
||||
// Retrieval info: PRIVATE: PHASE_SHIFT0 STRING "0.00000000"
|
||||
// Retrieval info: PRIVATE: PHASE_SHIFT1 STRING "0.00000000"
|
||||
// Retrieval info: PRIVATE: PHASE_SHIFT_STEP_ENABLED_CHECK STRING "0"
|
||||
// Retrieval info: PRIVATE: PHASE_SHIFT_UNIT0 STRING "deg"
|
||||
// Retrieval info: PRIVATE: PHASE_SHIFT_UNIT1 STRING "deg"
|
||||
// Retrieval info: PRIVATE: PLL_ADVANCED_PARAM_CHECK STRING "0"
|
||||
// Retrieval info: PRIVATE: PLL_ARESET_CHECK STRING "1"
|
||||
// Retrieval info: PRIVATE: PLL_AUTOPLL_CHECK NUMERIC "1"
|
||||
// Retrieval info: PRIVATE: PLL_ENHPLL_CHECK NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: PLL_FASTPLL_CHECK NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: PLL_FBMIMIC_CHECK STRING "0"
|
||||
// Retrieval info: PRIVATE: PLL_LVDS_PLL_CHECK NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: PLL_PFDENA_CHECK STRING "0"
|
||||
// Retrieval info: PRIVATE: PLL_TARGET_HARCOPY_CHECK NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: PRIMARY_CLK_COMBO STRING "inclk0"
|
||||
// Retrieval info: PRIVATE: RECONFIG_FILE STRING "pll.mif"
|
||||
// Retrieval info: PRIVATE: SACN_INPUTS_CHECK STRING "0"
|
||||
// Retrieval info: PRIVATE: SCAN_FEATURE_ENABLED STRING "1"
|
||||
// Retrieval info: PRIVATE: SELF_RESET_LOCK_LOSS STRING "0"
|
||||
// Retrieval info: PRIVATE: SHORT_SCAN_RADIO STRING "0"
|
||||
// Retrieval info: PRIVATE: SPREAD_FEATURE_ENABLED STRING "0"
|
||||
// Retrieval info: PRIVATE: SPREAD_FREQ STRING "50.000"
|
||||
// Retrieval info: PRIVATE: SPREAD_FREQ_UNIT STRING "KHz"
|
||||
// Retrieval info: PRIVATE: SPREAD_PERCENT STRING "0.500"
|
||||
// Retrieval info: PRIVATE: SPREAD_USE STRING "0"
|
||||
// Retrieval info: PRIVATE: SRC_SYNCH_COMP_RADIO STRING "0"
|
||||
// Retrieval info: PRIVATE: STICKY_CLK0 STRING "1"
|
||||
// Retrieval info: PRIVATE: STICKY_CLK1 STRING "1"
|
||||
// Retrieval info: PRIVATE: SWITCHOVER_COUNT_EDIT NUMERIC "1"
|
||||
// Retrieval info: PRIVATE: SWITCHOVER_FEATURE_ENABLED STRING "1"
|
||||
// Retrieval info: PRIVATE: SYNTH_WRAPPER_GEN_POSTFIX STRING "0"
|
||||
// Retrieval info: PRIVATE: USE_CLK0 STRING "1"
|
||||
// Retrieval info: PRIVATE: USE_CLK1 STRING "1"
|
||||
// Retrieval info: PRIVATE: USE_CLKENA0 STRING "0"
|
||||
// Retrieval info: PRIVATE: USE_CLKENA1 STRING "0"
|
||||
// Retrieval info: PRIVATE: USE_MIL_SPEED_GRADE NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: ZERO_DELAY_RADIO STRING "0"
|
||||
// Retrieval info: LIBRARY: altera_mf altera_mf.altera_mf_components.all
|
||||
// Retrieval info: CONSTANT: BANDWIDTH_TYPE STRING "AUTO"
|
||||
// Retrieval info: CONSTANT: CLK0_DIVIDE_BY NUMERIC "3"
|
||||
// Retrieval info: CONSTANT: CLK0_DUTY_CYCLE NUMERIC "50"
|
||||
// Retrieval info: CONSTANT: CLK0_MULTIPLY_BY NUMERIC "8"
|
||||
// Retrieval info: CONSTANT: CLK0_PHASE_SHIFT STRING "0"
|
||||
// Retrieval info: CONSTANT: CLK1_DIVIDE_BY NUMERIC "9"
|
||||
// Retrieval info: CONSTANT: CLK1_DUTY_CYCLE NUMERIC "50"
|
||||
// Retrieval info: CONSTANT: CLK1_MULTIPLY_BY NUMERIC "4"
|
||||
// Retrieval info: CONSTANT: CLK1_PHASE_SHIFT STRING "0"
|
||||
// Retrieval info: CONSTANT: COMPENSATE_CLOCK STRING "CLK0"
|
||||
// Retrieval info: CONSTANT: INCLK0_INPUT_FREQUENCY NUMERIC "37037"
|
||||
// Retrieval info: CONSTANT: INTENDED_DEVICE_FAMILY STRING "Cyclone III"
|
||||
// Retrieval info: CONSTANT: LPM_TYPE STRING "altpll"
|
||||
// Retrieval info: CONSTANT: OPERATION_MODE STRING "NORMAL"
|
||||
// Retrieval info: CONSTANT: PLL_TYPE STRING "AUTO"
|
||||
// Retrieval info: CONSTANT: PORT_ACTIVECLOCK STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: PORT_ARESET STRING "PORT_USED"
|
||||
// Retrieval info: CONSTANT: PORT_CLKBAD0 STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: PORT_CLKBAD1 STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: PORT_CLKLOSS STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: PORT_CLKSWITCH STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: PORT_CONFIGUPDATE STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: PORT_FBIN STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: PORT_INCLK0 STRING "PORT_USED"
|
||||
// Retrieval info: CONSTANT: PORT_INCLK1 STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: PORT_LOCKED STRING "PORT_USED"
|
||||
// Retrieval info: CONSTANT: PORT_PFDENA STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: PORT_PHASECOUNTERSELECT STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: PORT_PHASEDONE STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: PORT_PHASESTEP STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: PORT_PHASEUPDOWN STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: PORT_PLLENA STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: PORT_SCANACLR STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: PORT_SCANCLK STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: PORT_SCANCLKENA STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: PORT_SCANDATA STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: PORT_SCANDATAOUT STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: PORT_SCANDONE STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: PORT_SCANREAD STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: PORT_SCANWRITE STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: PORT_clk0 STRING "PORT_USED"
|
||||
// Retrieval info: CONSTANT: PORT_clk1 STRING "PORT_USED"
|
||||
// Retrieval info: CONSTANT: PORT_clk2 STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: PORT_clk3 STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: PORT_clk4 STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: PORT_clk5 STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: PORT_clkena0 STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: PORT_clkena1 STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: PORT_clkena2 STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: PORT_clkena3 STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: PORT_clkena4 STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: PORT_clkena5 STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: PORT_extclk0 STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: PORT_extclk1 STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: PORT_extclk2 STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: PORT_extclk3 STRING "PORT_UNUSED"
|
||||
// Retrieval info: CONSTANT: SELF_RESET_ON_LOSS_LOCK STRING "OFF"
|
||||
// Retrieval info: CONSTANT: WIDTH_CLOCK NUMERIC "5"
|
||||
// Retrieval info: USED_PORT: @clk 0 0 5 0 OUTPUT_CLK_EXT VCC "@clk[4..0]"
|
||||
// Retrieval info: USED_PORT: areset 0 0 0 0 INPUT GND "areset"
|
||||
// Retrieval info: USED_PORT: c0 0 0 0 0 OUTPUT_CLK_EXT VCC "c0"
|
||||
// Retrieval info: USED_PORT: c1 0 0 0 0 OUTPUT_CLK_EXT VCC "c1"
|
||||
// Retrieval info: USED_PORT: inclk0 0 0 0 0 INPUT_CLK_EXT GND "inclk0"
|
||||
// Retrieval info: USED_PORT: locked 0 0 0 0 OUTPUT GND "locked"
|
||||
// Retrieval info: CONNECT: @areset 0 0 0 0 areset 0 0 0 0
|
||||
// Retrieval info: CONNECT: @inclk 0 0 1 1 GND 0 0 0 0
|
||||
// Retrieval info: CONNECT: @inclk 0 0 1 0 inclk0 0 0 0 0
|
||||
// Retrieval info: CONNECT: c0 0 0 0 0 @clk 0 0 1 0
|
||||
// Retrieval info: CONNECT: c1 0 0 0 0 @clk 0 0 1 1
|
||||
// Retrieval info: CONNECT: locked 0 0 0 0 @locked 0 0 0 0
|
||||
// Retrieval info: GEN_FILE: TYPE_NORMAL pll.v TRUE
|
||||
// Retrieval info: GEN_FILE: TYPE_NORMAL pll.ppf TRUE
|
||||
// Retrieval info: GEN_FILE: TYPE_NORMAL pll.inc FALSE
|
||||
// Retrieval info: GEN_FILE: TYPE_NORMAL pll.cmp FALSE
|
||||
// Retrieval info: GEN_FILE: TYPE_NORMAL pll.bsf FALSE
|
||||
// Retrieval info: GEN_FILE: TYPE_NORMAL pll_inst.v FALSE
|
||||
// Retrieval info: GEN_FILE: TYPE_NORMAL pll_bb.v FALSE
|
||||
// Retrieval info: LIB_FILE: altera_mf
|
||||
// Retrieval info: CBX_MODULE_PREFIX: ON
|
||||
@@ -0,0 +1,337 @@
|
||||
//
|
||||
// sdram.v
|
||||
//
|
||||
// sdram controller implementation for the MiST board
|
||||
// https://github.com/mist-devel/mist-board
|
||||
//
|
||||
// Copyright (c) 2013 Till Harbaum <till@harbaum.org>
|
||||
// Copyright (c) 2019 Gyorgy Szombathelyi
|
||||
//
|
||||
// This source file is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published
|
||||
// by the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
//
|
||||
// This source file is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
//
|
||||
|
||||
module sdram (
|
||||
|
||||
// interface to the MT48LC16M16 chip
|
||||
inout reg [15:0] SDRAM_DQ, // 16 bit bidirectional data bus
|
||||
output reg [12:0] SDRAM_A, // 13 bit multiplexed address bus
|
||||
output reg SDRAM_DQML, // two byte masks
|
||||
output reg SDRAM_DQMH, // two byte masks
|
||||
output reg [1:0] SDRAM_BA, // two banks
|
||||
output SDRAM_nCS, // a single chip select
|
||||
output SDRAM_nWE, // write enable
|
||||
output SDRAM_nRAS, // row address select
|
||||
output SDRAM_nCAS, // columns address select
|
||||
|
||||
// cpu/chipset interface
|
||||
input init_n, // init signal after FPGA config to initialize RAM
|
||||
input clk, // sdram clock
|
||||
|
||||
input port1_req,
|
||||
output reg port1_ack,
|
||||
input port1_we,
|
||||
input [23:1] port1_a,
|
||||
input [1:0] port1_ds,
|
||||
input [15:0] port1_d,
|
||||
output [15:0] port1_q,
|
||||
|
||||
input [16:1] cpu1_addr,
|
||||
output reg [15:0] cpu1_q,
|
||||
input [16:1] cpu2_addr,
|
||||
output reg [15:0] cpu2_q,
|
||||
|
||||
input port2_req,
|
||||
output reg port2_ack,
|
||||
input port2_we,
|
||||
input [23:1] port2_a,
|
||||
input [1:0] port2_ds,
|
||||
input [15:0] port2_d,
|
||||
output [15:0] port2_q,
|
||||
|
||||
input [15:1] bg_addr,
|
||||
output reg [15:0] bg_q
|
||||
);
|
||||
|
||||
parameter MHZ = 16'd80; // 80 MHz default clock, set it to proper value to calculate refresh rate
|
||||
|
||||
localparam RASCAS_DELAY = 3'd2; // tRCD=20ns -> 2 cycles@<100MHz
|
||||
localparam BURST_LENGTH = 3'b000; // 000=1, 001=2, 010=4, 011=8
|
||||
localparam ACCESS_TYPE = 1'b0; // 0=sequential, 1=interleaved
|
||||
localparam CAS_LATENCY = 3'd2; // 2/3 allowed
|
||||
localparam OP_MODE = 2'b00; // only 00 (standard operation) allowed
|
||||
localparam NO_WRITE_BURST = 1'b1; // 0= write burst enabled, 1=only single access write
|
||||
|
||||
localparam MODE = { 3'b000, NO_WRITE_BURST, OP_MODE, CAS_LATENCY, ACCESS_TYPE, BURST_LENGTH};
|
||||
|
||||
// 64ms/8192 rows = 7.8us
|
||||
localparam RFRSH_CYCLES = 16'd78*MHZ/4'd10;
|
||||
|
||||
// ---------------------------------------------------------------------
|
||||
// ------------------------ cycle state machine ------------------------
|
||||
// ---------------------------------------------------------------------
|
||||
|
||||
/*
|
||||
SDRAM state machine for 2 bank interleaved access
|
||||
1 word burst, CL2
|
||||
cmd issued registered
|
||||
0 RAS0 cas1
|
||||
1 ras0
|
||||
2 CAS0 data1 returned
|
||||
3 RAS1 cas0
|
||||
4 ras1
|
||||
5 CAS1 data0 returned
|
||||
*/
|
||||
|
||||
localparam STATE_RAS0 = 3'd0; // first state in cycle
|
||||
localparam STATE_RAS1 = 3'd3; // Second ACTIVE command after RAS0 + tRRD (15ns)
|
||||
localparam STATE_CAS0 = STATE_RAS0 + RASCAS_DELAY; // CAS phase - 3
|
||||
localparam STATE_CAS1 = STATE_RAS1 + RASCAS_DELAY; // CAS phase - 5
|
||||
localparam STATE_READ0 = 3'd0; //STATE_CAS0 + CAS_LATENCY + 1'd1; // 7
|
||||
localparam STATE_READ1 = 3'd3;
|
||||
localparam STATE_LAST = 3'd5;
|
||||
|
||||
reg [2:0] t;
|
||||
|
||||
always @(posedge clk) begin
|
||||
t <= t + 1'd1;
|
||||
if (t == STATE_LAST) t <= STATE_RAS0;
|
||||
end
|
||||
|
||||
// ---------------------------------------------------------------------
|
||||
// --------------------------- startup/reset ---------------------------
|
||||
// ---------------------------------------------------------------------
|
||||
|
||||
// wait 1ms (32 8Mhz cycles) after FPGA config is done before going
|
||||
// into normal operation. Initialize the ram in the last 16 reset cycles (cycles 15-0)
|
||||
reg [4:0] reset;
|
||||
reg init = 1'b1;
|
||||
always @(posedge clk, negedge init_n) begin
|
||||
if(!init_n) begin
|
||||
reset <= 5'h1f;
|
||||
init <= 1'b1;
|
||||
end else begin
|
||||
if((t == STATE_LAST) && (reset != 0)) reset <= reset - 5'd1;
|
||||
init <= !(reset == 0);
|
||||
end
|
||||
end
|
||||
|
||||
// ---------------------------------------------------------------------
|
||||
// ------------------ generate ram control signals ---------------------
|
||||
// ---------------------------------------------------------------------
|
||||
|
||||
// all possible commands
|
||||
localparam CMD_INHIBIT = 4'b1111;
|
||||
localparam CMD_NOP = 4'b0111;
|
||||
localparam CMD_ACTIVE = 4'b0011;
|
||||
localparam CMD_READ = 4'b0101;
|
||||
localparam CMD_WRITE = 4'b0100;
|
||||
localparam CMD_BURST_TERMINATE = 4'b0110;
|
||||
localparam CMD_PRECHARGE = 4'b0010;
|
||||
localparam CMD_AUTO_REFRESH = 4'b0001;
|
||||
localparam CMD_LOAD_MODE = 4'b0000;
|
||||
|
||||
reg [3:0] sd_cmd; // current command sent to sd ram
|
||||
reg [15:0] sd_din;
|
||||
// drive control signals according to current command
|
||||
assign SDRAM_nCS = sd_cmd[3];
|
||||
assign SDRAM_nRAS = sd_cmd[2];
|
||||
assign SDRAM_nCAS = sd_cmd[1];
|
||||
assign SDRAM_nWE = sd_cmd[0];
|
||||
|
||||
reg [24:1] addr_latch[2];
|
||||
reg [24:1] addr_latch_next[2];
|
||||
reg [16:1] addr_last[2];
|
||||
reg [16:1] addr_last2[2];
|
||||
reg [15:0] din_latch[2];
|
||||
reg [1:0] oe_latch;
|
||||
reg [1:0] we_latch;
|
||||
reg [1:0] ds[2];
|
||||
|
||||
reg port1_state;
|
||||
reg port2_state;
|
||||
|
||||
localparam PORT_NONE = 2'd0;
|
||||
localparam PORT_CPU1 = 2'd1;
|
||||
localparam PORT_TILE = 2'd2;
|
||||
localparam PORT_REQ = 2'd3;
|
||||
|
||||
localparam PORT_SND = 2'd1;
|
||||
|
||||
reg [2:0] next_port[2];
|
||||
reg [2:0] port[2];
|
||||
|
||||
reg refresh;
|
||||
reg [10:0] refresh_cnt;
|
||||
wire need_refresh = (refresh_cnt >= RFRSH_CYCLES);
|
||||
|
||||
// PORT1: bank 0,1
|
||||
always @(*) begin
|
||||
if (refresh) begin
|
||||
next_port[0] = PORT_NONE;
|
||||
addr_latch_next[0] = addr_latch[0];
|
||||
end else if (port1_req ^ port1_state) begin
|
||||
next_port[0] = PORT_REQ;
|
||||
addr_latch_next[0] = { 1'b0, port1_a };
|
||||
end else if (cpu1_addr != addr_last[PORT_CPU1]) begin
|
||||
next_port[0] = PORT_CPU1;
|
||||
addr_latch_next[0] = { 8'd0, cpu1_addr };
|
||||
end else if (cpu2_addr != addr_last[PORT_TILE]) begin
|
||||
next_port[0] = PORT_TILE;
|
||||
addr_latch_next[0] = { 8'd0, cpu2_addr };
|
||||
end else begin
|
||||
next_port[0] = PORT_NONE;
|
||||
addr_latch_next[0] = addr_latch[0];
|
||||
end
|
||||
end
|
||||
|
||||
// PORT2: bank 2,3
|
||||
always @(*) begin
|
||||
if (port2_req ^ port2_state) begin
|
||||
next_port[1] = PORT_REQ;
|
||||
addr_latch_next[1] = { 1'b1, port2_a };
|
||||
end else if (bg_addr != addr_last2[PORT_SND]) begin
|
||||
next_port[1] = PORT_SND;
|
||||
addr_latch_next[1] = { 1'b1, 8'd0, bg_addr };
|
||||
end else begin
|
||||
next_port[1] = PORT_NONE;
|
||||
addr_latch_next[1] = addr_latch[1];
|
||||
end
|
||||
end
|
||||
|
||||
always @(posedge clk) begin
|
||||
|
||||
// permanently latch ram data to reduce delays
|
||||
sd_din <= SDRAM_DQ;
|
||||
SDRAM_DQ <= 16'bZZZZZZZZZZZZZZZZ;
|
||||
{ SDRAM_DQMH, SDRAM_DQML } <= 2'b11;
|
||||
sd_cmd <= CMD_NOP; // default: idle
|
||||
refresh_cnt <= refresh_cnt + 1'd1;
|
||||
|
||||
if(init) begin
|
||||
// initialization takes place at the end of the reset phase
|
||||
if(t == STATE_RAS0) begin
|
||||
|
||||
if(reset == 15) begin
|
||||
sd_cmd <= CMD_PRECHARGE;
|
||||
SDRAM_A[10] <= 1'b1; // precharge all banks
|
||||
end
|
||||
|
||||
if(reset == 10 || reset == 8) begin
|
||||
sd_cmd <= CMD_AUTO_REFRESH;
|
||||
end
|
||||
|
||||
if(reset == 2) begin
|
||||
sd_cmd <= CMD_LOAD_MODE;
|
||||
SDRAM_A <= MODE;
|
||||
SDRAM_BA <= 2'b00;
|
||||
end
|
||||
end
|
||||
end else begin
|
||||
// RAS phase
|
||||
// bank 0,1
|
||||
if(t == STATE_RAS0) begin
|
||||
addr_latch[0] <= addr_latch_next[0];
|
||||
port[0] <= next_port[0];
|
||||
{ oe_latch[0], we_latch[0] } <= 2'b00;
|
||||
|
||||
if (next_port[0] != PORT_NONE) begin
|
||||
sd_cmd <= CMD_ACTIVE;
|
||||
SDRAM_A <= addr_latch_next[0][22:10];
|
||||
SDRAM_BA <= addr_latch_next[0][24:23];
|
||||
addr_last[next_port[0]] <= addr_latch_next[0][16:1];
|
||||
if (next_port[0] == PORT_REQ) begin
|
||||
{ oe_latch[0], we_latch[0] } <= { ~port1_we, port1_we };
|
||||
ds[0] <= port1_ds;
|
||||
din_latch[0] <= port1_d;
|
||||
port1_state <= port1_req;
|
||||
end else begin
|
||||
{ oe_latch[0], we_latch[0] } <= 2'b10;
|
||||
ds[0] <= 2'b11;
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
// bank 2,3
|
||||
if(t == STATE_RAS1) begin
|
||||
refresh <= 1'b0;
|
||||
addr_latch[1] <= addr_latch_next[1];
|
||||
{ oe_latch[1], we_latch[1] } <= 2'b00;
|
||||
port[1] <= next_port[1];
|
||||
|
||||
if (next_port[1] != PORT_NONE) begin
|
||||
sd_cmd <= CMD_ACTIVE;
|
||||
SDRAM_A <= addr_latch_next[1][22:10];
|
||||
SDRAM_BA <= addr_latch_next[1][24:23];
|
||||
addr_last2[next_port[1]] <= addr_latch_next[1][15:1];
|
||||
if (next_port[1] == PORT_REQ) begin
|
||||
{ oe_latch[1], we_latch[1] } <= { ~port2_we, port2_we };
|
||||
ds[1] <= port2_ds;
|
||||
din_latch[1] <= port2_d;
|
||||
port2_state <= port1_req;
|
||||
end else begin
|
||||
{ oe_latch[1], we_latch[1] } <= 2'b10;
|
||||
ds[1] <= 2'b11;
|
||||
end
|
||||
end
|
||||
|
||||
if (next_port[1] == PORT_NONE && need_refresh && !we_latch[0] && !oe_latch[0]) begin
|
||||
refresh <= 1'b1;
|
||||
refresh_cnt <= 0;
|
||||
sd_cmd <= CMD_AUTO_REFRESH;
|
||||
end
|
||||
end
|
||||
|
||||
// CAS phase
|
||||
if(t == STATE_CAS0 && (we_latch[0] || oe_latch[0])) begin
|
||||
sd_cmd <= we_latch[0]?CMD_WRITE:CMD_READ;
|
||||
{ SDRAM_DQMH, SDRAM_DQML } <= ~ds[0];
|
||||
if (we_latch[0]) begin
|
||||
SDRAM_DQ <= din_latch[0];
|
||||
port1_ack <= port1_req;
|
||||
end
|
||||
SDRAM_A <= { 4'b0010, addr_latch[0][9:1] }; // auto precharge
|
||||
SDRAM_BA <= addr_latch[0][24:23];
|
||||
end
|
||||
|
||||
if(t == STATE_CAS1 && (we_latch[1] || oe_latch[1])) begin
|
||||
sd_cmd <= we_latch[1]?CMD_WRITE:CMD_READ;
|
||||
{ SDRAM_DQMH, SDRAM_DQML } <= ~ds[1];
|
||||
if (we_latch[1]) begin
|
||||
SDRAM_DQ <= din_latch[1];
|
||||
port2_ack <= port2_req;
|
||||
end
|
||||
SDRAM_A <= { 4'b0010, addr_latch[1][9:1] }; // auto precharge
|
||||
SDRAM_BA <= addr_latch[1][24:23];
|
||||
end
|
||||
|
||||
// Data returned
|
||||
if(t == STATE_READ0 && oe_latch[0]) begin
|
||||
case(port[0])
|
||||
PORT_REQ: begin port1_q <= sd_din; port1_ack <= port1_req; end
|
||||
PORT_CPU1: begin cpu1_q <= sd_din; end
|
||||
PORT_TILE: begin cpu2_q <= sd_din; end
|
||||
default: ;
|
||||
endcase;
|
||||
end
|
||||
if(t == STATE_READ1 && oe_latch[1]) begin
|
||||
case(port[1])
|
||||
PORT_REQ: begin port2_q <= sd_din; port2_ack <= port2_req; end
|
||||
PORT_SND: begin bg_q <= sd_din; end
|
||||
default: ;
|
||||
endcase;
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
endmodule
|
||||
Reference in New Issue
Block a user