Skip to content

Commit

Permalink
cleanup
Browse files Browse the repository at this point in the history
  • Loading branch information
vossstef committed Oct 29, 2024
1 parent e0b6af6 commit 0fa61ad
Show file tree
Hide file tree
Showing 7 changed files with 16 additions and 4 deletions.
4 changes: 3 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,13 @@ The A2600Nano is a port of the [MiSTer](https://github.com/MiSTer-devel/Atari260
| Board | FPGA | support |Note|
| --- | - | - |-|
| [Tang Nano 20k](https://wiki.sipeed.com/nano20k) | [GW2AR](https://www.gowinsemi.com/en/product/detail/38/) | X |- |
| [Tang Primer 20K Dock ext Board](https://wiki.sipeed.com/hardware/en/tang/tang-primer-20k/primer-20k.html)| [GW2A](https://www.gowinsemi.com/en/product/detail/46/)| planned |- |
| [Tang Primer 25K](https://wiki.sipeed.com/hardware/en/tang/tang-primer-25k/primer-25k.html) | [GW5A-25](https://www.gowinsemi.com/en/product/detail/60/) | X |no Dualshock 2, no Retro DB9 Joystick |
| [Tang Mega 60k NEO](https://wiki.sipeed.com/hardware/en/tang/tang-mega-60k/mega-60k.html)|[GW5AT-60](https://www.gowinsemi.com/en/product/detail/60/)| planned |- |
| [Tang Mega 138k Pro](https://wiki.sipeed.com/hardware/en/tang/tang-mega-138k/mega-138k-pro.html)|[GW5AST-138](https://www.gowinsemi.com/en/product/detail/60/) | X |- |

This project relies on a [M0S Dock µC](https://wiki.sipeed.com/hardware/en/maixzero/m0s/m0s.html) being connected to the Tang Nano 20K. Alternately you can use a [Raspberry Pi Pico](https://www.raspberrypi.com/documentation/microcontrollers/pico-series.html) or [esp32-s2](https://www.espressif.com/en/products/socs/esp32-s2)/[s3](https://www.espressif.com/en/products/socs/esp32-s3) and use the [FPGA companion firmware](http://github.com/harbaum/FPGA-Companion).
This project relies on a [M0S Dock µC](https://wiki.sipeed.com/hardware/en/maixzero/m0s/m0s.html) being connected to the Tang Nano 20K.
Alternately you can use a [Raspberry Pi Pico](https://www.raspberrypi.com/documentation/microcontrollers/pico-series.html) or [esp32-s2](https://www.espressif.com/en/products/socs/esp32-s2)/[s3](https://www.espressif.com/en/products/socs/esp32-s3) and use the [FPGA companion firmware](http://github.com/harbaum/FPGA-Companion).

Original A2600 core by [Retromaster](https://retromaster.wordpress.com/a2601/)
All HID, SDcard and µC firmware by [Till Harbaum](http://www.harbaum.org/till/mist)<br>
Expand Down
4 changes: 4 additions & 0 deletions TANG_MEGA_138K.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,10 @@ implementations like the MiSTeryNano.
The M0S required to control the A2600Nano is to be mounted in the
middle PMOD with the help of the [M0S PMOD adapter](board/m0s_pmod).

Plug the optional Dualshock DS2x2 Interface into the left PMOD slot.
[PMOD DS2x2](https://wiki.sipeed.com/hardware/en/tang/tang-PMOD/FPGA_PMOD.html#PMOD_DS2x2)<br>
There is presently only one of the two DS sockets taken into use.

The whole setup will look like this:

![MiSTeryNano on TM138K](./.assets/m0s_pmod_tm138k.jpg)
Expand Down
2 changes: 1 addition & 1 deletion a2600nano_tm138k_pro.gprj
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@
<File path="src/TIA/TIA.vhd" type="file.vhdl" enable="1"/>
<File path="src/TIA/VGAColorTable.vhd" type="file.vhdl" enable="1"/>
<File path="src/TIA/audio_argh2600.vhd" type="file.vhdl" enable="1"/>
<File path="src/a2600_top_tm138k_pro .vhd" type="file.vhdl" enable="1"/>
<File path="src/a2600_top_tm138k_pro.vhd" type="file.vhdl" enable="1"/>
<File path="src/gowin_pll/gowin_pll_ntsc_138k_pro.vhd" type="file.vhdl" enable="1"/>
<File path="src/gowin_sdpb/gowin_sdpb_gw5a.vhd" type="file.vhdl" enable="1"/>
<File path="src/t65/T65.vhd" type="file.vhdl" enable="1"/>
Expand Down
2 changes: 2 additions & 0 deletions impl/a2600nano_tn20k_process_config.json
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,8 @@
"HOTBOOT" : false,
"I2C" : false,
"I2C_SLAVE_ADDR" : "00",
"INCREMENTAL_PLACE_AND_ROUTING" : "0",
"INCREMENTAL_PLACE_ONLY" : "0",
"IncludePath" : [

],
Expand Down
4 changes: 2 additions & 2 deletions src/a2600_top_tm138k_pro.cst
Original file line number Diff line number Diff line change
Expand Up @@ -62,9 +62,9 @@ IO_PORT "joystick_clk" PULL_MODE=UP IO_TYPE=LVCMOS33;
IO_LOC "joystick_mosi" B20;
IO_PORT "joystick_mosi" PULL_MODE=UP IO_TYPE=LVCMOS33;
IO_LOC "joystick_miso" B19;
IO_PORT "joystick_miso" PULL_MODE=UP IO_TYPE=LVCMOS33; // "midi_out"
IO_PORT "joystick_miso" PULL_MODE=UP IO_TYPE=LVCMOS33;
IO_LOC "joystick_cs" C21;
IO_PORT "joystick_cs" PULL_MODE=UP IO_TYPE=LVCMOS33; // "midi_in"
IO_PORT "joystick_cs" PULL_MODE=UP IO_TYPE=LVCMOS33;

IO_LOC "clk_50mhz" P16; // 50Mhz
IO_PORT "clk_50mhz" IO_TYPE=LVCMOS33 PULL_MODE=NONE DRIVE=OFF BANK_VCCIO=3.3;
Expand Down
2 changes: 2 additions & 0 deletions src/a2600_top_tm138k_pro.sdc
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@ create_clock -name ds2_clk -period 8000 -waveform {0 5} [get_nets {gamepad/clk_s
create_clock -name joymiso -period 8000 -waveform {0 20} [get_ports {joystick_miso}]
create_clock -name clk -period 34.722 -waveform {0 5} [get_nets {clk}]
create_clock -name clk_14 -period 70 -waveform {0 5} [get_nets {clk_14}]
create_clock -name clk_cpu -period 279.408 -waveform {0 5} [get_nets {clk_cpu}]
create_clock -name m0s[3] -period 40 -waveform {0 5} [get_ports {m0s[3]}] -add
create_clock -name clk_pixel_x5 -period 6.944 -waveform {0 1.25} [get_nets {clk_pixel_x5}] -add
create_clock -name clk_audio -period 20833.332 -waveform {0 5} [get_nets {video_inst/clk_audio}] -add
report_timing -hold -from_clock [get_clocks {clk*}] -to_clock [get_clocks {clk*}] -max_paths 25 -max_common_paths 1
Expand Down
2 changes: 2 additions & 0 deletions src/a2600_top_tn20k.sdc
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@ create_clock -name ds2_clk -period 8000 -waveform {0 5} [get_nets {gamepad/clk_s
create_clock -name joymiso -period 8000 -waveform {0 20} [get_ports {joystick_miso}]
create_clock -name clk -period 34.722 -waveform {0 5} [get_nets {clk}]
create_clock -name clk_14 -period 70 -waveform {0 5} [get_nets {clk_14}]
create_clock -name clk_cpu -period 279.408 -waveform {0 5} [get_nets {clk_cpu}]
create_clock -name m0s[3] -period 40 -waveform {0 5} [get_ports {m0s[3]}] -add
create_clock -name clk_pixel_x5 -period 6.944 -waveform {0 1.25} [get_nets {clk_pixel_x5}] -add
create_clock -name clk_audio -period 20833.332 -waveform {0 5} [get_nets {video_inst/clk_audio}] -add
report_timing -hold -from_clock [get_clocks {clk*}] -to_clock [get_clocks {clk*}] -max_paths 25 -max_common_paths 1
Expand Down

0 comments on commit 0fa61ad

Please sign in to comment.