Hardwarewettbewerb 2018

Bild Alles rund um Atari 8bit
Bild All around Atari 8bit

Moderatoren: Sven, Sleepy, Wolfgang, cas, des-or-mad

Hardwarewettbewerb 2018

Beitragvon Sleepy » Di 10. Apr 2018, 10:29

Wie im aktuellen ABBUC-Club-Magazin bekanntgegeben, finden auch dieses Jahr wieder die ABBUC-Wettbewerbe statt.

Der Einsendeschluss für den Hardwarewettbewerb ist dieses Jahr etwas früher, da die Fujiyama, wo die Einsendungen in Augenschein genommen werden, ebenfalls etwas vorverlegt wurde. Die Hardware sollte bis zum 09. Juli 2018 in der Clubzentrale eingetroffen sein.

Die Regeln finden sich im aktuellen Magazin 1/2018 und stehen, zusammen mit dem Anmeldebogen, in deutscher und englischsprachiger Ausführung zum Download bereit: klick

Documentation for the this year´s hardware contest you can find here.


Eingereicht wurden bisher:

Final:

AtariDuino - ein Atari-Arduino Interface von freetz (Sendung eingetroffen)
PokeyMAX - a complete replacement for the Pokey chip von Mark Watson (Sendung unterwegs)
Power Meter - Auslastungsanzeige für 65C02 von 1NG (Sendung eingetroffen)
AntiX - PAL & NTSC-ANTIC in einem Rechner von André Huijts (unterwegs)


In Entwicklung:

Power Meter Cart - Modul mit Power Meter ohne Löten von 1NG

Sleeπ
Benutzeravatar
Sleepy
Night&Day Poster
Night&Day Poster
 
Beiträge: 6452
Registriert: Do 1. Jan 1970, 01:00
Wohnort: Köln

Re: Hardwarewettbewerb 2018

Beitragvon freetz » Mi 4. Jul 2018, 15:33

Ich bin dieses Jahr in der Kategorie "Final" dabei, in der mein im letzten Jahr unter "Entwicklung" vorgestellte AtariDuino-Interface antritt. Wer schon mal einen Blick darauf werfen möchte, findet hier schon mal ein Demo-Video und eine Beschreibung des Projekts:

https://youtu.be/Jhjn4tD54eo

-------------------------------------------------------------

AtariDuino - ein Atari-Arduino Interface

Wer sich heutzutage als „Maker“ mit Hardwarebasteleien beschäftigt, kommt um die kleinen „Arduino“-Einplatinencomuter kaum herum - sie sind günstig, dazu einfach zu programmieren, und es gibt eine Reihe von Aufsteckkarten, sogenannte „Shields“, mit denen man verschiedenste Sensoren (Temperatur, Luftfeuchtigkeit etc.) und Aktoren (z.B. Relais) auswerten bzw. steuern kann.

Trotz der Tatsache, dass diese Rechner ca. 30 Jahre nach unseren Ataris entwickelt worden sind, gibt es doch einige Gemeinsamkeiten, wovon zwei besonders herausstechen: Es handelt sich bei den Arduinos trotz des neuen Jahrtausends immer noch um 8-Bit Rechner, die dazu auch nur mit einigen Kilobyte an Speicher ausgestattet sind. Und sie kommunizieren mit der angeschlossenen Hardware auch über die vom Atari bekannten 5V-TTL-Pegel.

AtariDuino ist nun ein Interface, das im Formfaktor eines Arduino-Shields daher kommt, und zwei Dinge ermöglicht: Zum einen können damit - teilweise sogar ganz ohne Arduino - die Arduino-Erweiterungskarten direkt an den Atari angeschlossen und gesteuert werden. Somit lassen sich für wenige Euros z.B. eine Mehrkanal-Relais-Karte anschließen oder eine LED-Lichtorgel steuern. Der Anschluss erfolgt hierbei über den Joystickport und steht somit auch für andere Rechner offen, die 5V-TTL-Pegel verwenden (z.B. der Atari ST, der C64, der Amiga oder sogar das VCS 2600). Über Steckbrücken lassen sich die Joystick-Port-Pins auf die entsprechenden Pins des Arduino-Shields zuordnen, die Aktivierung auf Atari-Seite erfolgt dann mit wenigen POKE-Befehlen.

Zum anderen ist auch ein Anschluss über den SIO-Port möglich. Hierbei wird ein „halbes“ SIO-Kabel benötigt, dessen „offenes“ Ende mit einer Steckerleiste auf AtariDuino verbunden wird. AtariDuino wird dann über einen R:-Handler angesprochen, ähnlich wie bei der Atari 850, ohne dass weitere Hardware benötigt würde. Alternativ bringt AtariDuino auch einen „poor man’s SIO connector“ mit, den man mit etwas Lötzinn auf den Kontakten sowie ein wenig Fingerspitzengefühl direkt in den SIO-Port zwischen die Pins schieben kann.
Über den SIO-Port kann dann sogar mit einfachen BASIC-Befehlen mit dem Arduino selber kommuniziert werden. Über diesen Zugang lassen sich dann komplexere Steuerungen sowie das Auslesen von Werten realisieren. Diese wären zwar in den meisten Fällen auch über den Anschluss per Joystick-Port möglich, aber dann müsste man vorher die für den Arduino bereits in der Programmiersprache „C“ vorliegenden Bibliotheken auf den Atari umsetzen.

