NKC Forum
Registrieren | FAQ | Suche | Wer ist online? | Mitgliederliste | Heutige Beiträge | Kalender | Einloggen



Autor Thema: NKC 68K8 und Terminal
netmercer
Kennt sich schon aus
**
ID # 176


  Erstellt am 19. Dezember 2017 23:39 (#1)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Hallo NKC-Fans,

weiß jemand, ob es möglich ist ein NKC System mit 68K8 CPU über ein Terminal zu bedienen (sowohl Grundprogramm, als auch CP/M68K), also ohne daß eine GDP64 im System stecken muß?
In Verbindung mit der Z80 CPU soll ein derartiger Betrieb möglich sein.

Viele Grüße
Bernhard

Beiträge: 52 | Mitglied seit: April 2017 | IP-Adresse: gespeichert
m.haardt
Voll in Gange
***
ID # 93


  Erstellt am 20. Dezember 2017 17:28 (#2)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Beim Z80 gibt es zwei Software-Welten: Grundprogramm und FLOMON. Der Terminalbetrieb geht nur mit FLOMON.

Beim 68k basiert alles auf dem Grundprogramm, und das kennt da wie beim Z80 nur den Betrieb mit GDP.

Die Hardware ist modular, die Software leider nicht. Ich würde gerne für den 68k einen anderen Monitor portieren, aber bisher kam ich noch nicht dazu. Immerhin bin ich schon soweit, unter Linux 68k Code assemblieren zu können und ich habe ein standalone Programm, was auf der IOE blinkt.

Sowie die SER funktioniert, geht es an die Portierung. Irgendwann.

Michael

Beiträge: 501 | Mitglied seit: April 2008 | IP-Adresse: gespeichert
netmercer
Kennt sich schon aus
**
ID # 176


  Erstellt am 22. Dezember 2017 16:45 (#3)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Hallo Michael,
danke für die Erklärung. Habe inzwischen auch schon an anderer Stelle gelesen, daß ein Terminalbetrieb für das Grundprogramm eher ausscheidet.
Aber wenn eine serielle Schnittstelle für den 68K8 verfügbar ist, dann sollte sowas doch für CP/M68K mit überschaubarem Aufwand umsetzbar sein. :confused:

Zitat:
Sowie die SER funktioniert, geht es an die Portierung. Irgendwann.


Bedeutet das etwa, daß die SER mit dem 68K nicht zusammenarbeitet?

Viele Grüße
Bernhard

Beiträge: 52 | Mitglied seit: April 2017 | IP-Adresse: gespeichert
m.haardt
Voll in Gange
***
ID # 93


  Erstellt am 22. Dezember 2017 16:57 (#4)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Doch, die SER funktioniert beim 68k problemlos. Meine jetzt auch, da war u.A. der UART kaputt.

CP/M-68k ist etwas primitiv, ähnlich CP/M-80 2.2. Das BIOS ist also ein Stück. Die Portadressen hängen bei der Architektur des NKC von der CPU ab, weil sie je nach Busbreite anders sind. Darum benutzt das BIOS das Grundprogramm. Man braucht also das richtige Grundprogramm für die CPU, aber CP/M-68k ist dann für alle gleich.

Wenn Du das BIOS anpasst, ist eine serielle Konsole sicher kein Problem. Ich bezweifle, dass es einfacher geht.

Was ein alternatives Monitorprogramm angeht: Im Moment hängt das am Code für das Boot-ROM. Ich fand vier Images und zwei Sources, und die Sources sind wohl am Ältesten. Mir ist unklar, wo die Unterschiede sind und warum es überhaupt welche gibt.

Michael

Beiträge: 501 | Mitglied seit: April 2008 | IP-Adresse: gespeichert
DerInder
Fast schon Admin
Seitenadmins
***
ID # 2


  Erstellt am 22. Dezember 2017 18:32 (#5)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Moin Moin,

nochmal so zur Info. Das Grundprogramm der 68k läuft nicht ohne die GDP. Ich hatte zwar "damals" Versucht die GDP Zugriffe des GPs zu isolieren, aber das GP ist komplett um die GDP aufgebaut, von daher hab ich es aufgegeben. Z.B. der Editor geht ohne GDP nicht.

Allerdings lassen sich die CI und CO Routinen problemlos auf die SI und SO umleiten, sprich ein rein textbasiertes Programm wie auch CP/M kann auch über die SER laufen.

Wenn ich mich recht errinere wird bei CP/M-68k auch das IO-Byte unterstützt, man kann dann die Umleitung auch vom CP/M her machen.

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

Beiträge: 912 | Mitglied seit: Juni 2004 | IP-Adresse: gespeichert
netmercer
Kennt sich schon aus
**
ID # 176


  Erstellt am 23. Dezember 2017 00:06 (#6)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Hallo Jens, hallo Michael, (alphabetisch geordnet)

danke für Eure Beiträge. Jetzt sehe ich schon etwas klarer.
CP/M68K über Terminal scheint umsetzbar zu sein. Das GP wird zwar fürs BIOS benötigt, kann aber selbst nicht benutzt werden. Die SER ist vermutlich bereits unter CP/M68K eingebunden.
Hört sich so an, als ob man nur am GP vorbei direkt CP/M68K booten müßte (also vermutlich am BOOTROM etwas Änderungsbedarf)und z.B. über die Autostartfunktion mit STAT die Console auf die SER umstellt (zumindest unter CP/M 2.2 wäre sowas möglich).
Mir ist bewußt, daß CP/M68K unter den Möglichkeiten des 68K bleibt, aber es ist ein vollwertiges Betriebssystem, daß sicherlich ausreicht, um alte verschüttete 68K Assembler Erfahrungen wiederzubeleben.

Viele Grüße
Bernhard

Beiträge: 52 | Mitglied seit: April 2017 | IP-Adresse: gespeichert
DerInder
Fast schon Admin
Seitenadmins
***
ID # 2


  Erstellt am 23. Dezember 2017 00:21 (#7)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Moin Bernhard,

für den 68k Assembler brauchst du nur das 68k Grundprogramm ;)
Es ist ein Editor und ein Assembler vorhanden :D

CP/M-68k ist sehr viel einfacherer als die die CP/M-80 Varianten anzupassen. Aber es gibt leider so gut wie keine Software dafür :(
Von daher verwenden die meisten Jados.

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

Beiträge: 912 | Mitglied seit: Juni 2004 | IP-Adresse: gespeichert
netmercer
Kennt sich schon aus
**
ID # 176


  Erstellt am 23. Dezember 2017 20:19 (#8)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Hallo Jens,

ja, das stimmt natürlich. Aber dann bin ich wieder bei einer GDP64 und diese wollte ich ja gerade vermeiden.
Aber zuerst einmal muß ich die Platinen für ein NKC-68K8-Minimalsystem zusammenstellen. Rene soll ja noch was haben...

Viele Grüße und schöne Weihnachten (auch an alle Mitleser)
Bernhard

Beiträge: 52 | Mitglied seit: April 2017 | IP-Adresse: gespeichert
m.haardt
Voll in Gange
***
ID # 93


  Erstellt am 23. Dezember 2017 21:03 (#9)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Das Hauptproblem dürfte eine 68k Entwicklungsumgebung sein, in der Du das CP/M-68k Image baust.

Für Z80 habe ich CP/M 2.2 in einem Z80-Simulator laufen. Vielleicht gibt es einen Simulator mit fertigem CP/M-68k Image?

Michael

Beiträge: 501 | Mitglied seit: April 2008 | IP-Adresse: gespeichert
netmercer
Kennt sich schon aus
**
ID # 176


  Erstellt am 29. Dezember 2017 22:50 (#10)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Hallo,

im Netz habe ich den Quellcode zu einem CP/M-68K Emulator gefunden, den ich jetzt unter einem Debian Derivat am Laufen habe. Damit sollte sich ein CP/M-68K BIOS entsprechend anpassen und ein System aufsetzen lassen. Habe schon mal etwas im NDRBIOS.S gestöbert und wie Jens schon gesagt hat, wird das IO-Byte unterstützt, d.h. man kann an dieser Stelle bereits die Console auf die SER umleiten. In der Theorie schon ganz schön, aber jetzt muß es noch in die Praxis umgesetzt werden. :rolleyes:

Viele Grüße
Bernhard

Beiträge: 52 | Mitglied seit: April 2017 | IP-Adresse: gespeichert
netmercer
Kennt sich schon aus
**
ID # 176


  Erstellt am 13. April 2018 00:01 (#11)  |  Zitat Zitat   PN PN   E-Mail E-Mail
NKC68K8 Terminalbetrieb an CP/M-68K :D


Hallo Interessierte,

nachdem jetzt endlich die SER und der serielle Teil der CSP am NKC68K8 laufen, konnte ein kleiner 68K ROM Monitor (ca. 3KByte) angepaßt und im BootROM ans Laufen gebracht werden (zBug 1.0 aus dem Netz). Bedienung zunächst der Einfachheit
halber über die SER und einem Terminalprogramm unter Windows.
Damit sind zwar nur Dinge wie HEX Dumps, Programmstart, Laden von Dateien im Motorola S-Format über serielle Schnittstelle u.a. möglich, aber zum Austesten div. Programme, die mit Easy68K auf dem PC angepaßt oder geschrieben wurden, bzw. um die seriellen NKC Karten zu testen, völlig ausreichend.
Die Systemkonfiguration, um CP/M-68K über ein serielles Terminal auf die Beine zu bekommen, sieht im Moment folgendermaßen aus:

CPU68K8
RAMBOOT68K mit Monitor zBug im 32K BOOTROM und 512K RAM als Arbeitsspeicher ($0 - $7FFFF)
SRAM1M mit 512K batteriegepuffert als RAM Disk ($80000 - $EFFFF)
SER mit R6551 (2MHz) mit 9600,N,1 CTS/RTS über FTDI232 (TTL - USB) am WinPC
CSP mit Zilog CTC, SIO/0 (6MHz) bis zu 115200,N,1 (bisher nur div Tests, Hauptverbindung über SER)

Das NDRBIOS wurde mit Routinen für die SER ergänzt, das IOBYTE und die Programmteile für die RAMDisk angepaßt, um
letztendlich CP/M-68K von der RAM Disk booten zu können. Das CPM.SYS File wird, wie in Beitrag #10 , mit Hilfe eines
CP/M-68K Simulators erstellt und auf eine passende Startadresse am oberen Ende des Arbeitsspeichers reloziert
(Dateiheader entfernen nicht vergessen).
Mit Hilfe von zBug erfolgte die Übertragung auf die "Bootspur" der RAMDisk, von wo aus es mittels eines kleinen
Programmes (liegt natürlich ebenfalls auf der RAM Disk) jederzeit in den Arbeitsspeicher kopiert und gestartet werden kann. Um Futter für CP/M zu haben kann man sich jetzt mit dem Programm "cpmtools" kompatible Disk Images für die RAM Disk zusammenstellen, über die SER in die RAM Disk übertragen und fröhlich loslegen.
Auch mit PIP lassen sich bereits jetzt Dateien von der RAM Disk zum PC und zurück übertragen.
Das ist natürlich bisher nur ein System, um das Prinzip auszuprobieren. Aber bereits völlig ausreichend, um jetzt mit den entsprechenden Disk Images, vollgepackt mit Entwicklertools, das BIOS mit Treibern für DOM Module, SD-Karten, USB Mäusen, RTC, SOUND und was auch sonst noch zu versehen und das System Schritt für Schritt auszubauen.
Übrigens funktioniert die Batteriepufferung der "alten" SRAM1M in Verbindung mit der CPU68K8 völlig problemlos und
zuverlässig.
Anbei noch Bildchen vom Terminalschirm. ;)

Viele Grüße
Bernhard



Noch eine Frage an die Experten:
Ich hadere etwas mit dem Bootvorgang in Verbindung mit der BOOTRAM68K. In meiner naiven Vorstellung bin ich davon ausgegangen, daß die 32K BOOTROM nur in den ersten 32K eingeblendet werden und der Rest mit dem RAM der BOOTRAM belegt ist. Aber leider wird das BOOTROM zu Beginn jeder 64K Seite eingeblendet, wiederholt sich also 16-mal und belegt die Hälfte des 1M Adressraumes. Solange das BOOTROM eingeblendet ist, läßt sich leider auch das GP-ROM nicht an 080000h einblenden.
Ist das eigentlich vom Erfinder so gewollt, oder hat meine BOOTRAM68K eine Macke?

Beiträge: 52 | Mitglied seit: April 2017 | IP-Adresse: nicht gespeichert
dl1ekm
Kennt sich schon aus
**
ID # 149


  Erstellt am 14. April 2018 19:42 (#12)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Cool....

Beiträge: 82 | Mitglied seit: März 2015 | IP-Adresse: nicht gespeichert
m.haardt
Voll in Gange
***
ID # 93


  Erstellt am 15. April 2018 11:40 (#13)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Als jemand, der selbst CP/M 2 mit Bootloader und allem neu ans Laufen brachte: Gute Arbeit, vor allem in der Zeit!

Verstehe ich es recht, dass Du zBug als standalone ROM benutzt, d.h. es nicht wie das GP vom Boot-ROM starten lässt?

Michael

Beiträge: 501 | Mitglied seit: April 2008 | IP-Adresse: nicht gespeichert
smed
Stammgast
**
ID # 114


  Erstellt am 15. April 2018 18:08 (#14)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Wow!

-----------------------
NKC'ler seit 1984 (Pause zw. 1988-2017)
CPU68k,CPU68000,4xROA64,6xIOE,6xGDP,GDPHS,8xSBC2/3,HEXIO,6xKEY,UHR3,PROMER,CENT,SER,SOUND,CAS,6xBUS2,4xBUS3,3xPOW5V,2xTAST..und einen ArduinoMEGA mit auf dem BUS, und eine selbstgebastelte MEM960k.

NKC - OpenSource since 1983

Beiträge: 182 | Mitglied seit: Januar 2011 | IP-Adresse: nicht gespeichert
netmercer
Kennt sich schon aus
**
ID # 176


  Erstellt am 15. April 2018 22:07 (#15)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Hallo Interessierte,

Zitat:
Verstehe ich es recht, dass Du zBug als standalone ROM benutzt, d.h. es nicht wie das GP vom Boot-ROM starten lässt?



ja, der zBug Monitor ist im Boot ROM und startet direkt nach dem Einschalten. Es wird nichts umkopiert. Der für das GP vorgesehene Sockel ist nicht bestückt.
Das kommt ganz einfach daher, weil ich davon ausgegangen bin, daß das Boot ROM nur in die ersten 32K vom Adressraum ($0 - $007FFF) eingeblendet wird und der Rest mit dem vorhandenen RAM belegt ist. Also wollte ich ganz simpel zBug aus dem ROM betreiben und mich im reichlich vorhandenen RAM austoben.
Aber denkste, der ROM Bereich wird eben 16-mal (eigentlich nur 15-mal) in den Adressbereich eingeblendet und verwandelt das Ganze in einen schweizer Käse. Andererseits war das für die Dinge, die ich bisher gemacht habe auch kein Problem, da selbst CP/M-68K nur 24KByte groß ist. Und Assemblerprogramme, die am Stück größer als die 32KByte RAM Häppchen sind, wollen erst einmal geschrieben sein.
Außerdem läßt sich im Progrämmchen oder beim CP/M Start das ROM ja problemlos ausblenden.
Um aber mit dem gesamten RAM vernünftig arbeiten zu können, müßte sich zBug nach dem Reset als erste Aktion in ein Stück zugängliches RAM kopieren, das Boot ROM abschalten und eventuell noch einmal umkopieren, falls eine ganz bestimmte Stelle als Ablageort gewünscht ist. (Mache demnächst mal ein neues ROM mit dieser Funktion)
Falls zusätzlich jemand den Sockel des GP ROMs nutzen möchte, muß immer zunächst das Boot ROM ausgeblendet werden, ansonsten läßt sich das GP-ROM nicht bei $080000 einblenden. Leider alles etwas umständlich.

Benutzt eigentlich jemand aus dem Kreis der Mitleser CP/M-68K?

Viele Grüße
Bernhard

Beiträge: 52 | Mitglied seit: April 2017 | IP-Adresse: nicht gespeichert
m.haardt
Voll in Gange
***
ID # 93


  Erstellt am 17. April 2018 21:47 (#16)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Du könntest das umgehen, was gerade mit Sicht auf den 68020 mit seinem kleinen und langsamen ROM sinnvoll wäre, wenn Du zBug wie das GP starten lässt.

Ab Adresse 0x400 wird in 4K Schritten ein Grundprogramm gesucht. Es wird daran erkannt, dass es mit 0x5aa58001 beginnt und dass nach 7 weiteren 32 bit Wörtern zwei bra Befehle kommen. Der 2. dieser Befehle wird ausgeführt. Ein minimales Grundprogramm könnte ab Adresse 0 starten:

ds $400 ; 1k z.B. fuer exception table
dc.l $5aa58001 ; Suchstring fuer Anfang
dc.l 0,0,0,0,0,0,0
bra traprts ; Start-Trap mit RTS-Abschluss
bra start ; Kalt-Start

Adresse 0 ist allerdings nicht empfehlenswert, weil man dann die Exception Table nicht mehr ändern kann.

Ich wollte auch immer mal einen kleinen Monitor portieren, um OS-9 anzupassen und zu starten, aber ich komme einfach nicht dazu. Bisher habe ich mich erst in die Struktur vom 68k NKC eingearbeitet.

Michael

Beiträge: 501 | Mitglied seit: April 2008 | IP-Adresse: nicht gespeichert



| https://hschuetz.selfhost.eu | Boardregeln | Datenschutzerklärung


Tritanium Bulletin Board 1.8
© 2010–2021 Tritanium Scripts


Seite in 0,018519 Sekunden erstellt
20 Dateien verarbeitet
gzip Komprimierung eingeschaltet
763,73 KiB Speichernutzung