Autor Thema: Einfach programmierbares Modul für ROM-Port?  (Gelesen 25678 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

Offline czietz

  • Benutzer
  • Beiträge: 3.570
Einfach programmierbares Modul für ROM-Port?
« am: Di 29.12.2015, 12:13:52 »
Hallo,

manchmal, z.B. um den fiesen Bug in http://forum.atari-home.de/index.php?topic=12577.0 zu finden, wünsche ich mir die Möglichkeit, sehr früh im Bootprozess des ST eigenen Code ausführen zu können. Mit einem Cartridge für den ROM-Port ist das machbar, da TOS zu verschiedenen Zeitpunkten im Bootprozess versucht, ins Cartridge zu springen.

Ein klassisches ROM-Modul mit zwei (E)EPROMs fände ich jedoch eher störend, weil ich a) dafür ein EPROM-Programmiergerät anschaffen müsste und b) für jede Codeänderung die ICs aus den Sockeln heben müsste. Ideal wäre ein Cartridge, das sich über eine Schnittstelle (USB, RS232, SPI, JTAG...) neu programmieren ließe.

Kennt jemand schon eine Schaltung dafür?
« Letzte Änderung: Di 29.12.2015, 12:16:24 von czietz »

Offline tuxie

  • Benutzer
  • Beiträge: 6.830
  • Falcon! Milan! Schuetzt die Raubvoegel!
Re: Einfach programmierbares Modul für ROM-Port?
« Antwort #1 am: Di 29.12.2015, 12:16:55 »
Man könnte doch ein Flash drauf setzen und ihn versuchen darüber zu Programmieren?
Tschau Ingo

Offline Lukas Frank

  • Benutzer
  • Beiträge: 13.012
  • fancy Atari Musik anDA Dance "Agare Hinu Harukana"
Re: Einfach programmierbares Modul für ROM-Port?
« Antwort #2 am: Di 29.12.2015, 12:23:34 »
Vielleicht läßt sich sowas in der Art anpassen ->   http://www.8bitchip.info/atari/flashest.php

Muss ja nicht im Romport sitzen, einfach ROM 3 und 4 anlegen ...

Offline czietz

  • Benutzer
  • Beiträge: 3.570
Re: Einfach programmierbares Modul für ROM-Port?
« Antwort #3 am: Di 29.12.2015, 12:47:12 »
Eine Lösung wie von Frank vorgeschlagen, müsste sogar zwangsläufig im Atari sitzen, denn einerseits muss man Adressdecoder und DTACK-Logik nachrüsten, damit beim Schreib-/Programmierzugriff auf den Adressbereich des ROM-Ports kein Bus-Error durch den GLUE generiert wird. Andererseits ist die R/W-Leitung, die zum Erkennen eines Schreibzugriffs nötig wäre, gar nicht am ROM-Port herausgeführt -- ein (bewusster?) Designfehler im ST, meiner Meinung nach.

Eine komplett externe Lösung wäre mir lieber.

Offline Lukas Frank

  • Benutzer
  • Beiträge: 13.012
  • fancy Atari Musik anDA Dance "Agare Hinu Harukana"
Re: Einfach programmierbares Modul für ROM-Port?
« Antwort #4 am: Di 29.12.2015, 12:52:17 »
Als reines Romport Modul stelle ich mir das ohne Ahnung sehr kompliziert vor mit zwei Flash Bausteinen. Mit Tricks wird ja auch bei der EtherNEC oder der baugleichen NetusBee auf/über dem Romport geschrieben ...

Offline czietz

  • Benutzer
  • Beiträge: 3.570
Re: Einfach programmierbares Modul für ROM-Port?
« Antwort #5 am: Di 29.12.2015, 12:59:56 »
Es ist ja keine Voraussetzung, dass das Ding vom Atari aus beschreibbar ist. Ich wäre mit einer externen Schnittstelle zum PC ebenso zufrieden. Es wird dafür natürlich zusätzliche Logik oder ein Mikrocontroller auf dem Modul benötigt.

