During the time I worked on the “Agat-7” replica, I came across the need for constant changes and improvements; these resulted from either new ideas or troubleshooting. Some of these troubleshoots involve tinkering with the circuit board. Currently, I have four different revisions and modifications of PCB’s for “Agat”; this isn’t even the total amount, as the project is still not complete.
Aside from the fact that it impedes progress, it is also very economically inefficient. Each new version of the board must have a soldiered memory, connectors, FPGA and other elements of a circuit. Because of the full set of elements on the board, its size also increases, making production even more expensive. As an example, ordering 10x10cm boards with my preferred company costs $20 (plus delivery) for 10 boards, while boards 15x15cm (this is the size of Agat’s PCB) cost an entire $70 for 5 units.
This is how the idea for a universal modular platform for the creation of retro-computer replicas came to be. I called it Retrobyte.
The base platform consists of a board on which there are mounted generic elements, required for the majority of retro-computers.
- 4Mb SDRAM memory
- Tape recorder input and output circuits
- The ability to connect a speaker (the basic circuit for a buzzer is already on the board)
- A PS/2 port to connect keyboards
- An SD card port
- Video outputs in VGA, RCA and S-Video with the ability to alternate them through FPGA
The SD card isn’t connected to the FPGA, but instead to a single row of a 2-row connector. Its second row is connected to the FPGA.
In this case, it is possible to connect an external controller to the even pins of the P12 connector, while using the odd pins (connected to FPGA) for something else (communication between the external microcontroller and FPGA, for example). If the need to use an SD card of the FPGA arises, it is sufficient to simply connect the even and uneven pins of the connector to each other.
The video output gives the ability to show the signal on NTSC and PAL standard televisions. The choice is made by soldering one of the resistors R10-R12. If a R10 is soldered, the FPGA will be able to independently change standards. However, if the R11 or R12 resistor is soldered, it is possible to permanently fix the television standard and free one of the FPGA pins for other uses.
The colour configuration of the video output is determined by the resistors R2-R7. The options for the resister placement are as follows:
- All resistors are soldered. Each RGB colour has 4 gradients with 64 different colour options in total.
- Only the resistors R3, R5 and R7 are soldered. The colours lack gradients and there are only 8 possible colours in total. Pins P1, L1 and L3 of the FPGA are freed for other tasks.
- Only the R3 resistor is soldered and all 3 pins of P11 header are connected. The image will then be purely black and white without any gradients of grey. Pins P1, L1, N3, R1 and L3 of FPGA will be vacant for other tasks.
- None of the resistors are soldered and an external DAC is connected to P11. This option will be needed for computers with non-standard colour configurations (Commodore, for example).
There are probably some more possible combinations.
All of FPGA’s pins not used will be withdrawn to headers, to which other boards and devices can be connected to. As a result, you basically get an expansible modular architecture.
For further simplification, a finished module will be used for FPGA CoreEP4CE10. This compact board contains the chip ALTERA Cyclone IV EP4CE10F17C8N (10К LE) and all of the required harnesses, including the oscillator and flash memory. The price is similar to the purchase of all of its individual parts, but it does not require the effort to solder it and it saves time to assemble and debug.
To connect additional boards and modules, there are from 104 to 117 pins on the Retrobyte board (depending on the its configuration), which should be enough for most tasks.
Its power can be provided by a stabilised power source of 5V. The voltage of 3.3V is generated on the board itself and is available on the expansion ports.
The board size for Retrobyte is only 10×10 cm, which makes its production very inexpensive.
During the development of the replica, a vast majority of the changes have to be applied only to the expansion modules, which makes making the changes quick and cheap.
Additional modules can be connected sandwich-style.
This is how a 3D model of Retrobyte looks like:
I ordered the boards and built one prototype on which I am currently making a computer “Микро-80” (I will write about this later) with the aim of debugging and verifying the plausibility of the idea. In this process, some inaccuracies were found, which I will remove in Rev.B. All of them are insignificant, so I can still use the boards from Rev.A for building the retro-computers. This is what the finished device looks like:
I will put the schematics and the PCB design up later, once I finish the “Micro 80” computer, put all the changes and fixes together and make an improved Rev.B of that board. Watch out for updates!