NKC Forum
Register | FAQ | Search | Who is online? | Member list | Today's posts | Calendar | Login



Author Topic: Grundprogramm für den 68020 assemblieren
UR1968
Kennt sich schon aus
**
ID # 171


  Posted on May 05, 2019 09:06 AM (#1)  |  Quote Quote   PM PM   E-mail E-mail
Hallo,

für meinen Nachbau der CPU 68020 müsste ich mir das Grundprogramm aus den Sourcen neu bauen. Wie mache ich dies?

Hintergrund ist der Plan, das GP mit in den Boot EPROM zu packen. Als Bootprogramm verwende ich die Version von Torsten. Funktioniert soweit ich das sehe problemlos. Das GP wird in den RAM kopiert, das Bootprogramm wird auch kopiert, angesprungen. Das Suchen des GP klappt auch, es wird angesprungen und dann geht nichts mehr.

Zur Fehlersuche möchte ich nun Debugroutinen ins GP einbauen, damit ich sehe warum es nicht startet. Nur weiß ich leider nicht, wie ich das GP zusammen bauen muss. Wäre nett wenn mir einer auf die Sprünge helfen könnte.

Tschüß
Uwe

Posts: 103 | Member since: February 2017 | IP address: not saved
Torsten
Kennt sich schon aus
**
ID # 92


  Posted on May 05, 2019 10:15 PM (#2)  |  Quote Quote   PM PM   E-mail E-mail
Ich vermute mal, du hast die Karte im originalen NKC mit originaler Bank/Boot Karte am laufen ?

Achtung, der von mir verwendete Loader verwendet als Bankenregister 0xFFFFFFC9 ! Das origianle Bankenregister ist 0xFFFFFFC8
Das hatte ich mal an Anfang so gemacht, damit ich mit dem GP nicht in Konflikt gerade (und natürlich nie mehr geändert). Eigentlich kann ich das mal wieder korrigieren.

Für den Build des GP habe ich mir folgende Stichpunkte notiert, die ich hier einfach mal so hinklebe:
@ Jens: bitte korrigieren falls was falsch ist ;-)

Anmerkung:
Die SDIO und IDEIO muss für den 68020 in der Version 710r6 verwendet werden, damit der interne Cache korrekt behandelt wird.
(siehe aktualisierte https://github.com/THemmecke/68K20/tree/master/Software/GP)

Speichergrösse festlegen (damit ich meine Speichererweiterungskarten auch mit GP und JADOS voll ausnutzen kann)
---------------------------------------------------------------------------------------------------------------

-> varequ.asm (68020)
-> speicher.asm (68000)

grenze equ 1024*1024*cpu-1024*cpu-1 * Obergrenze für Speicher

habe ich ersetzt durch

memsize 100* Obergrenze in MB
grenze equ 1024*1024*memsize-1024*memsize-1 * Obergrenze für Speicher ()


Revisionsnummer (anpassen bei eigenen Veränderungen)
----------------------------------------------------

(kann mit !GETSER ausgelesen werden)

-> basbef.asm
<---snip---->
versnum:
dc.l $00000710 * Version 7.10
snnum:
dc.l $00000005 * Revisionsnummer (vormals Seriennummer)
<---snip--->

Kompilieren mit JADOS/GP
------------------------

tload
$400
2 (automatisch)
asstexte.ant
9 (beenden)
gp (ins GP wechslen)
5 (nur Fehlerausgabe)
f (assembler aufrufen)
z (zurück zu JADOS)

dsave
$80000 ($60000 bei 68000 - setadr Wert aus varequ.asm)
128 (bei 68020, 64 bei 68000)

direkt starten mit Start At $8(6)0424 im GP


EPROM-Image mit Loader bauen
----------------------------

ass move20.asm (Fehlermeldung 'falsche org Anweisung' ignorieren ! Programm wird ab $80000 abgelegt -> offset Anweisung)
dsave move20.bin $80000 1

dload move20.bin $80000
dload gp.bin $80100
dsave gpm.bin $80000 129



Ich hoffe, das hilft weiter ...

Posts: 78 | Member since: March 2008 | IP address: not saved
UR1968
Kennt sich schon aus
**
ID # 171


  Posted on May 06, 2019 08:22 PM (#3)  |  Quote Quote   PM PM   E-mail E-mail
Hallo Torsten,

vielen Dank für Deine Ausführungen. Damit sollte ich klar kommen.

Ich bin dabei die original CPU Karte nach zu bauen. Die Adressen in Deinem Loader habe ich natürlich angepasst. Der funktioniert auch wunderbar, nur beleibt der Bildschirm nach dem Sprung ins GP dunkel. Die CPU läuft aber weiter, macht aber nur noch Speicherzugriffe.

Nur habe ich noch das Problem wie ich beim 68k Daten mit dem PC austausche. Beim Z80 gibt es ja USB Lösungen, nur beim 68k ist mir dergleichen nicht bekannt. Auch ein Gotek als Diskettenlaufwerk hilft nicht weiter, da man die Images mit dem Jados Format nicht bearbeiten kann.

Übrigens habe ich auch die Absicht Deine Karten nach zu bauen. Die CPU habe ich schon, fehlt nur noch die GDP und eine Backplane.

Tschüß
Uwe

Posts: 103 | Member since: February 2017 | IP address: not saved
Torsten
Kennt sich schon aus
**
ID # 92


  Posted on May 06, 2019 10:42 PM (#4)  |  Quote Quote   PM PM   E-mail E-mail
Hi Uwe,

wenn der Loader das GP an die gewünschte Zieladresse kopiert und das Banken-Register gesetzt hat, dann springt es das GP an. Das GP baut dann seine Vector-Tabelle auf und läüft los.

Einsprungpunkt ist start: in MENUE.ASM, dort steht auch folgende Sequenz für Boot-Eprom und BankBoot-Karten (!)

start: * Grundprogramm Start beim Einschalten / Reset
move.b #$80,$bfffffc8 * BOOT-Eprom ausblenden
move.l #$80808080,bankboot.w * Weitere BANKBOOT-Karten ausblenden

Hast du noch andere Bank-Boot Karten ? Evtl. musst du das dann schon im Loader machen.
Ansonsten kann dir sicher der Jens weiterhelfen, der hat die originale 68020 wohl schon am Rennen.

Eine Möglichkeit für Debug wäre nicht schlecht, vor allem nicht immer das Register/Fehler-Fenster einblenden, wenn was schief geht, dann sieht man die letzten Ausgaben nicht mehr... :mad:

Datenaustausch machen ich z.Z. halt über die GDP-FPGAII mit SD-Card und IDE-Card, das ist ganz ok.

Ein Backplane für die ECB Variante (B.104xxC7A) gab's mal von hartmann-elektronik.de - leider führen die jetzt nur noch VME Backplanes und die haben eine spezielle Verdrahtung. Evtl. wird man auf EBay fündig. Ansonsten muss man eben mal eine Backplane auflegen, 4 Slots sollten reichen.

Viel Erfolg !! Ich hoffe das klappt bald, wir brauchen noch mehr Mitstreiter im 68k-Club :D

Grüsse
Torsten

Posts: 78 | Member since: March 2008 | IP address: not saved
UR1968
Kennt sich schon aus
**
ID # 171


  Posted on May 07, 2019 09:11 PM (#5)  |  Quote Quote   PM PM   E-mail E-mail
Hallo Torsten,

eine SD Karte habe ich mir auch schon an die GDP-FPGA gebastelt. Was hat die den für ein Dateisystem? Ich nehme einmal an es ist FAT. Da muss ich mal schauen wie ich die in meinem Linux gemountet bekomme.

Tschüß
Uwe

Posts: 103 | Member since: February 2017 | IP address: not saved
DerInder
Fast schon Admin
Seitenadmins
***
ID # 2


  Posted on May 07, 2019 09:42 PM (#6)  |  Quote Quote   PM PM   E-mail E-mail
Moin Uwe,

die 1. SD-Karte auf der GDP-FPGA solle einentlich mit Jados sein, dann kannst du auch von der booten. Bei Hans-Werner liegt irgendwo das Image, das ich mal dafür gemacht habe.
Das musst du dann einfach mit einem Image-Writer auf die Karte schreiben. Ansonsten müsste ich mal schauen, ob ich das noch auf die schnelle finde.
Übrigens verwende ich eine 2. SD-Card auf der GDP-FPGA mit FAT16. Auf diese greife ich dann mit (meinen) MTOOLS zu. Damit hab ich einen einfachen Datenaustausch mit dem PC.

-----------------------
Gruß
-=jens=-

Posts: 912 | Member since: June 2004 | IP address: not saved
Torsten
Kennt sich schon aus
**
ID # 92


  Posted on May 08, 2019 08:30 AM (#7)  |  Quote Quote   PM PM   E-mail E-mail
Hallo Uwe,

ich habe mal das Image und die Anleitung dazu auf github gestellt:

https://github.com/THemmecke/68K20/tree/master/Software/JADOS

Posts: 78 | Member since: March 2008 | IP address: not saved
UR1968
Kennt sich schon aus
**
ID # 171


  Posted on May 09, 2019 04:21 PM (#8)  |  Quote Quote   PM PM   E-mail E-mail
Hallo Jens, Torsten,

aha ich brauche also eine 2. SD-Karte. Ich hatte mir einen Adapter mit nur einer Karte gemacht. Das Image hatte ich bei Hans-Werner gefunden. Funktioniert prima. Gestern habe ich auf eine GDP 2 Kartenslots gelötet, nun muss ich nur noch eine 2. Karte finden, die damit funktionieren will.

Mit dem GP auf 4 ROA funktioniert die CPU Karte schon sehr gut. Nur habe ich noch ein Problem mit Zugriffen auf die SD Karte bzw. Diskette. Die SD-Karte läuft nur bis 6 MHz die Diskette nur bis 8 MHz CPU Takt. Waitstates auf der CPU Karte bringen nichts, da muss ich am Wochenende mal schauen, ob die Schaltung überhaupt richtig funktioniert.

Tschüß
Uwe

Posts: 103 | Member since: February 2017 | IP address: not saved
Torsten
Kennt sich schon aus
**
ID # 92


  Posted on May 09, 2019 04:56 PM (#9)  |  Quote Quote   PM PM   E-mail E-mail
Hi Uwe,

auf der GDP-FPGAII habe ich das mit dem Generieren des Wait-Signals auf der GDP selbst gelöst, damit kann die Karte unabhängig vom CPU-Takt betrieben werden.
Ich denke aber, dass die "originale" GDP von Andreas kein eigenes WAIT Signal erzeugt, das müsste man da mal dranbasteln - das Problem war, dass da kein Pin mehr für frei war. Am FPGA könnte man was frei machen, aber man braucht noch die 3.3V->5V Umsetzung und da fehlt es halt auch .... und dann wird's fummelig.

Grüsse
Torsten

Posts: 78 | Member since: March 2008 | IP address: not saved
UR1968
Kennt sich schon aus
**
ID # 171


  Posted on May 09, 2019 07:08 PM (#10)  |  Quote Quote   PM PM   E-mail E-mail
Hallo,

ich habe nun alle meine SD Karten probiert und habe nur eine gefunden bei der das Jados Image läuft. Bei der FAT16 sieht es noch schlimmer aus, nicht eine Karte will funktionieren. Nach MINST kommt immer kein Laufwerk gefunden. Könnt Ihr mir eine Empfehlung für die SD Karten geben?

Tschüß
Uwe

Posts: 103 | Member since: February 2017 | IP address: not saved
Torsten
Kennt sich schon aus
**
ID # 92


  Posted on May 09, 2019 10:22 PM (#11)  |  Quote Quote   PM PM   E-mail E-mail
Hallo Uwe,
versuche es mal mit den MTOOLS 0.8F. Mit den MTOOLS 0.9A habe ich mit 68020 exakt das gleiche Problem.


Grüsse
Torsten

Posts: 78 | Member since: March 2008 | IP address: not saved
DerInder
Fast schon Admin
Seitenadmins
***
ID # 2


  Posted on May 10, 2019 01:23 PM (#12)  |  Quote Quote   PM PM   E-mail E-mail
Moin Uwe,

die SD-Cards müssen vom Typ SDv1 oder MMCv1 sein, das sind im allgemeinen Karten mit einer Kapazität <1GB.
Und wie Torsten schon schreibt sollten die MTOOLS v0.9x sein.

-----------------------
Gruß
-=jens=-

Posts: 912 | Member since: June 2004 | IP address: not saved
UR1968
Kennt sich schon aus
**
ID # 171


  Posted on May 10, 2019 04:52 PM (#13)  |  Quote Quote   PM PM   E-mail E-mail
Hallo Jens, Torsten,

das erklärt schon einmal warum nur eine SD Karte mit Jados funktioniert. Das ist die mit 1 GB. Ich habe zwar noch eine mit 512 MB, die funktioniert aber leider nicht. Da werde ich mir nun halt noch ein paar Karten besorgen müssen.

Würde denn die FAT SD Karte auch funktionieren, wenn man nicht von SD Karte bootet?

Tschüß
Uwe

Posts: 103 | Member since: February 2017 | IP address: not saved
DerInder
Fast schon Admin
Seitenadmins
***
ID # 2


  Posted on May 10, 2019 08:22 PM (#14)  |  Quote Quote   PM PM   E-mail E-mail
Moin Uwe,

du kannst die FAT SD Karte auch benutzen, wenn du von Floppy bootest (hab ich gerade nochmal getestet).

Übrigens benötigt mein 16MHz 68020 2 IO-Wartezyklen damit die GDP-FPGA stabil läuft. Bei ein Zyklus hängt sie ab und zu.

-----------------------
Gruß
-=jens=-

Posts: 912 | Member since: June 2004 | IP address: not saved
UR1968
Kennt sich schon aus
**
ID # 171


  Posted on May 11, 2019 09:16 AM (#15)  |  Quote Quote   PM PM   E-mail E-mail
Hallo Jens, Torsten,

ich habe glücklicherweise in einem alten Handy noch eine 1 GB Micro SD Karte gefunden. Diese funktioniert auch, bei der FAT16 Karte musste ich mir aber 2 Partitionen erstellen. Der Zugriff gelingt aber nur mit den Mtools09A. Zumindest kann ich jetzt in Sachen GP weiter machen.

Tschüß
Uwe

Posts: 103 | Member since: February 2017 | IP address: not saved
UR1968
Kennt sich schon aus
**
ID # 171


  Posted on May 11, 2019 08:30 PM (#16)  |  Quote Quote   PM PM   E-mail E-mail
Hallo,

ich komme mit dem assemblieren des GP nicht weiter. Mit der 68020 Karte bleibt die CPU nach ein Paar Sekunden stehen. Nutze ich die 68008 Karte erhalte ich Fehlermeldungen. Ich habe mir daraufhin die Sourcen angeschaut und festgestellt, dass die Dateien teilweise beschädigt sind. So etwas die VAREQU.ASM oder die ASSTEXTE.ANT. Dies betrifft auch die, bei Hans-Werner zu findenden Sourcen der 68008 und 68000 Versionen. Bei der 68008 habe ich dann auch beim assemblieren Fehlermeldungen erhalten. Das erstellte GP lässt sich auch nicht starten.

Es wäre jetzt sehr nett, wenn mir einer funktionierende Sourcen für die einzelnen CPU zusenden könnte.

Tschüß
Uwe

Posts: 103 | Member since: February 2017 | IP address: not saved
DerInder
Fast schon Admin
Seitenadmins
***
ID # 2


  Posted on May 12, 2019 06:14 PM (#17)  |  Quote Quote   PM PM   E-mail E-mail
Moin Uwe,
du hast ne Mail ;)

-----------------------
Gruß
-=jens=-

Posts: 912 | Member since: June 2004 | IP address: not saved
UR1968
Kennt sich schon aus
**
ID # 171


  Posted on April 04, 2020 05:58 PM (#18)  |  Quote Quote   PM PM   E-mail E-mail
Hallo,

so nach dem die die CPU 68020 endlich richtig funktioniert, habe ich nochmals mit dem assemblieren versucht. Nur erscheint nichts auf dem Bildschirm, auch nicht wenn alle Ausgaben auf CRT umgeleitet werden. Der Vorgang lässt sich aber mit ESC abbrechen und die Symbole werden auch angelegt.

Daher mal die Frage wie lange das Assemblieren eigentlich dauert. Oder ist da bei mir noch ein Wurm drin.

Tschüß
Uwe

Posts: 103 | Member since: February 2017 | IP address: not saved
UR1968
Kennt sich schon aus
**
ID # 171


  Posted on June 26, 2021 09:02 PM (#19)  |  Quote Quote   PM PM   E-mail E-mail
Hallo,

die Sache hat mir keine Ruhe gelassen und ich habe mich weiter damit beschäftigt. Nach fast 15h Arbeit hat der Assembler dann etwas ausgespuckt und der Rechner hat sich aufgehängt. Das kam mir dann schon etwas komisch vor und ich habe dann statt der kommentierten Version die ohne Kommentare verwendet. Die konnte ich dann auch ohne Probleme assemblieren. Bei der kommentierten Version scheint da wohl bei den Sourcen für den Assembler (ass1 - ass3) etwas faul zu sein. Wie von Torsten vorgeschlagen habe ich die neuen Versionen von IDEIO und SDIO verwendet. Bei der SDIO musste ich erst noch ein paar Fehler beseitigen. Aber jetzt funktioniert alles wie es soll.

Für mich ist damit das Themas erst einmal erledigt.

Tschüß
Uwe

Posts: 103 | Member since: February 2017 | IP address: not saved



| https://hschuetz.selfhost.eu | Board rules | Privacy policy


Tritanium Bulletin Board 1.8
© 2010–2021 Tritanium Scripts


Site created in 0.031485 seconds
Processed 18 files
gzip compression enabled
2497.91 KiB memory usage