Offline Lukas Frank

  • Benutzer
  • Beiträge: 13.012
  • fancy Atari Musik anDA Dance "Agare Hinu Harukana"
Re: Einfach programmierbares Modul für ROM-Port?
« Antwort #6 am: Di 29.12.2015, 14:00:26 »
Schau doch mal im NetusBee Schaltplan und dem Treiber wie dort das mit dem R/W gemacht wird ->   http://hardware.atari.org/files/

Das muss doch auch alles von Atari ST aus gehen mit ein wenig Logik auf dem Romport Modul ...


Ansonsten kaufe dir über Ebay für etwas über 40,- Euro einen China Prommer und nimm einfach zwei EEproms ...

Habe auch so einen Prommer für die GALs und bin sehr zufrieden damit !

Burkhard Mankel

  • Gast
Re: Einfach programmierbares Modul für ROM-Port?
« Antwort #7 am: Di 29.12.2015, 14:58:45 »
Es gab mal eine Erweiterung für den ROM-Port als Bauanleitungs-Serie in der ST-Computer vor 1990! Leider kann ich mich an den Titel nicht mehr erinnern! Leider konnte ich sie auch in den von Matthias Jaap zusammengestellten Archiven nichts darüber finden, aber vielleicht könnte man hier einen Ansatzpunkt finden, da sie auch eine (nichtflüchtige) RAM-Karte enthielt - und RAM heißt für mich "beschreib-" und "programmierbar"!

Offline Lynxman

  • Moderator
  • *****
  • Beiträge: 2.118
  • Nicht Labern! Machen!
Re: Einfach programmierbares Modul für ROM-Port?
« Antwort #8 am: Di 29.12.2015, 16:30:48 »
Ein Atmega, 2 FlashRoms, dazu einen FT232 oder einen Max232 (je nach Geschmack, oder gleich beides mit einem Atmega der 2x RS232 hat), dazu ein paar Treiber um den Bus (bzw. beide) zu trennen wenn die Flashs beschrieben werden, dann kann die Karte gesteckt bleiben.
Evtl. noch ein oder zwei Latch, je nach Schaltung und Atmega.
Klar, den Atmel muss man noch Programmieren...
Aktuelle Lynx FlashCard Firmware: hier klicken

Nerd? I prefer the term INTELLECTUAL BAD ASS

Ich kann nicht alle glücklich machen, ich bin ja keine Pizza!

Werde auch Du Fan von Lynxmans Basteltagebuch!  Klick mich, Du willst es doch auch! ;)

Arne

  • Gast
Re: Einfach programmierbares Modul für ROM-Port?
« Antwort #9 am: Di 29.12.2015, 16:32:52 »
Es ist ja keine Voraussetzung, dass das Ding vom Atari aus beschreibbar ist. Ich wäre mit einer externen Schnittstelle zum PC ebenso zufrieden. Es wird dafür natürlich zusätzliche Logik oder ein Mikrocontroller auf dem Modul benötigt.
Im Prinzip brauchst Du einen EPROM Simulator. 128KByte SRAM kosten nicht die Welt und sind einfach ansteuerbar. Es muss halt gewährleistet sein, dass der Simulator (µC o.ä.) die Busse loslässt, wenn der Atari davon lesen will. Ein ATmega im TQFP-100/64 Gehäuse sollte genug Pins freihaben.

Ansonsten mal nach EPROM Simulator suchen
z.B. http://www.holger-klabunde.de/eprsim/eprsim.htm

Offline neogain

  • Benutzer
  • Beiträge: 1.313
  • ...?
Re: Einfach programmierbares Modul für ROM-Port?
« Antwort #10 am: So 03.01.2016, 18:18:03 »
Mal gerade entdeckt... Kann man das Layout hier nicht holen für ein Testcartrigde nachbau?

Offline czietz

  • Benutzer
  • Beiträge: 3.570
Re: Einfach programmierbares Modul für ROM-Port?
« Antwort #11 am: So 03.01.2016, 19:43:17 »
Danke für die Ideen! Schade, dass es nichts passendes schon fix und fertig gibt. Sollte ich mal genug Zeit haben, layoute und baue ich mir etwas selbst.

