mbtaylor1982 / ReSDMAC

Verilog code to replace the Commodore SDMAC found in the A3000
https://github.com/mbtaylor1982/ReSDMAC/wiki
Creative Commons Attribution Share Alike 4.0 International
28 stars 1 forks source link
altera-fpga amiga amiga-hardware kicad open-source verilog

ReSDMAC

CC BY-SA 4.0

GitHub Actions Workflow Status GitHub Actions Workflow Status GitHub Issues or Pull Requests

GitHub Release GitHub Downloads (all assets, all releases)

join

ko-fi


Introduction

This project is has been a community effort with the PCB design by Jorgen Bilander and the code by Mike Taylor. It has been exercise in reverse engineering the Commodore SDMAC 390537 as found in the Amiga 3000

This project was started with nothing more that the descriptions of the SDMAC operations and from the Amiga 3000T Service manual, the WD33c93 Datasheets and some source code from the Amiga 3000 Linux scsi drivers.

Since then schematics for what appears to be the Rev 3(C) surfaced along with the original finite state machine descriptions:

SDMAC Documentation

To collate together the technical details of the SDMAC a markdown document has been created and is linked here

Pre-Production Board REV 1A

ReSDMAC Rev1a Front

ReSDMAC Rev1a Back

ReSDMAC Rev1a Plug

Timing Diagrams

Below are the VCD files output by the cocotb tests. these have been used to help verify the verilog code.

Register access timing DMA cycle timing

Acknowledgements

Thankyou to all the people who have helped with this project especially:

Honourable mentions

Others that have helped out with words of encouragement and general support.


This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License. CC BY-SA 4.0