galaxians
[fpga-games] / galaxian / doc / altera_fpga_galaxian.txt
1 **************************************************************************************************
2 * 2004- 9-24 Katsumi Degawa *
3 * ALTERA(CYCLONE)-FPGA-GALAXIAN \82Ö\82æ\82¤\82±\82» *
4 * *
5 **************************************************************************************************
6 \81y\81@ \82Í\82\82ß\82É\81@ \81z
7 \81@\81@\82±\82ÌALTERA(CYCLONE)-FPGA-GALAXIAN\82Í\81A1980\94N\91ã\82É\8f\89\82ß\82É\94­\95\\82³\82ê\81@\83Q\81[\83\80\83Z\83\93\83^\81[\82È\82Ç\82Å\8a\88\96ô\81H
8 \81@\82µ\82Ä\82¢\82½\81@\8aî\94Â\82Æ\89ñ\98H\90}\82ð\8c³\82ÉVerilogHDL\82Å\90Ý\8cv\82µ\81AFPGA\82Å\93®\8dì\82·\82é\82æ\82¤\82É\82µ\82½\82à\82Ì\82Å\82·\81B
9
10 \81y\81@\95Ï\8dX\93_\81Fv2.50\81@\81z
11
12 \81@\81@1.T80_IP\82Å\82Í\81A1.5MHz\93®\8dì\82Å\82µ\82½\82ª\81@V2.50\82©\82ç\81@3.0MHz\82Å\93®\8dì\82µ\82Ä\82¢\82Ü\82·.
13
14 \81@\81@2.V1.xx\82Å\82Í\81A\83f\83o\83C\83X\82âCPU_IP\82É\82æ\82Á\82Ä\95ª\82©\82ê\82Ä\82¢\82½\83t\83@\83C\83\8b\82ð\88ê\82Â\82É\91\8d\8d\87\82µ\82Ü\82µ\82½\81B
15
16 \81@\81@\81@\82½\82¾\82µ\81@\83f\83o\83C\83X\82É\82æ\82è\8d\\92z\95û\96@\82ª\88Ù\82È\82é\82½\82ß\81@\83f\83o\83C\83X\95Ê\82Ì\83e\83L\83X\83g\82ð\8eQ\8fÆ\82µ\82Ä\89º\82³\82¢\81B
17
18 \81y\81@\95K\97v\82ÈHARD\81@\81z
19 \81@1.\81@ALTERA\81@CPLD.FPGA\8aJ\94­Tool\81@¢Quartus II 4.0 SP1 Web Edition£\81@\82ª\93®\8dì\82·\82éPC
20 \81@\81@\81@ *OS\82Í\81AWINDOWS2000\81@or\81@WINDOWS\81@XP
21
22 \81@2.\81@ALTERA BYTE BLASTER-MV Parallel Port Download Cable \96\94\82Í\81AEPCS4(Config-ROM)\82É\8f\91\82«\8d\9e\82Þ\8fê\8d\87\82Í\81A
23 \81@\81@\81@ALTERA BYTE BLASTER-\87U Parallel Port Download Cable\81@\82ª\95K\97v\81B
24
25 \81@3.\81@ALTERA FPGA DEVICE
26
27 \81y\81@\95K\97v\82ÈSOFT\81@\81z
28 \81@1.\81@ALTERA_Quartus\87U_WebEdition_ver4.0
29 \81@\81@\81@\89º\8bLURL\82æ\82è\81@\83_\83E\83\93\83\8d\81[\83h\82µ\82Ä\82­\82¾\82³\82¢\81B\8bN\93®\82·\82é\82½\82ß\82É\82Í\81A\83\89\83C\83Z\83\93\83X\82ª\95K\97v\82É\82È\82é\82Ì\82ÅFree\82Ì
30 \81@\81@\81@\83\89\83C\83Z\83\93\83X\82ð\8eæ\93¾\82µ\82Ä\82­\82¾\82³\82¢\81B
31 \81@\81@\81@http://www.altera.com/products/software/pld/products/quartus2/sof-quarwebmain.html
32
33 \81@2.\81@bhc.exe /* Binary data <-> Intel Hex data Converter Ver 1.0.3 */
34 \89º\8bLURL\82æ\82è\81@\83_\83E\83\93\83\8d\81[\83h\82µ\82Ä\82­\82¾\82³\82¢\81B \89ð\93\80\8cã\81@bhc.exe\82ð"\make_rom"\83t\83H\83\8b\83_\82É\83R\83s\81[ \82·\82é\81B
35 \81@\81@\81@http://www.vector.co.jp/soft/win95/util/se057995.html\81@
36
37 \81y\81@GALAXIAN ROM-\8d\\92z\81@\81z
38 \81@1.\81@GALAXIAN \8aî\94Â\82ÌROM\83f\81[\83^\82ð\89º\8bLFile\96¼\82Å\83R\83s\81[\82·\82é\81B
39
40 \81@\81@ IC(ROM) \81@ \81@\81@ADDERSS (SIZE)\81@\81@\81@\81@\81@File-Name
41 7H \81@0x0000 - 0x07FF(0x0800) galmidw.u
42 0x0800 - 0x0FFF(0x0800) galmidw.v
43 0x1000 - 0x17FF(0x0800) galmidw.w
44 0x1800 - 0x1FFF(0x0800) galmidw.y
45 7L \81@0x2000 - 0x27FF(0x0800) 7l
46 1K (0x0800) 1k.bin
47 1H (0x0800) 1h.bin
48 6L (0x0020) 6l.bpr
49
50 \81@\81@\81@\81@\81@\81@\81@\81@\81@\81@\81@\81@\81@\81@\81@* File\96¼\82Í\81A\83A\81[\83P\81[\83h\83G\83~\83\85\83\8c\81[\83^\81[\82Æ\82µ\82Ä\8dÅ\82à\97L\96¼\82È
51 \81@\81@\81@\81@\81@\81@\81@\81@\81@\81@\81@\81@\81@\81@\81@\81@\81@\81@M.A.M.E(http://www.mame.net/)\82É\8d\87\82í\82¹\82Ä\82¢\82Ü\82·.
52
53 \81@2.\81@1.\82ÌROM-File\82ð"\make_rom"\83t\83H\83\8b\83_\82É\83R\83s\81[\82·\82é\81B
54 \81@3.\81@make_rom.bat \82ð\8eÀ\8ds
55
56 address map
57 --------------------------------------------------
58 0x00000 - 0x007FF galmidw.u CPU-ROM
59 0x00800 - 0x00FFF galmidw.v CPU-ROM
60 0x01000 - 0x017FF galmidw.w CPU-ROM
61 0x01800 - 0x01FFF galmidw.y CPU-ROM
62 0x02000 - 0x027FF 7l CPU-ROM
63 0x04000 - 0x047FF 1k.bin VID-ROM
64 0x05000 - 0x057FF 1h.bin VID-ROM
65 0x10000 - 0x3FFFF mc_wav_2.bin Sound(Wav)Data
66
67 \81@4.\81@galaxian_sf.bin\81@\82ðROM \82É\83_\83E\83\93\83\8d\81[\83h\82·\82é\81B
68 \81@\81@\81@\81@ROM \82Í\81A\97e\97Ê\82ª\81@2Mbit\81@\88È\8fã\82ÌEP-ROM\81@or\81@EEP-ROM\81@\82ð\8eg\97p\82·\82é\81B
69 5.\81@galaxian_prj\83t\83H\83\8b\83_\89º\82É\81@6l.hex\81@\82ª\8fo\97\88\82Ä\82¢\82é\82±\82Æ\82ð\8am\94F\82µ\82Ä\82­\82¾\82³\82¢\81B
70 \81@\81@\81@\81@
71 \81y\81@ALTERA-FPGA-DATA(mc_top.pof)\82Ì\8dì\90¬\81\95\83_\83E\83\93\83\8d\81[\83h\81@\81z
72 \82P\81Dgalaxian_prj\83t\83H\83\8b\83_\82Ì\81hmc_top.quartus\81h\82ð\83_\83u\83\8b\83N\83\8a\83b\83N\82µ\82ÄQuartus\87U\82ð\8bN\93®\82µ\82Ä\82­\82¾\82³\82¢\81B
73 \81@\81@FPGA-GALAXIAN \82É\95K\97v\82ÈFile\82ð\89º\8bL\82É\8bL\8dÚ\82µ\82Ü\82·\81B
74
75 VERILOG_FILE = src\mc_top.v;
76 VERILOG_FILE = src\mc_clock.v;
77 VERILOG_FILE = src\mc_adec.v;
78 VERILOG_FILE = src\mc_inport.v;
79 VERILOG_FILE = src\mc_hv_count.v;
80 VERILOG_FILE = src\mc_ld_pls.v;
81 VERILOG_FILE = src\mc_video.v;
82 VERILOG_FILE = src\mc_missile.v;
83 VERILOG_FILE = src\mc_stars.v;
84 VERILOG_FILE = src\mc_col_pal.v;
85 VERILOG_FILE = src\mc_vedio_mix.v;
86 VERILOG_FILE = src\mc_vga_if_alt.v;
87 VERILOG_FILE = src\mc_sound_a.v;
88 VERILOG_FILE = src\mc_sound_b.v;
89 VERILOG_FILE = src\mc_logic.v;
90 VERILOG_FILE = src\mc_bram_if_alt.v;
91 VERILOG_FILE = src\psPAD_conf.v;
92 VERILOG_FILE = src\psPAD_top.v;
93 VERILOG_FILE = src\fpga_arcade_if.v;
94 VERILOG_FILE = src\alt_ram_256_5.v;
95 VERILOG_FILE = src\alt_ram_256_8.v;
96 VERILOG_FILE = src\alt_ram_1024_8.v;
97 VERILOG_FILE = src\alt_rom_6l.v;
98 VERILOG_FILE = src\dac.v;
99 VERILOG_FILE = src\z80ip.v;
100 VHDL_FILE = t80_ip\T80_Pack.vhd;
101 VHDL_FILE = t80_ip\T80_ALU.VHD;
102 VHDL_FILE = t80_ip\T80_MCode.vhd;
103 VHDL_FILE = t80_ip\T80_Reg.vhd;
104 VHDL_FILE = t80_ip\T80.VHD;
105 VHDL_FILE = t80_ip\T80as.vhd;
106
107 \82Q\81DFPGA\82ÌIN/OUT\82ÌPIN\94z\92u\82Ì\90Ý\92è\82ð\82µ\82Ä\82­\82¾\82³\82¢\81B
108
109 \82R\81Dplaystation\82Ì\83R\83\93\83g\83\8d\81[\83\89\82ð\8eg\97p\82·\82é\8fê\8d\87\82Í\81Amc_conf.v \82Ì\81@\81h`define PSPAD_USE\81h\82Ì
110 \81@\81@\83R\83\81\83\93\83g\83A\83E\83g\82ð\8aO\82µ\82Ä\89º\82³\82¢.
111 \81@\81@\81@\81@\81@//\81@`define PSPAD_USE\81@\81@\81Ë\81@`define PSPAD_USE
112
113 \82S\81D\83\82\83j\83^\82Í\81APC\97p\82ÌVGA\83\82\83j\83^\82ð\90\84\8f§\82µ\82Ü\82·.\81@\82µ\82©\82µ16KH\82\9a(H).60Hz(V)\82ÌRGB\83\82\83j\83^\82à\8eg\97p\82·\82é
114 \81@\81@\82±\82Æ\82ª\8fo\97\88\82Ü\82·.\81@\82±\82Ì\8fê\8d\87\81Amc_conf.v \82Ì\81@\81h`define VGA_USE\81h\82ð\83R\83\81\83\93\83g\83A\83E\83g\82µ\82Ä\89º\82³\82¢.
115 \81@\81@\81@\81@\81@\81@`define VGA_USE\81@\81@\81Ë\81@// `define VGA_USE
116
117 \82T\81DQuartus\87U\81ËProcessing\81ËStart Compilation \82ð\83N\83\8a\83b\83N\82µ\82Ä\83R\83\93\83p\83C\83\8b\82ð\8eÀ\8ds
118 \81@\81@\81@\81@\81@\81@\81@
119 \81@\81@Fitting\82ª\90¬\8c÷\82·\82é\82Æ\89º\8bL\83\81\83b\83Z\81[\83W\82ª\95\\8e¦\82³\82ê\82Ü\82·\81B
120 +---------------------------------------------------------------+
121 ; Fitter Summary ;
122 +-----------------------+---------------------------------------+
123 ; Fitter Status ; Successful - Sat Sep 18 12:34:48 2004 ;
124 ; Revision Name ; mc_top ;
125 ; Top-level Entity Name ; mc_top ;
126 ; Family ; Cyclone ;
127 ; Device ; EP1C12Q240C8 ;
128 ; Total logic elements ; 3,046 / 12,060 ( 23 % ) ;
129 ; Total pins ; 59 / 173 ( 34 % ) ;
130 ; Total memory bits ; 24,064 / 239,616 ( 10 % ) ;
131 ; Total PLLs ; 0 / 2 ( 0 % ) ;
132 +-----------------------+---------------------------------------+
133
134 \82U\81DQuartus\87U\82É\82æ\82Á\82Ä\90\90¬\82³\82ê\82½\81hmc_top.pof\81h\82ð\83_\83E\83\93\83\8d\81[\83h\82µ\82Ä\8a®\97¹\82Å\82·\81B
135
136 \81y\81@FPGA-MoonCresta \83R\83\93\83g\83\8d\81[\83\8b\81@\81z
137 \81@\81y I_PSW[4:0] \81z
138 \81@LEFT 1P/2P : LEFT (I_SW[2])
139 \81@RIGHT 1P/2P : RIGHT (I_SW[3])
140 \81@UP 1P/2P : UP (I_SW[0]) ... NOT USE
141 \81@DOWN 1P/2P : DOWN (I_SW[1]) ... NOT USE
142 \81@FIRE\81@1P/2P : JP (I_SW[4])
143 \81@START 1P : LEFT + JP
144 \81@START 2P : RIGHT + JP
145 \81@COIN1 : LEFT + RIGHT + UP (and DOWN off)
146
147 \81y PS_PAD \81z
148 \81@LEFT 1P/2P : LEFT\81@\81iRight Joystick\81j
149 \81@RIGHT 1P/2P : RIGHT \81iRight Joystick\81j
150 \81@UP 1P/2P : UP \81iRight Joystick\81j ... NOT USE
151 \81@DOWN 1P/2P : DOWN \81iRight Joystick\81j ... NOT USE
152 \81@FIRE\81@1P/2P : \81«
153 \81@START 1P : START
154 \81@START 2P : SELCT
155 \81@COIN1 : \81\9b
156
157 Enjoy!
158 \81@
159 \81y\81@\92\98\8dì\8c \81\95\96Æ\90Ó\81@\81z
160 \81@fpga-galaxian\81@\82Ì\92\98\8dì\8c \82Í\81AKatsumi Degawa \82É\91®\82µ\82Ü\82·.
161 \81@fpga-mooncresta\82Ì\92\98\8dì\8c \82Í\81AKatsumi Degawa \82É\91®\82µ\82Ü\82·.
162 \81@pspad\81@\81@\81@ \82Ì\92\98\8dì\8c \82Í\81AKatsumi Degawa \82É\91®\82µ\82Ü\82·.
163 \81@T80(Z80_IP)\81@\81@\82Ì\92\98\8dì\8c \82Í\81ADaniel Wallner\8e\81 \82É\91®\82µ\82Ü\82·.
164
165 \81@\96{\83\\81[\83X\83t\83@\83C\83\8b\82ð\8eg\97p\82µ\82½\82±\82Æ\82É\82æ\82è\90\82\82½\82¢\82©\82È\82é\8fá\8aQ\81A\91¹\8aQ\82É\82¨\82¢\82Ä\8dì\8eÒ\82Í\88ê\90Ø\90Ó\94C\82ð\95\89\82í
166 \82È\82¢\82à\82Ì\82Æ\82µ\82Ü\82·\81B
167 \81@\8ae\8e©\82Ì\90Ó\94C\82É\82¨\82¢\82Ä\8eg\97p\82µ\82Ä\82­\82¾\82³\82¢\81B
168
169 \81y\81@\98A\97\8d\90æ\81@\81z
170 \81@\82²\88Ó\8c©\81A\82²\97v\96]\93\99\82 \82è\82Ü\82è\82½\82ç\90¥\94ñ\88È\89º\82Ì\82Ü\82Å\82²\98A\97\8d\82ð\82¨\8aè\82¢\82µ\82Ü\82·\81B
171 \81@\82½\82¾\82µROM\83C\83\81\81[\83W\93\99\82Ì\82²\8e¿\96â\82Í\81A\82¨\93\9a\82¦\82Å\82«\82Ü\82¹\82ñ\81B
172
173 E-mail : office_dsan@infoseek.jp
174
Impressum, Datenschutz