na103 / Dueottosei

Amiga 500 PC AT 286 emulator board

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Amiga Dueottosei

Amiga Dueottosei (twoeightsix in Italian) is a clone of Vortex ATonce Plus, an PC AT Emulator board for Amiga 500

alt text

Main features of Dueottosei

  • Fully compatible 16 MHz PC/AT emulator
  • CMOS 80C286-16 CPU chip
  • 512 kBytes onboard RAM
  • Socket for optional 80C287-12 math coprocessor
  • Fully AT compatible ROM/BIOS
  • Full 640 kByte base memory as minimum standard configuration
  • Ability to address additional FAST RAM as either Extended or Expanded Memory
  • Runs unrestricted in '286 Protected Mode
  • Supports Microsoft Windows 3.0 and Windows 3.1
  • Emulates EGA and VGA monochrome graphics, CGA 16-color graphics, Hercules, Olivetti and Toshiba 3100 display standards
  • Runs as a concurrent process within the AmigaDOS operating system
  • Reads and writes MS/DOS file system on any standard Amiga floppy drive
  • Full support for MS/DOS partitions SCSI and IDE controller (not all 100% compatible)
  • Recognizes the Amiga mouse as a Microsoft Serial mouse (on COM 1 or COM 2)
  • Recognizes the Amiga's Parallel port as LPT1
  • Recognizes the Amiga's Serial port as either COM2 or COM1 (depending on mouse setting)
  • Emulates only the PC/AT alert beep through Amiga audio hardware
  • Recognizes and uses the Amiga's Real-Time clock
  • Compatible with all versions of MS/DOS from 3.2 through 5.0

Bill of materials

Qt. Description Designator Digikey Par t Note
10 Resistor 10K R11-R17, R41,R49,R50 ERJ-8ENF1002V
9 Resistor 22R R31-R39 ERJ-8GEYJ220V
5 Resistor 4.7K R42-R44,R47,R48 ERJ-8GEYJ472V
1 Resistor 2.2K R110 ERJ-8GEYJ222V
2 Resistor 1K R45,R46 ERJ-8GEYJ102V
3 Resistor 100R R311-R313 ERJ-8ENF1000V
27 Cap. 100nF C12-C16,C21-C29,C31-C37,C41-C46 12065C104KAT2A
2 Cap. 100uF C10,C11 T495X107K025ATE150
1 74LS08 U15 SN74LS08D
3 74HCT374 U21,U26,U29 MC74HCT374ADWG
2 GAL16V8 U22,U44 ATF16V8BQL-15PU need programmer like TL866
2 74F245 U24,U25 SN74F245DW
1 74F86 U28 SN74F86D
2 74F157 U35,U36 SN74F157AD
1 74F153 U37 SN74F153D
1 74F125 U42 SN74F125D
1 74F00 U43 SN74F00D
1 74F260 U45 SN74F260D
1 32Mhz Oscil. Q1 MXO45-3C-32M000000
1 PLCC 84 Socket U41 8484-11B1-RK-TP
1 PLCC 68 Socket U13 8468-11B1-RK-TP
6 DIP 20 Socket U22,U44,U31-U34 4820-3004-CP optional, useful for testing
1 DIP 40 Socket U14 4840-6000-CP
1 DIP 64 Socket J1 110-99-964-41-001000
2 SIP 32 Socket J2 D01-9973242 qt.4 if you use socket in U44
2 SIP 32 male Socket J1 D01-9923246
1 N80C286-16 U13 from ebay or utsource
2 80C287 12Mhz U14 optional from ebay or utsource
1 XC2018-70 U41 from ebay or utsource
4 TMS44C256-80N U31-U34 from ebay or utsource

Building notes

  • you can see here the steps to follow to build the board.
  • I bought five xc2018s before finding one that runs for more than 10 minutes without hangs or crash. buy the recent production one like in pictured above.
  • if you want to install the math coprocessor you need a 287 at 12Mhz like the XL model from Intel or compatible.
  • you will need a programmer like TL866+ to cook the two GAL's with these jed files.
  • the 500 keyboard touches the PLCC socket and remains a few millimeters higher but the 500 case it closes without problems.
  • you could add a plastic support to hold the card on the opposite side of socket 68000
  • you can download software and manuals from here
  • dueottosei is affected by electromagnetic interference coming from Agnus on amiga 500 board. a shield to be placed between the two boards is essential, you can use this RF EMI SHIELDING TAPE (part. 3M11331-ND) or similar. you can also use simple aluminum foil wrapped in electrical tape

inside the repository you can find the gerber files for the production of the Dueottosei pcb and also the faithful replica of the Vortex Atonce Plus pcb (useful for original board restore) and also the complete Kicad projects.

alt text

Compatibility

if you decide to build this board you must know that it has limited compatibility, it only works with kicstart 1.3 or 2.X and in the most recent 500 pcb versions. read these reviews first to get an idea of how it works

http://obligement.free.fr/articles/atonce_plus.php

https://github.com/na103/Dueottosei/blob/main/misc/review.txt

a short video demo
https://www.youtube.com/watch?v=Pk9XQjsHf10
CF disk image used in this demo.

from my testing this is the best setup that has worked every time without crashing on a few hours of Windows 3.1 use

  • Amiga 500+ board rev 8a Cpu 68010 with 2Mb chip Ram
  • Kickstart and Workbench 2.05
  • AlfaPower Plus with 8Mb Fast (4Mb dedicated as msdos extended memory) and 500Mb ide hdd
  • external floppy disk DF1 configured as A:
  • 80Mb partition non formatted with Amiga filesystem as C:
  • Power supply 150W

the socket adapter for Gary could solve some problems, in my tests it didn't help

About Xilinx XC2018

it is a first generation FPGA produced by Xilinx without a permanent internal memory, in practice it must be programmed, in this case is the Amiga, every time is started. you can read about this in detail in this article made by Ken Shirriff a few years ago.

inside floppy disks, Vortex v2.20/v3.00 and GVP pc286, I found some configuration bit stream:
one twice in atonce.bin/pc286.bin (offset 0x9300-0x8A44 0x9C00-0x9344) apparently not used in any setup and equal in all bin file version.
two in atplus.dsg/pc286.dsg; the first (offset 0x1400-0x0B44) it could be for atonce classic non plus board, the second (offset 0x2400-0x1B44) is the one for atonce plus.
this last changes in all the different versions of the dsg file.
thanks this tool created by Ken Shirriff and modified by me for 100 tiles xc2018, I rebuilt all three lca inside floppy disk v3.00.
The new bitstream generated by lca file is 99% equal to the original stream extracted from the dsg file but whit a small difference.
In to original bit stream CLB blocks configured as Base F and output (x or y) not in equation and not connected to any net, for some strange reason (maybe a makebit early version bug), have the X or Y bit output on G active.

anyway i patched the dsg with the new generated bitstream and it work well like the original and so i'm pretty sure it's a correct lca.
notie folder contain lca file with only essential logic. cleaned from all nets and clb generated from makebits with tie option.
from notie lca have been created a verilog description.

License

This work is licensed under a Creative Commons Attribution 4.0 International License. See https://creativecommons.org/licenses/by/4.0/.

About

Amiga 500 PC AT 286 emulator board

License:Other


Languages

Language:Verilog 49.8%Language:Python 23.5%Language:HTML 22.7%Language:Stata 2.1%Language:Prolog 1.2%Language:Mathematica 0.5%Language:Batchfile 0.2%Language:Standard ML 0.0%