Offline czietz

  • Benutzer
  • Beiträge: 3.570
Re: Einfach programmierbares Modul für ROM-Port?
« Antwort #12 am: Sa 06.02.2016, 20:12:37 »
Ich habe mich dann übrigens mal mit dem Design begonnen. Schaltplan war schnell gezeichnet, leider bin ich echt schlecht, was das Layouten angeht...

Offline Lynxman

  • Moderator
  • *****
  • Beiträge: 2.118
  • Nicht Labern! Machen!
Re: Einfach programmierbares Modul für ROM-Port?
« Antwort #13 am: Sa 06.02.2016, 20:15:29 »
Wie willst Du das jetzt realisieren?

Das Modul vom Atari oder vom PC aus programmieren?
Aktuelle Lynx FlashCard Firmware: hier klicken

Nerd? I prefer the term INTELLECTUAL BAD ASS

Ich kann nicht alle glücklich machen, ich bin ja keine Pizza!

Werde auch Du Fan von Lynxmans Basteltagebuch!  Klick mich, Du willst es doch auch! ;)

Offline czietz

  • Benutzer
  • Beiträge: 3.570
Re: Einfach programmierbares Modul für ROM-Port?
« Antwort #14 am: Sa 06.02.2016, 20:21:31 »
Vom PC aus. Ein AVR ATmega klimpert dazu an den Flash-Bausteinen, um sie neu zu programmieren.

Ursprünglich wollte ich Bustreiber vorsehen, um den Bus vom Atari zu isolieren, damit der AVR auch auf das Flash-ROM zugreifen kann, wenn das Modul im Atari steckt. Aber ich bin beim Versuch, das zu layouten, fast durchgedreht. Wie gesagt, ich bin nicht besonders geübt darin. Jetzt arbeite ich an einer vereinfachten Variante, bei der AVR nur erkennt, dass das Modul am Atari hängt und sich dann ruhig (alle I/O-Ports tristate) verhält. Zum Neuprogrammieren muss man das Modul halt aus dem Atari ziehen.


Offline Lynxman

  • Moderator
  • *****
  • Beiträge: 2.118
  • Nicht Labern! Machen!
Re: Einfach programmierbares Modul für ROM-Port?
« Antwort #15 am: Sa 06.02.2016, 20:28:44 »
Welchen Atmega benutzt Du?

Wenn Du einen Atmega mit Speicherinterface benutzt, dann kennst Du evtl. schon das Problem das der Atmega erst mal sein internes SRAM beschreibt und danach dann Extern.
Wenn nicht, dann kann ich Dir ein paar Tipps geben, das hat mich nämlich mal fast Irre werden lassen bis ich es hinbekommen habe.
Aktuelle Lynx FlashCard Firmware: hier klicken

Nerd? I prefer the term INTELLECTUAL BAD ASS

Ich kann nicht alle glücklich machen, ich bin ja keine Pizza!

Werde auch Du Fan von Lynxmans Basteltagebuch!  Klick mich, Du willst es doch auch! ;)

Offline czietz

  • Benutzer
  • Beiträge: 3.570
Re: Einfach programmierbares Modul für ROM-Port?
« Antwort #16 am: Sa 06.02.2016, 20:45:04 »
Ich hatte an sowas wie einen ATmega16 gedacht, da ich es geschafft habe, mit 32 GPIOs auszukommen. Also kein externes Speicherinterface, sondern "bit banging" auf den I/O-Ports.

Auch wenn es also hier nicht relevant ist, würde ich gerne mehr über das von Dir erwähnte Problem erfahren.

Offline Lynxman

  • Moderator
  • *****
  • Beiträge: 2.118
  • Nicht Labern! Machen!
Re: Einfach programmierbares Modul für ROM-Port?
« Antwort #17 am: Sa 06.02.2016, 21:04:36 »
Beim Atmega16 musst Du ja quasi die Steuerleitungen, Adressen und Daten "von Hand" erzeugen und kannst damit auf den vollen Speicherbereich zugreifen. Das stellt kein Problem dar.