Der Charme dieses Interfaces ist, dass hier zwei 8-Bit Architekturen zusammenarbeiten, und nicht einfach nur alles auf eine sehr viel leistungsfähigere Plattform „abgelanden“ wird und der Atari nur „dummes“ Terminal wird. Der Atari kann die komplette Steuerung übernehmen (wie z.B. bei Relais-Karten). Es kann aber auch auf fertige Sensor-Bibliotheken des Arduino zurückgegriffen werden, deren Ergebnisse dann per SIO an den Atari übermittelt werden, der diese dann auswerten und entsprechend weitere Aktionen starten kann, er bleibt also die Kontrollinstanz.

Das mitgelieferte Demo-Programm zeigt mehrere ausgewählte Einsatzbereiche sowohl über den SIO-Port als auch über den Joystickport: Über den SIO-Port wird der Arduino über den R:-Handler angesprochen und setzt benutzerdefinierte Befehle ab. Dabei wird neben der Abfrage der Laufzeit und eines LM35-Temperatursensors, die keine weiteren Bibliotheken benötigen auch ein Ethernet-Shield angesprochen und eine (natürlich nur sehr einfache) Webseite abgerufen, deren Inhalt an den Atari zurückgegeben und dort auf angezeigt wird. Die abgerufene Webseite kann dabei direkt vom Atari aus benannt werden, ist also nicht fest im Arduino-Code hinterlegt.
Im zweiten Teil des Programms wird demonstriert, dass die Ansteuerung auch gänzlich ohne Arduino funktioniert, indem mit wenigen POKE-Befehlen das Relais eines Shields geöffnet und geschlossen wird, womit man z.B. eine Lampe ein- und ausschalten oder die elektrische Eisenbahn anhalten und starten lassen könnte.
Schlussendlich ist auch eine angepasste Version von SIO2Arduino verfügbar, mit der man sich aus Arduino-Standardkomponenten eine Floppy auf SD-Karten-Basis zusammenstecken kann.
In allen genannten Beispielen erfolgt die Stromversorgung komplett über den Atari, ein extra Netzteil ist also nicht erforderlich.
Ein Video, das das Shield im Einsatz zeigt, ist hier zu finden:
https://youtu.be/Jhjn4tD54eo

Mit AtariDuino ist somit der Maker- und Home-Automatisierungs-Trend auch auf dem Atari angekommen, und ohne, dass man dafür in Maschinensprache programmieren müsste - die Möglichkeiten, die sich daraus ergeben, sind (fast) grenzenlos.
freetz
Multi Poster
Multi Poster
 
Beiträge: 295
Registriert: Fr 30. Jul 2010, 11:50

Re: Hardwarewettbewerb 2018

Beitragvon dl7ukk » Do 5. Jul 2018, 00:40

Hi Frederik,

auf jeden Fall eine spannende Sache.

Kannst Du den Energieverbrauch Deiner Entwicklung abschätzen? 1500 mA vom ATARI-NT sind nicht üppig. Wenn dann noch andere Pe­ri­phe­rie dazu kommt, wird es da eng?

Warum erst ein Wiedersehen zur JHV -- die Fujiama ist doch in 3 Wochen. :goteam:
Besten Gruß


andreas/ dl7ukk
Benutzeravatar
dl7ukk
Night&Day Poster
Night&Day Poster
 
Beiträge: 2450
Registriert: Do 1. Jan 1970, 01:00

Re: Hardwarewettbewerb 2018

Beitragvon freetz » Do 5. Jul 2018, 06:58

Hi Andreass,

der Stromverbrauch hängt natürlich von den angeschlossenen Komponenten und deren Anzahl ab, aber wenn man bedenkt, dass die XC11 ja völlig ohne externes Netzteil einen ganzen Cassettenmotor über den SIO-Port antreiben konnte, ist da schon etwas Luft. Der Arduino Uno selber ist ja sehr genügsam, im "Full Power Mode" zieht er gerade mal 55mA. Ich habe jedenfalls Arduino Uno mit Relais-Shield, Netzwerk-Shield und LED alles über den SIO-Port betrieben, und es gab keine Probleme im Betrieb - wobei da bei mir wohlgemerkt noch ein SIO2SD intern in den Atari eingebaut ist, das auch den Stiom intern vom SIO-Port abgreift (und da auch eine ATMega CPU drin werkelt).

Wenn man jetzt Servo-Motoren steuern wollen würde, könnte es für deren Antrieb etwas eng werden, aber dann betreibt man den Arduino über ein optionales externes Netzteil.

