From 53d89bc203fceac3e3489881ead16d9bf582ff33 Mon Sep 17 00:00:00 2001 From: antoniovillena Date: Tue, 3 May 2016 18:16:17 +0200 Subject: [PATCH] Limpio --- cores/Apple2/apple2.xise | 420 ------------------------ cores/Apple2/build/APPLE2_TOP.prj | 15 + cores/Apple2/build/APPLE2_TOP.ut | 30 ++ cores/Apple2/build/APPLE2_TOP.xst | 52 +++ cores/Apple2/make.bat | 16 + cores/Apple2/source/apple2_zxuno_Ap.ucf | 91 +++++ cores/Apple2/source/apple2_zxuno_v4.ucf | 91 +++++ cores/Apple2/source/pines_zxuno_Ap.ucf | 91 +++++ cores/Apple2/source/pines_zxuno_v4.ucf | 91 +++++ 9 files changed, 477 insertions(+), 420 deletions(-) delete mode 100644 cores/Apple2/apple2.xise create mode 100644 cores/Apple2/build/APPLE2_TOP.prj create mode 100644 cores/Apple2/build/APPLE2_TOP.ut create mode 100644 cores/Apple2/build/APPLE2_TOP.xst create mode 100644 cores/Apple2/make.bat create mode 100644 cores/Apple2/source/apple2_zxuno_Ap.ucf create mode 100644 cores/Apple2/source/apple2_zxuno_v4.ucf create mode 100644 cores/Apple2/source/pines_zxuno_Ap.ucf create mode 100644 cores/Apple2/source/pines_zxuno_v4.ucf diff --git a/cores/Apple2/apple2.xise b/cores/Apple2/apple2.xise deleted file mode 100644 index 8eb89be..0000000 --- a/cores/Apple2/apple2.xise +++ /dev/null @@ -1,420 +0,0 @@ - - - -
- - - - - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
diff --git a/cores/Apple2/build/APPLE2_TOP.prj b/cores/Apple2/build/APPLE2_TOP.prj new file mode 100644 index 0000000..c24450c --- /dev/null +++ b/cores/Apple2/build/APPLE2_TOP.prj @@ -0,0 +1,15 @@ +vhdl work "../source/character_rom.vhd" +vhdl work "../source/video_generator.vhd" +vhdl work "../source/timing_generator.vhd" +vhdl work "../source/PS2_Ctrl.vhd" +vhdl work "../source/main_roms.vhd" +vhdl work "../source/disk_ii_rom.vhd" +vhdl work "../source/cpu6502.vhd" +vhdl work "../source/vga_controller.vhd" +vhdl work "../source/spi_controller.vhd" +vhdl work "../source/keyboard.vhd" +vhdl work "../source/disk_ii.vhd" +vhdl work "../source/dac.vhd" +vhdl work "../source/clocks.vhd" +vhdl work "../source/apple2.vhd" +vhdl work "../source/apple2_top.vhd" diff --git a/cores/Apple2/build/APPLE2_TOP.ut b/cores/Apple2/build/APPLE2_TOP.ut new file mode 100644 index 0000000..dfd4060 --- /dev/null +++ b/cores/Apple2/build/APPLE2_TOP.ut @@ -0,0 +1,30 @@ +-w +-g Binary:no +-g Compress +-g CRC:Enable +-g Reset_on_err:No +-g ConfigRate:2 +-g ProgPin:PullUp +-g TckPin:PullUp +-g TdiPin:PullUp +-g TdoPin:PullUp +-g TmsPin:PullUp +-g UnusedPin:PullDown +-g UserID:0xFFFFFFFF +-g ExtMasterCclk_en:No +-g SPI_buswidth:1 +-g TIMER_CFG:0xFFFF +-g multipin_wakeup:No +-g StartUpClk:CClk +-g DONE_cycle:4 +-g GTS_cycle:5 +-g GWE_cycle:6 +-g LCK_cycle:NoWait +-g Security:None +-g DonePipe:Yes +-g DriveDone:No +-g en_sw_gsr:No +-g drive_awake:No +-g sw_clk:Startupclk +-g sw_gwe_cycle:5 +-g sw_gts_cycle:4 diff --git a/cores/Apple2/build/APPLE2_TOP.xst b/cores/Apple2/build/APPLE2_TOP.xst new file mode 100644 index 0000000..5a89d6b --- /dev/null +++ b/cores/Apple2/build/APPLE2_TOP.xst @@ -0,0 +1,52 @@ +set -tmpdir "projnav.tmp" +set -xsthdpdir "xst" +run +-ifn build\APPLE2_TOP.prj +-ofn APPLE2_TOP +-ofmt NGC +-p xc6slx9-2-tqg144 +-top APPLE2_TOP +-opt_mode Speed +-opt_level 1 +-power NO +-iuc NO +-keep_hierarchy No +-netlist_hierarchy As_Optimized +-rtlview Yes +-glob_opt AllClockNets +-read_cores YES +-write_timing_constraints NO +-cross_clock_analysis NO +-hierarchy_separator / +-bus_delimiter <> +-case Maintain +-slice_utilization_ratio 100 +-bram_utilization_ratio 100 +-dsp_utilization_ratio 100 +-lc Auto +-reduce_control_sets Auto +-fsm_extract YES -fsm_encoding Auto +-safe_implementation No +-fsm_style LUT +-ram_extract Yes +-ram_style Auto +-rom_extract Yes +-shreg_extract YES +-rom_style Auto +-auto_bram_packing NO +-resource_sharing YES +-async_to_sync NO +-shreg_min_size 2 +-use_dsp48 Auto +-iobuf YES +-max_fanout 100000 +-bufg 16 +-register_duplication YES +-register_balancing No +-optimize_primitives NO +-use_clock_enable Auto +-use_sync_set Auto +-use_sync_reset Auto +-iob Auto +-equivalent_register_removal YES +-slice_utilization_ratio_maxmargin 5 diff --git a/cores/Apple2/make.bat b/cores/Apple2/make.bat new file mode 100644 index 0000000..f88f5ca --- /dev/null +++ b/cores/Apple2/make.bat @@ -0,0 +1,16 @@ +if not exist projnav.tmp mkdir projnav.tmp +call xst -intstyle ise -ifn build/APPLE2_TOP.xst -ofn build/APPLE2_TOP.syr +call :generar v2 +call :generar v3 +call :generar v4 +call :generar Ap +goto :eof + +:generar +call ngdbuild -intstyle ise -dd _ngo -nt timestamp -uc source/apple2_zxuno_%1.ucf -p xc6slx9-tqg144-2 build\APPLE2_TOP.ngc build\APPLE2_TOP.ngd +call map -intstyle ise -w -ol high -mt 2 -p xc6slx9-tqg144-2 -logic_opt off -t 1 -xt 0 -register_duplication off -r 4 -global_opt off -ir off -pr off -lc off -power off -o build\APPLE2_TOP_map.ncd build\APPLE2_TOP.ngd build\APPLE2_TOP.pcf +call par -intstyle ise -w -ol high -mt 4 build\APPLE2_TOP_map.ncd build\APPLE2_TOP.ncd build\APPLE2_TOP.pcf +call trce -intstyle ise -v 3 -s 2 -n 3 -fastpaths -xml build\APPLE2_TOP.twx build\APPLE2_TOP.ncd -o build\APPLE2_TOP.twr build\APPLE2_TOP.pcf +call bitgen -intstyle ise -f build\APPLE2_TOP.ut build\APPLE2_TOP.ncd +copy /y apple2_top.bit Apple2.%1.bit +:eof \ No newline at end of file diff --git a/cores/Apple2/source/apple2_zxuno_Ap.ucf b/cores/Apple2/source/apple2_zxuno_Ap.ucf new file mode 100644 index 0000000..16ebbb3 --- /dev/null +++ b/cores/Apple2/source/apple2_zxuno_Ap.ucf @@ -0,0 +1,91 @@ +# UCF for ZX-UNO +NET CLOCK50 LOC="P55" | IOSTANDARD = LVCMOS33 | PERIOD=20.0ns; +NET LED LOC="P2" | IOSTANDARD = LVCMOS33; + +# Video output +NET VGA_R(2) LOC="P97" | IOSTANDARD = LVCMOS33 | DRIVE=8 | SLEW=FAST; +NET VGA_R(1) LOC="P95" | IOSTANDARD = LVCMOS33 | DRIVE=8 | SLEW=FAST; +NET VGA_R(0) LOC="P94" | IOSTANDARD = LVCMOS33 | DRIVE=8 | SLEW=FAST; +NET VGA_G(2) LOC="P88" | IOSTANDARD = LVCMOS33 | DRIVE=8 | SLEW=FAST; +NET VGA_G(1) LOC="P87" | IOSTANDARD = LVCMOS33 | DRIVE=8 | SLEW=FAST; +NET VGA_G(0) LOC="P85" | IOSTANDARD = LVCMOS33 | DRIVE=8 | SLEW=FAST; +NET VGA_B(2) LOC="P84" | IOSTANDARD = LVCMOS33 | DRIVE=8 | SLEW=FAST; +NET VGA_B(1) LOC="P83" | IOSTANDARD = LVCMOS33 | DRIVE=8 | SLEW=FAST; +NET VGA_B(0) LOC="P82" | IOSTANDARD = LVCMOS33 | DRIVE=8 | SLEW=FAST; +NET VGA_HS LOC="P93" | IOSTANDARD = LVCMOS33 | DRIVE=8 | SLEW=FAST; +NET VGA_VS LOC="P92" | IOSTANDARD = LVCMOS33 | DRIVE=8 | SLEW=FAST; +#NET "stdn" LOC="P51" | IOSTANDARD = LVCMOS33; +#NET "stdnb" LOC="P50" | IOSTANDARD = LVCMOS33; + +# Sound input/output +NET O_AUDIO_L LOC="P98" | IOSTANDARD = LVCMOS33 | DRIVE=8 | SLEW=FAST; +NET O_AUDIO_R LOC="P99" | IOSTANDARD = LVCMOS33 | DRIVE=8 | SLEW=FAST; +#NET "ear" LOC="P1" | IOSTANDARD = LVCMOS33; + +# Keyboard and mouse +NET PS2_CLK LOC="P143" | IOSTANDARD = LVCMOS33; +NET PS2_DAT LOC="P142" | IOSTANDARD = LVCMOS33; +#NET "mouseclk" LOC="P57" | IOSTANDARD = LVCMOS33 | PULLUP; +#NET "mousedata" LOC="P56" | IOSTANDARD = LVCMOS33 | PULLUP; + +# SRAM +NET SRAM_ADDR<0> LOC="P115" | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<1> LOC="P116" | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<2> LOC="P117" | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<3> LOC="P119" | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<4> LOC="P120" | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<5> LOC="P123" | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<6> LOC="P126" | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<7> LOC="P131" | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<8> LOC="P127" | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<9> LOC="P124" | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<10> LOC="P118" | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<11> LOC="P121" | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<12> LOC="P133" | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<13> LOC="P132" | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<14> LOC="P137" | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<15> LOC="P140" | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<16> LOC="P139" | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<17> LOC="P141" | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<18> LOC="P138" | IOSTANDARD = LVCMOS33; +#NET "sram_addr<19>" LOC="P111" | IOSTANDARD = LVCMOS33; +#NET "sram_addr<20>" LOC="P138" | IOSTANDARD = LVCMOS33; + +NET SRAM_DQ<0> LOC="P114" | IOSTANDARD = LVCMOS33; +NET SRAM_DQ<1> LOC="P112" | IOSTANDARD = LVCMOS33; +NET SRAM_DQ<2> LOC="P111" | IOSTANDARD = LVCMOS33; +NET SRAM_DQ<3> LOC="P105" | IOSTANDARD = LVCMOS33; +NET SRAM_DQ<4> LOC="P104" | IOSTANDARD = LVCMOS33; +NET SRAM_DQ<5> LOC="P102" | IOSTANDARD = LVCMOS33; +NET SRAM_DQ<6> LOC="P101" | IOSTANDARD = LVCMOS33; +NET SRAM_DQ<7> LOC="P100" | IOSTANDARD = LVCMOS33; + +NET SRAM_WE_N LOC="P134" | IOSTANDARD = LVCMOS33; + +# SPI Flash +#NET "flash_cs_n" LOC="P38" | IOSTANDARD = LVCMOS33; +#NET "flash_clk" LOC="P70" | IOSTANDARD = LVCMOS33; +#NET "flash_mosi" LOC="P64" | IOSTANDARD = LVCMOS33; +#NET "flash_miso" LOC="P65" | IOSTANDARD = LVCMOS33; +#NET "flash_ext1" LOC="P62" | IOSTANDARD = LVCMOS33; +#NET "flash_ext2" LOC="P61" | IOSTANDARD = LVCMOS33; + +# SD/MMC +NET SD_DAT3 LOC="P78" | IOSTANDARD = LVCMOS33 | DRIVE=8 | SLEW=FAST; +NET SD_CLK LOC="P80" | IOSTANDARD = LVCMOS33 | DRIVE=8 | SLEW=FAST; +NET SD_CMD LOC="P79" | IOSTANDARD = LVCMOS33 | DRIVE=8 | SLEW=FAST; +NET SD_DAT LOC="P81" | IOSTANDARD = LVCMOS33; + +# JOYSTICK +NET JOYSTICK1(3) LOC="P74" | IOSTANDARD = LVCMOS33 | PULLUP; +NET JOYSTICK1(2) LOC="P67" | IOSTANDARD = LVCMOS33 | PULLUP; +NET JOYSTICK1(1) LOC="P59" | IOSTANDARD = LVCMOS33 | PULLUP; +NET JOYSTICK1(0) LOC="P58" | IOSTANDARD = LVCMOS33 | PULLUP; +NET BTN2 LOC="P75" | IOSTANDARD = LVCMOS33 | PULLUP; +NET JOYSTICK1(4) LOC="P8" | IOSTANDARD = LVCMOS33 | PULLUP; +#NET "joyfire3" LOC="P39" | IOSTANDARD = LVCMOS33 | PULLUP; + + +# Otros +NET I_RESET LOC="P51" | IOSTANDARD = LVCMOS33 | DRIVE=8 | SLEW=FAST; +#NET LED2 LOC="P11" | IOSTANDARD = LVCMOS33; diff --git a/cores/Apple2/source/apple2_zxuno_v4.ucf b/cores/Apple2/source/apple2_zxuno_v4.ucf new file mode 100644 index 0000000..b13a49d --- /dev/null +++ b/cores/Apple2/source/apple2_zxuno_v4.ucf @@ -0,0 +1,91 @@ +# UCF for ZX-UNO +NET CLOCK50 LOC="P55" | IOSTANDARD = LVCMOS33 | PERIOD=20.0ns; +NET LED LOC="P11" | IOSTANDARD = LVCMOS33; + +# Video output +NET VGA_R(2) LOC="P81" | IOSTANDARD = LVCMOS33 | DRIVE=8 | SLEW=FAST; +NET VGA_R(1) LOC="P80" | IOSTANDARD = LVCMOS33 | DRIVE=8 | SLEW=FAST; +NET VGA_R(0) LOC="P79" | IOSTANDARD = LVCMOS33 | DRIVE=8 | SLEW=FAST; +NET VGA_G(2) LOC="P84" | IOSTANDARD = LVCMOS33 | DRIVE=8 | SLEW=FAST; +NET VGA_G(1) LOC="P83" | IOSTANDARD = LVCMOS33 | DRIVE=8 | SLEW=FAST; +NET VGA_G(0) LOC="P82" | IOSTANDARD = LVCMOS33 | DRIVE=8 | SLEW=FAST; +NET VGA_B(2) LOC="P93" | IOSTANDARD = LVCMOS33 | DRIVE=8 | SLEW=FAST; +NET VGA_B(1) LOC="P92" | IOSTANDARD = LVCMOS33 | DRIVE=8 | SLEW=FAST; +NET VGA_B(0) LOC="P88" | IOSTANDARD = LVCMOS33 | DRIVE=8 | SLEW=FAST; +NET VGA_HS LOC="P87" | IOSTANDARD = LVCMOS33 | DRIVE=8 | SLEW=FAST; +NET VGA_VS LOC="P85" | IOSTANDARD = LVCMOS33 | DRIVE=8 | SLEW=FAST; +#NET "stdn" LOC="P66" | IOSTANDARD = LVCMOS33; +#NET "stdnb" LOC="P67" | IOSTANDARD = LVCMOS33; + +# Sound input/output +NET O_AUDIO_L LOC="P10" | IOSTANDARD = LVCMOS33 | DRIVE=8 | SLEW=FAST; +NET O_AUDIO_R LOC="P9" | IOSTANDARD = LVCMOS33 | DRIVE=8 | SLEW=FAST; +#NET "ear" LOC="P94" | IOSTANDARD = LVCMOS33; + +# Keyboard and mouse +NET PS2_CLK LOC="P99" | IOSTANDARD = LVCMOS33; +NET PS2_DAT LOC="P98" | IOSTANDARD = LVCMOS33; +#NET "mouseclk" LOC="P95" | IOSTANDARD = LVCMOS33 | PULLUP; +#NET "mousedata" LOC="P97" | IOSTANDARD = LVCMOS33 | PULLUP; + +# SRAM +NET SRAM_ADDR<0> LOC="P141" | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<1> LOC="P139" | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<2> LOC="P137" | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<3> LOC="P134" | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<4> LOC="P133" | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<5> LOC="P120" | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<6> LOC="P118" | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<7> LOC="P116" | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<8> LOC="P114" | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<9> LOC="P112 | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<10> LOC="P104" | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<11> LOC="P102" | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<12> LOC="P101" | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<13> LOC="P100" | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<14> LOC="P111" | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<15> LOC="P131" | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<16> LOC="P138" | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<17> LOC="P140" | IOSTANDARD = LVCMOS33; +NET SRAM_ADDR<18> LOC="P142" | IOSTANDARD = LVCMOS33; +#NET "sram_addr<19>" LOC="P105" | IOSTANDARD = LVCMOS33; +#NET "sram_addr<20>" LOC="P143" | IOSTANDARD = LVCMOS33; + +NET SRAM_DQ(0) LOC="P132" | IOSTANDARD = LVCMOS33; +NET SRAM_DQ(1) LOC="P127" | IOSTANDARD = LVCMOS33; +NET SRAM_DQ(2) LOC="P124" | IOSTANDARD = LVCMOS33; +NET SRAM_DQ(3) LOC="P123" | IOSTANDARD = LVCMOS33; +NET SRAM_DQ(4) LOC="P115" | IOSTANDARD = LVCMOS33; +NET SRAM_DQ(5) LOC="P117" | IOSTANDARD = LVCMOS33; +NET SRAM_DQ(6) LOC="P119" | IOSTANDARD = LVCMOS33; +NET SRAM_DQ(7) LOC="P126" | IOSTANDARD = LVCMOS33; + +NET SRAM_WE_N LOC="P121" | IOSTANDARD = LVCMOS33; + +# SPI Flash +#NET "flash_cs_n" LOC="P38" | IOSTANDARD = LVCMOS33; +#NET "flash_clk" LOC="P70" | IOSTANDARD = LVCMOS33; +#NET "flash_mosi" LOC="P64" | IOSTANDARD = LVCMOS33; +#NET "flash_miso" LOC="P65" | IOSTANDARD = LVCMOS33; +#NET "flash_ext1" LOC="P62" | IOSTANDARD = LVCMOS33; +#NET "flash_ext2" LOC="P61" | IOSTANDARD = LVCMOS33; + +# SD/MMC +NET SD_DAT3 LOC="P59" | IOSTANDARD = LVCMOS33 | DRIVE=8 | SLEW=FAST; +NET SD_CLK LOC="P75" | IOSTANDARD = LVCMOS33 | DRIVE=8 | SLEW=FAST; +NET SD_CMD LOC="P74" | IOSTANDARD = LVCMOS33 | DRIVE=8 | SLEW=FAST; +NET SD_DAT LOC="P78" | IOSTANDARD = LVCMOS33; + +# JOYSTICK +NET JOYSTICK1(3) LOC="P1" | IOSTANDARD = LVCMOS33 | PULLUP; +NET JOYSTICK1(2) LOC="P5" | IOSTANDARD = LVCMOS33 | PULLUP; +NET JOYSTICK1(1) LOC="P6" | IOSTANDARD = LVCMOS33 | PULLUP; +NET JOYSTICK1(0) LOC="P7" | IOSTANDARD = LVCMOS33 | PULLUP; +NET BTN2 LOC="P2" | IOSTANDARD = LVCMOS33 | PULLUP; +NET JOYSTICK1(4) LOC="P8" | IOSTANDARD = LVCMOS33 | PULLUP; +#NET "joyfire3" LOC="P39" | IOSTANDARD = LVCMOS33 | PULLUP; + + +# Otros +NET I_RESET LOC="P51" | IOSTANDARD = LVCMOS33 | DRIVE=8 | SLEW=FAST; +#NET LED2 LOC="P11" | IOSTANDARD = LVCMOS33; diff --git a/cores/Apple2/source/pines_zxuno_Ap.ucf b/cores/Apple2/source/pines_zxuno_Ap.ucf new file mode 100644 index 0000000..de59282 --- /dev/null +++ b/cores/Apple2/source/pines_zxuno_Ap.ucf @@ -0,0 +1,91 @@ +# Clocks & debug +NET "clk50mhz" LOC="P55" | IOSTANDARD = LVCMOS33 | PERIOD=20.0ns; +NET "testled" LOC="P2" | IOSTANDARD = LVCMOS33; + +# Video output +NET "r<2>" LOC="P97" | IOSTANDARD = LVCMOS33; +NET "r<1>" LOC="P95" | IOSTANDARD = LVCMOS33; +NET "r<0>" LOC="P94" | IOSTANDARD = LVCMOS33; +NET "g<2>" LOC="P88" | IOSTANDARD = LVCMOS33; +NET "g<1>" LOC="P87" | IOSTANDARD = LVCMOS33; +NET "g<0>" LOC="P85" | IOSTANDARD = LVCMOS33; +NET "b<2>" LOC="P84" | IOSTANDARD = LVCMOS33; +NET "b<1>" LOC="P83" | IOSTANDARD = LVCMOS33; +NET "b<0>" LOC="P82" | IOSTANDARD = LVCMOS33; +NET "hsync" LOC="P93" | IOSTANDARD = LVCMOS33; +NET "vsync" LOC="P92" | IOSTANDARD = LVCMOS33; +NET "stdn" LOC="P51" | IOSTANDARD = LVCMOS33; +NET "stdnb" LOC="P50" | IOSTANDARD = LVCMOS33; + +# Sound input/output +NET "audio_out_left" LOC="P98" | IOSTANDARD = LVCMOS33; +NET "audio_out_right" LOC="P99" | IOSTANDARD = LVCMOS33; +NET "ear" LOC="P1" | IOSTANDARD = LVCMOS33; + +# Keyboard and mouse +NET "clkps2" LOC="P143" | IOSTANDARD = LVCMOS33 | PULLUP; +NET "dataps2" LOC="P142" | IOSTANDARD = LVCMOS33 | PULLUP; +NET "mouseclk" LOC="P57" | IOSTANDARD = LVCMOS33 | PULLUP; +NET "mousedata" LOC="P56" | IOSTANDARD = LVCMOS33 | PULLUP; + +# SRAM +NET "sram_addr<0>" LOC="P115" | IOSTANDARD = LVCMOS33; +NET "sram_addr<1>" LOC="P116" | IOSTANDARD = LVCMOS33; +NET "sram_addr<2>" LOC="P117" | IOSTANDARD = LVCMOS33; +NET "sram_addr<3>" LOC="P119" | IOSTANDARD = LVCMOS33; +NET "sram_addr<4>" LOC="P120" | IOSTANDARD = LVCMOS33; +NET "sram_addr<5>" LOC="P123" | IOSTANDARD = LVCMOS33; +NET "sram_addr<6>" LOC="P126" | IOSTANDARD = LVCMOS33; +NET "sram_addr<7>" LOC="P131" | IOSTANDARD = LVCMOS33; +NET "sram_addr<8>" LOC="P127" | IOSTANDARD = LVCMOS33; +NET "sram_addr<9>" LOC="P124" | IOSTANDARD = LVCMOS33; +NET "sram_addr<10>" LOC="P118" | IOSTANDARD = LVCMOS33; +NET "sram_addr<11>" LOC="P121" | IOSTANDARD = LVCMOS33; +NET "sram_addr<12>" LOC="P133" | IOSTANDARD = LVCMOS33; +NET "sram_addr<13>" LOC="P132" | IOSTANDARD = LVCMOS33; +NET "sram_addr<14>" LOC="P137" | IOSTANDARD = LVCMOS33; +NET "sram_addr<15>" LOC="P140" | IOSTANDARD = LVCMOS33; +NET "sram_addr<16>" LOC="P139" | IOSTANDARD = LVCMOS33; +NET "sram_addr<17>" LOC="P141" | IOSTANDARD = LVCMOS33; +NET "sram_addr<18>" LOC="P138" | IOSTANDARD = LVCMOS33; +#NET "sram_addr<19>" LOC="P111" | IOSTANDARD = LVCMOS33; +#NET "sram_addr<20>" LOC="P138" | IOSTANDARD = LVCMOS33; + +NET "sram_data<0>" LOC="P114" | IOSTANDARD = LVCMOS33; +NET "sram_data<1>" LOC="P112" | IOSTANDARD = LVCMOS33; +NET "sram_data<2>" LOC="P111" | IOSTANDARD = LVCMOS33; +NET "sram_data<3>" LOC="P105" | IOSTANDARD = LVCMOS33; +NET "sram_data<4>" LOC="P104" | IOSTANDARD = LVCMOS33; +NET "sram_data<5>" LOC="P102" | IOSTANDARD = LVCMOS33; +NET "sram_data<6>" LOC="P101" | IOSTANDARD = LVCMOS33; +NET "sram_data<7>" LOC="P100" | IOSTANDARD = LVCMOS33; + +NET "sram_we_n" LOC="P134" | IOSTANDARD = LVCMOS33; + +# SPI Flash +NET "flash_cs_n" LOC="P38" | IOSTANDARD = LVCMOS33; +NET "flash_clk" LOC="P70" | IOSTANDARD = LVCMOS33; +NET "flash_mosi" LOC="P64" | IOSTANDARD = LVCMOS33; +NET "flash_miso" LOC="P65" | IOSTANDARD = LVCMOS33; +#NET "flash_ext1" LOC="P62" | IOSTANDARD = LVCMOS33; +#NET "flash_ext2" LOC="P61" | IOSTANDARD = LVCMOS33; + +# SD/MMC +NET "sd_cs_n" LOC="P78" | IOSTANDARD = LVCMOS33; +NET "sd_clk" LOC="P80" | IOSTANDARD = LVCMOS33; +NET "sd_mosi" LOC="P79" | IOSTANDARD = LVCMOS33; +NET "sd_miso" LOC="P81" | IOSTANDARD = LVCMOS33; + +# JOYSTICK +NET "joyup" LOC="P74" | IOSTANDARD = LVCMOS33 | PULLUP; +NET "joydown" LOC="P67" | IOSTANDARD = LVCMOS33 | PULLUP; +NET "joyleft" LOC="P59" | IOSTANDARD = LVCMOS33 | PULLUP; +NET "joyright" LOC="P58" | IOSTANDARD = LVCMOS33 | PULLUP; +NET "joyfire" LOC="P75" | IOSTANDARD = LVCMOS33 | PULLUP; +#NET "joyfire2" LOC="P8" | IOSTANDARD = LVCMOS33 | PULLUP; +#NET "joyfire3" LOC="P39" | IOSTANDARD = LVCMOS33 | PULLUP; + + +# Otros +NET "sysclk" PERIOD=35 ns; + diff --git a/cores/Apple2/source/pines_zxuno_v4.ucf b/cores/Apple2/source/pines_zxuno_v4.ucf new file mode 100644 index 0000000..747e025 --- /dev/null +++ b/cores/Apple2/source/pines_zxuno_v4.ucf @@ -0,0 +1,91 @@ +# Clocks & debug +NET "clk50mhz" LOC="P55" | IOSTANDARD = LVCMOS33 | PERIOD=20.0ns; +NET "testled" LOC="P11" | IOSTANDARD = LVCMOS33; + +# Video output +NET "r<2>" LOC="P81" | IOSTANDARD = LVCMOS33; +NET "r<1>" LOC="P80" | IOSTANDARD = LVCMOS33; +NET "r<0>" LOC="P79" | IOSTANDARD = LVCMOS33; +NET "g<2>" LOC="P84" | IOSTANDARD = LVCMOS33; +NET "g<1>" LOC="P83" | IOSTANDARD = LVCMOS33; +NET "g<0>" LOC="P82" | IOSTANDARD = LVCMOS33; +NET "b<2>" LOC="P93" | IOSTANDARD = LVCMOS33; +NET "b<1>" LOC="P92" | IOSTANDARD = LVCMOS33; +NET "b<0>" LOC="P88" | IOSTANDARD = LVCMOS33; +NET "hsync" LOC="P87" | IOSTANDARD = LVCMOS33; +NET "vsync" LOC="P85" | IOSTANDARD = LVCMOS33; +NET "stdn" LOC="P66" | IOSTANDARD = LVCMOS33; +NET "stdnb" LOC="P67" | IOSTANDARD = LVCMOS33; + +# Sound input/output +NET "audio_out_left" LOC="P10" | IOSTANDARD = LVCMOS33; +NET "audio_out_right" LOC="P9" | IOSTANDARD = LVCMOS33; +NET "ear" LOC="P94" | IOSTANDARD = LVCMOS33; + +# Keyboard and mouse +NET "clkps2" LOC="P99" | IOSTANDARD = LVCMOS33 | PULLUP; +NET "dataps2" LOC="P98" | IOSTANDARD = LVCMOS33 | PULLUP; +NET "mouseclk" LOC="P95" | IOSTANDARD = LVCMOS33 | PULLUP; +NET "mousedata" LOC="P97" | IOSTANDARD = LVCMOS33 | PULLUP; + +# SRAM +NET "sram_addr<0>" LOC="P141" | IOSTANDARD = LVCMOS33; +NET "sram_addr<1>" LOC="P139" | IOSTANDARD = LVCMOS33; +NET "sram_addr<2>" LOC="P137" | IOSTANDARD = LVCMOS33; +NET "sram_addr<3>" LOC="P134" | IOSTANDARD = LVCMOS33; +NET "sram_addr<4>" LOC="P133" | IOSTANDARD = LVCMOS33; +NET "sram_addr<5>" LOC="P120" | IOSTANDARD = LVCMOS33; +NET "sram_addr<6>" LOC="P118" | IOSTANDARD = LVCMOS33; +NET "sram_addr<7>" LOC="P116" | IOSTANDARD = LVCMOS33; +NET "sram_addr<8>" LOC="P114" | IOSTANDARD = LVCMOS33; +NET "sram_addr<9>" LOC="P112" | IOSTANDARD = LVCMOS33; +NET "sram_addr<10>" LOC="P104" | IOSTANDARD = LVCMOS33; +NET "sram_addr<11>" LOC="P102" | IOSTANDARD = LVCMOS33; +NET "sram_addr<12>" LOC="P101" | IOSTANDARD = LVCMOS33; +NET "sram_addr<13>" LOC="P100" | IOSTANDARD = LVCMOS33; +NET "sram_addr<14>" LOC="P111" | IOSTANDARD = LVCMOS33; +NET "sram_addr<15>" LOC="P131" | IOSTANDARD = LVCMOS33; +NET "sram_addr<16>" LOC="P138" | IOSTANDARD = LVCMOS33; +NET "sram_addr<17>" LOC="P140" | IOSTANDARD = LVCMOS33; +NET "sram_addr<18>" LOC="P142" | IOSTANDARD = LVCMOS33; +#NET "sram_addr<19>" LOC="P105" | IOSTANDARD = LVCMOS33; +#NET "sram_addr<20>" LOC="P143" | IOSTANDARD = LVCMOS33; + +NET "sram_data<0>" LOC="P132" | IOSTANDARD = LVCMOS33; +NET "sram_data<1>" LOC="P127" | IOSTANDARD = LVCMOS33; +NET "sram_data<2>" LOC="P124" | IOSTANDARD = LVCMOS33; +NET "sram_data<3>" LOC="P123" | IOSTANDARD = LVCMOS33; +NET "sram_data<4>" LOC="P115" | IOSTANDARD = LVCMOS33; +NET "sram_data<5>" LOC="P117" | IOSTANDARD = LVCMOS33; +NET "sram_data<6>" LOC="P119" | IOSTANDARD = LVCMOS33; +NET "sram_data<7>" LOC="P126" | IOSTANDARD = LVCMOS33; + +NET "sram_we_n" LOC="P121" | IOSTANDARD = LVCMOS33; + +# SPI Flash +NET "flash_cs_n" LOC="P38" | IOSTANDARD = LVCMOS33; +NET "flash_clk" LOC="P70" | IOSTANDARD = LVCMOS33; +NET "flash_mosi" LOC="P64" | IOSTANDARD = LVCMOS33; +NET "flash_miso" LOC="P65" | IOSTANDARD = LVCMOS33; +#NET "flash_ext1" LOC="P62" | IOSTANDARD = LVCMOS33; +#NET "flash_ext2" LOC="P61" | IOSTANDARD = LVCMOS33; + +# SD/MMC +NET "sd_cs_n" LOC="P59" | IOSTANDARD = LVCMOS33; +NET "sd_clk" LOC="P75" | IOSTANDARD = LVCMOS33; +NET "sd_mosi" LOC="P74" | IOSTANDARD = LVCMOS33; +NET "sd_miso" LOC="P78" | IOSTANDARD = LVCMOS33; + +# JOYSTICK +NET "joyup" LOC="P1" | IOSTANDARD = LVCMOS33 | PULLUP; +NET "joydown" LOC="P5" | IOSTANDARD = LVCMOS33 | PULLUP; +NET "joyleft" LOC="P6" | IOSTANDARD = LVCMOS33 | PULLUP; +NET "joyright" LOC="P7" | IOSTANDARD = LVCMOS33 | PULLUP; +NET "joyfire" LOC="P2" | IOSTANDARD = LVCMOS33 | PULLUP; +#NET "joyfire2" LOC="P8" | IOSTANDARD = LVCMOS33 | PULLUP; +#NET "joyfire3" LOC="P39" | IOSTANDARD = LVCMOS33 | PULLUP; + + +# Otros +NET "sysclk" PERIOD=35 ns; +