Bei den Atmegas mit Speicherinterface, z.B. Atmega162 kannst Du den externen Speicher ganz bequem wie das interne SRAM ansprechen, die Steuerleitungen, Adressen und Daten (multiplexen) macht der AVR dann selber.
Das Problem ist allerdings das die ersten x-Byte (größe SRAM) nicht nach aussen angesprochen werden.

Wenn man aber den ganzen externen Speicherbereich ansprechen will, muss man die A15 ausblenden (über ein Register) und die A15 "von Hand" setzen.

Man teilt also den Externen Speicher in 32KB Bänke auf die aus Sicht des µCom im Speicherbereich 8000 - FFFF liegen.
Wie schon geschrieben, Adressleitungen ab A15 muss man eben selber setzen.

Aber da der AVR sowieso nur bis 64KB extern Hardwareseitig unterstützt muss man bei >64KB sowieso das Bankswitching selber machen.

Die A15 kann man übrigens ganz einfach am entsprechenden Portpin anschließen.
Mit dem deaktivieren der A15 des Speicherinterrfaces ist dieser Pin ein ganz normaler I/O.

Etwas anders muss man bei den alten AT90S-Typen wie dem AT80S8515 vorgehen.
Da man hier die A15 nicht per Register deaktivieren kann, muss man einen zusätzlichen Portpin opfern an dem die A15 angeschlossen wird.
Programmiertechnisch dann das selbe, 8000 - FFFF und die Bänke "von Hand".

Das Speicherinterface zu benutzen spart ein wenig Platz im Flash ein und ist schneller.
Ist eben die Frage welche Optionen des µCom man braucht und ob man die Zeit (Programmgeschwindigkeit) hat das Speicherinterface "von Hand" zu implementieren.

Aber mit dem Atmega16 kann man auch 115200 Baud erreichen wenn man einen Flash beschreibt.
z.B. 29F010
Aktuelle Lynx FlashCard Firmware: hier klicken

Nerd? I prefer the term INTELLECTUAL BAD ASS

Ich kann nicht alle glücklich machen, ich bin ja keine Pizza!

Werde auch Du Fan von Lynxmans Basteltagebuch!  Klick mich, Du willst es doch auch! ;)

Offline czietz

  • Benutzer
  • Beiträge: 3.570
Re: Einfach programmierbares Modul für ROM-Port?
« Antwort #18 am: So 07.02.2016, 20:04:48 »
Uff, so, es ist vollbracht. Heute Nacht werde ich wohl von Leiterbahnen träumen.  :D

Ich habe das Layout mal bei einem chinesischen Leiterplattenlieferanten eingekippt, den ich schon immer mal testen wollte. Nachteil: Aufgrund des chinesischen Neujahrfestes und der Lieferzeit werde ich erst in gut einem Monat wissen, ob es auch läuft. Aber ich kann solange ja mit dem Programm für den ATmega anfangen.

Da der Leiterplattenlieferant eine Mindestabnahmemenge hat und mich außerdem dort 10 Leiterplatten weniger kosten als eine einzelne in Deutschland gefertigte, werde ich Platinen übrig haben. Wenn das Modul tatsächlich so funktioniert, wie ich es mir ausgedacht hatte, kann ich mir vorstellen, die Platinen mehr oder weniger zum Selbstkostenpreis weiterzuverkaufen; Interesse vorausgesetzt. Ich werde berichten...

Offline Lynxman

  • Moderator
  • *****
  • Beiträge: 2.118
  • Nicht Labern! Machen!
Re: Einfach programmierbares Modul für ROM-Port?
« Antwort #19 am: So 07.02.2016, 20:07:41 »
Machs nicht so spannend!

Welcher China-Mann darf es denn fertig?

Screenshots vom Layout?  :)

Welche FlashRoms setzt Du ein?
Aktuelle Lynx FlashCard Firmware: hier klicken

Nerd? I prefer the term INTELLECTUAL BAD ASS

Ich kann nicht alle glücklich machen, ich bin ja keine Pizza!

Werde auch Du Fan von Lynxmans Basteltagebuch!  Klick mich, Du willst es doch auch! ;)