Fujiyama wäre auf jeden Fall schön gewesen, aber da ich seit Montag für die nächsten sieben Monate in Elternzeit bin, war schon die JHV ein Kompromiss ;)...

Viele Grüße

F.
freetz
Multi Poster
Multi Poster
 
Beiträge: 295
Registriert: Fr 30. Jul 2010, 11:50

Re: Hardwarewettbewerb 2018

Beitragvon Sleepy » Fr 6. Jul 2018, 15:09

von Mark Watson erreicht uns folgender Beitrag:

PokeyMAX

Introduction
The PokeyMAX is a complete replacement for the Pokey chip. It is derived from the work on the EclaireXL project, a complete FPGA based Atari 800XL clone. The intention is to build replacements for all of the Atari custom chips using this technology and Pokey has been built first. It can be used either to replace a broken/missing pokey, as a stereo upgrade, or just for fun!

Features
 If pokey is socketed, zero wire installation (mono)
 Dual pokey mode
 Pins for 3 audio outputs (left channel/right channel/mixed)
 Small footprint, only a few mm larger than original IC
 Supports all features: 8x paddle inputs, IRQ, serial I/O, audio output, two tone mode, high pass filter and keyboard scan
 High level of compatibility

Digital logic
The PokeyMAX is built around the Altera MAX10 FPGA. This was chosen due to its integrated flash memory, power conversion, small size and low cost. The contained logic itself is described in VHDL and Verilog and then synthesized using the Quartus II software.

Level conversion
Most modern FPGAs no longer support 5V logic. While it is possible to find a few they are a vanishing breed. The MAX10 only supports up to 3.3V logic, so an IDT quickswitch level converter IC is used to connect to the high speed lines (A/D/IRQ/serial io etc) safely.

Chip select
Unfortunately I needed more level conversion lines than provided. TI came to the rescue with some 5V tolerant multi-function logic chips with which I was able to combined CS/!CS into one.
Power
The MAX10 requires a single 3.3V power supply, it then internally generates the rest of its supplies. This is very convenient, since often FPGAs require 3 or more different voltage levels. There is a switch mode regulator (LM3670) to convert from 5V to 3.3v in an efficient fashion.
Paddles
These are handled by charging a capacitor that we then check the level of using an LMV339. This is similar to the well-known LM339 comparator, except much smaller! The comparator is used since the level can be set very precisely rather than relying on when the FPGA detects a logic high. The level itself is set to 2.2v using the voltage divider on the right. It is also convenient since its open drain output means there are no level conversion issues. For the drain transistors, a 5V tolerant IO extender chip is used. The FPGA communicates
with this over an I2C bus.

Keyboard scan
An IO extender chip drives the 6 keyboard lines and then reads the response. This is convenient since it only requires an I2C bus to the FPGA and the IC is much smaller than the level converters.

JTAG
The ‘core’ may be upgraded or debugged using an Altera USB blaster connected here. Several of the JTAG pins are ‘dual use’ and can be used as general IO. So we could for instance in future plug in i2c devices here or use for A5 (with external level converter) to allow quad pokey or sid etc.
Audio filter
The audio output uses a delta sigma dac. An RC circuit is used as a simple audio filter to smooth the output from this. There are four audio outputs, which are currently fed to pin 37 and 3 header pins (left/right and mixed). Note that the next stage much not draw a lot of current from the rc filter or it will cause distortion.

A4
Pokey has 4 address pins (A0-A3). To make space for a 2nd pokey another address line is needed. For stereo connect to A4.

POKEYmax.tiff
POKEYmax.tiff (1.07 MiB) 281-mal betrachtet
Benutzeravatar
Sleepy
Night&Day Poster
Night&Day Poster
 
Beiträge: 6452
Registriert: Do 1. Jan 1970, 01:00
Wohnort: Köln

Re: Hardwarewettbewerb 2018

Beitragvon Level42 » Di 10. Jul 2018, 00:45

This is amazing and definitely longed for ! Don't forget that POKEYs are also used in a number of Atari arcade machines like Star Wars which uses 4 POKEYs per machine :)

By the way Sleepy, you made a little mistake on my entry...AntiX switches ANTICs not POKEYs :D

Oh and THANKS ! :D
Level42
Newbie
Newbie
 
Beiträge: 23
Registriert: Mi 5. Nov 2014, 17:45

Re: Hardwarewettbewerb 2018

Beitragvon Sleepy » Di 10. Jul 2018, 05:47

Uups - error corrected. It was a little bit late yesterday... ;-)

Sleepy
Benutzeravatar
Sleepy
Night&Day Poster
Night&Day Poster
 
Beiträge: 6452
Registriert: Do 1. Jan 1970, 01:00
Wohnort: Köln

Re: Hardwarewettbewerb 2018

Beitragvon Level42 » Di 10. Jul 2018, 11:48

It sure was, sorry about that but thanks !! ;)
Level42
Newbie
Newbie
 
Beiträge: 23
Registriert: Mi 5. Nov 2014, 17:45


Zurück zu Hardware



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast