Hier als .ZIP mal eine Kurzanleitung wie man mit WinLabs minGW GCC sich selbst die Windows-Version von RunCPM compilieren kann
(wurde auf Discord angefragt, da habe ich mal kurz was dazu geschrieben)
Hier als .ZIP mal eine Kurzanleitung wie man mit WinLabs minGW GCC sich selbst die Windows-Version von RunCPM compilieren kann
(wurde auf Discord angefragt, da habe ich mal kurz was dazu geschrieben)
Nach dem Internet hat der SONY HITBIT MSX1 eine 8-poligen DIN (siehe Bild):
Dazu gibt es dann 2 Aussagen zur Belegung:
1.) von MSX.ORG Wiki
2.) vom MSX.ORG Forum
Update des Source auf RunCPM v6.5 fuers TTGO VGA32
Es bleibt bei
- ESP32-Core v2.0.17
- SdFAT Library v2.2.3
RunCPM v6.5 Windows-Starterpack fuer Win 32 & 64 Bit (ohne LUA - weil unsupported jetzt) ist unter
https://github.com/guidol70/Ru…_Win_v6_5_Starterpack.zip
oder hier im Anhang
Leider kam die letzte Version von RunCPM - v6.5 - fuer Arduino-like Geraete etwas schnell nach der v6.4
So hier Source & Binarys (.UF2) der v6.5 fuer den RPi Pico & PicoW
Der Autor von RunCPM - Marcelo Dantas - hat bekannt gegeben, dass die v6.5 die letzte Versionsnummer sein wird.
Evtl. gibt es fuer die v6.5 spaeter noch Bug-Fixes, aber keine neuen Features mehr.
D.h. das ist die letzte Versionsnummer fuer Arduino-like Geraete.
Evtl. wird es in der Zukunft ein "RunCOM++" geben fuer Linux 6 Windows:
ZitatAlles anzeigen@everyone I hate to be the bearer of bad news, but...
6.5 (which I just pushed) will be the last version of RunCPM.
There will be no more feature adding to it.
Only bug fixes for a while, until we run out of bugs.
Its been about 10 years or so since I wrote its first line of code, I think it is time to let it live its maturity.
I have another related project in mind, which will be a spinoff from RunCPM,
fully rewritten from scratch, still v2.2 only, no Lua, no external CCPs.And Windows/Linux only, no Arduino.
Also no promises and no ETAs.
I am not abandoning RunCPM completely though, I will continue to run this Discord channel and the GitHub for as long as forever.
Thanks for all your support and dedication.
Cheers to you all. 🍻 🥂
Kann man mit dem RunCPM solche Boards auch sinnvoll nutzen, z.B. viele Disk Images im externen Speicher ablegen und dann darauf zugreifen, also ähnlich wie beim AVRCPM Stick, den ich sonst gerne verwende?
Bis jetzt habe ich noch keine Source-Version gesehen, die den Onboard-Speicher nutzt, da RunCPM die SdFat-Library nutzt (FAT32-Filesystem meist).
Ausserdem nutzt RunCPM keine Disk-Images, so dass ein oefteres schreiben im OnBoard-Flash zu viele Write-Zugriffe erzeugen wuerde - das waere schlecht fuer die Flash-Haltbarkeit
Update auf
RunCPM v6.4 (einige Fixes in ccp.h und disk.h)
inkl. RP2040-Core v3.9.3
Gibt es hier als Anhang Source/Binarys (.UF2)
fuer RPi Pico (270Mhz) und PicoW (260Mhz)
wenn man die TINST.DTA der 2.0 in die 3.0(1)A kopiert bekommt man den TA-PC als Auswahl angeboten.
Was mich wundert sind die CTRL-C bei einigen Eingaben (die aber auch so beim TINST von der 2.0 so angezeigt werden):
Which terminal? (Enter no. or ^Q to exit): 24
Do you want to modify this definition before installation? (Y/N)? Y
Terminal type: TA-PC Change to: TA-PC_______________
Send an initialization string to the terminal? (Y/N)? N Change to: N
Send a reset string to the terminal (Y/N)? N Change to: N
CURSOR LEAD-IN command: Change to:
CLEAR SCREEN command: Ctrl-L Ctrl-C (12 3) Change to:
Does CLEAR SCREEN also HOME cursor (Y/N)? Y Change to: Y
DELETE LINE command: Ctrl-C (3) Change to:
INSERT LINE command: Ctrl-N (14) Change to:
ERASE TO END OF LINE command: Ctrl-V(+128) (150) Change to:
START HIGHLIGHTING command: Change to:
Number of rows (lines) on your screen: 24 Change to:
Number of columns on your screen: 80 Change to:
Delay after CLEAR, DELETE and INSERT (0-255 ms): 255 Change to:
Delay after ERASE TO END OF LINE and HIGHLIGHT (0-255 ms): 255 Change to:
Is this definition correct? (Y/N)? Y
Alles anzeigen
Die TINST.DTA habe ich aus dem TP2.0-IMD extrahiert (per IMDU und cpmtools -f alpha)
Kopier diese in Deine 3.0(1)A und versuche mal den TA-PC als Einstellung fuers Terminal.
Manche im Internet meinen der Alphatronic PC arbeitet mit V52 Codes, aber die terminal-Emualtion des Alhatronic ist fehlerhaft
Im Thread
https://forum.vcfed.org/index.…tronic-pc-software.70606/
wird ein CRT.COM genannt zur Verbesserung, aber das ist im Wayback-Archive leider nicht mit drin
(https://web.archive.org/web/20…4.96/alphatronic/crt.html)
Auch das download-Verzeichnis nicht, wo es haette drin sein koennen:
Als information - im Wayback-Archive sind nur 2 incomplete Backups:
https://web.archive.org/web/20…/81.98.24.96/alphatronic/
https://web.archive.org/web/20…/81.98.24.96/alphatronic/
xbeaver (auch ein alphatronic emulator) unter
https://web.archive.org/web/20…tp://81.98.24.96/xbeaver/
https://web.archive.org/web/20…eaver_software_vault.html
Mit den Definitionen oben habe ich weniger Erfolg gehabt.
Weiss jemand, warum Zenith eine gute Wahl ist?
Evtl. weil einige Zenith-Codes mit denen fuer den TA PC/8 aus dem Buch oben uebereinstimmen?
Which terminal? (Enter no. or ^Q to exit): 30
Do you want to modify this definition before installation? (Y/N)? Y
Terminal type: Zenith Change to: ZTest_______________
Send an initialization string to the terminal? (Y/N)? N Change to: N
Send a reset string to the terminal (Y/N)? N Change to: N
CURSOR LEAD-IN command: <ESC> Y (27 89) Change to:
CURSOR POSITIONING COMMAND to send between line and column: Change to:
CURSOR POSITIONING COMMAND to send after both line and column: Change to:
Column first (Y/N)? N Change to: N
OFFSET to add to LINE: 32 Change to:
OFFSET to add to COLUMN: 32 Change to:
Binary address (Y/N)? Y Change to: Y
CLEAR SCREEN command: <ESC> E (27 69) Change to:
Does CLEAR SCREEN also HOME cursor (Y/N)? Y Change to: Y
DELETE LINE command: <ESC> M (27 77) Change to:
INSERT LINE command: <ESC> L (27 76) Change to:
ERASE TO END OF LINE command: <ESC> K (27 75) Change to:
START HIGHLIGHTING command: <ESC> q (27 113) Change to:
END HIGHLIGHTING command: <ESC> p (27 112) Change to:
Number of rows (lines) on your screen: 24 Change to:
Number of columns on your screen: 80 Change to:
Delay after CURSOR ADDRESS (0-255 ms): 0 Change to:
Delay after CLEAR, DELETE and INSERT (0-255 ms): 0 Change to:
Delay after ERASE TO END OF LINE and HIGHLIGHT (0-255 ms): 0 Change to:
Alles anzeigen
Hast Du keine Zenith-Auswahl bei der 3.0 oder 3.01A?
Turbo Pascal mit Zenith-Terminal ist hier fuer 3.0 und 3.01A
Beim selbst erstellen nach dem Bild aus dem Buch habe ich das Problem, dass er bei der Definition nicht erkennt wenn ich Ctrl-Ö druecke RunCPM unter Wiindows oder Linux)
Microsoft COBOL-80
...weil ich mir gerade folgendes YT-Video
( The World Depends on 60-Year-Old Code No One Knows Anymore )
angesehen habe:
MS COBOL-80 v4.65 liegt hier - und hier kann man eine kleine Starthilfe lesen
Passendes Handbuch
Direkt compilieren konnte ich COBOL (mit COBOL =SQUARO) nicht unter RunCPM
Da kamen immer ganz viele "?" untereinander.
Aber COBOL aufrufen und nach dem * =SQUARO uebergeben ging.
MicrotronicHamburg
auf der Buchseite 152 (Seite 154) dieses .PDF (ta_alphatronic_pc-almanach_85-86_band_1)
fand ich folgende fuer Dich hilfreiche "Anleitung"
Ich habe hier nur Version 2.0A und 3.0A. Beide scheinen zu laufen.
Die V3.01A fuer CPM-80 gibts hier
Wahrscheinlich braucht sein V3.01A nur die TINST.DTA (da sind die Terminal-Definitionen drin)
von Deiner V3.0A (soweit sind die Versionsnummern ja nicht auseinander) - soltte gehen...
PS: Um das Turbo Pascal V3.01A unter RunCPM in Linux zum laufen zu bekommen, musste ich da alle Files von Turbo Pascal in UpperCase umbenennen (unter Windows hatte RunCPM da keine Probleme).
Dazu nutze ich folgende Commandline:
schau in den Beitrag (und den ganzen Thread):
Da sollte Dir geholfen werden
war der gefragte Code ein Zugriffcode oder der Admincode?
Wenn kein Admincode gesetzt ist, koenntest Du evtl - unter Verlust der Daten - die Platte "recyclen"
guidol :
Wie hast Du da eigentlich die Eingabe realisiert? Tastatur oder Terminal?
Läuft das flüssig? Könnte man darauf brauchbar in BASIC programmieren?
Die Eimgabe ist (wie dieses Bild aus einem YT-Video von einem groesseren Kobo mit besserem Kernel (4.x anstatt 2.6.x))
per Touchscreen eingegeben worden.
Die Tastatur (siehst Du auf meinem Kobo Mini Bild mit dem Pfeil ausgeklappt werden bzw. mit dem Pfeil (siehe Bild des grossen Kobo) auch wieder ausgeklappt werden
Da der Kobo Mini auch nur einen Mini-Tochscreen hat - der auch relativ traege ist fuer die Eingabe - wuerde ich nur per SSH-Console programmieren wollen.
Ein Kindle 3th Generation oer Kindle DX mit Keyboard waer da cooler - auch wenn da die Freescale IMX-CPUs langsamer sind.
Per SSH ist der Mini mit seinen 800Mhz flotter als ein Raspberry Pi Pico - also sehr gut nutzbar.
eInk ist leider sehr langsam - auch wenn ITerm (eine App fuer Inkbox auf den Kobos)
doch relativ flott ist. Im YT Video zeigen die die ASCII-Star Wars Version
PS; Inkbox wurde erst relativ kurzfristig in Quill-OS umbenannt.
Hier mal mit dem lokalen Programm ITerm ein Bild vom lokalen SSH-Zugang
und dann aus /home RunCPM aufgerufen inkl. MBASIC
Hier die Kernel-versionsanzeihe aus der Inkbox v2.0:
Die Tage sah ich neben einem alten debian-Image auf Youtube die Distro Inkbox (dort erstmal in der v1.0) fuer meinen Kobo Mini
(den hatte ich mal wegen dem alten debian angeschafft).
Dann sah ich aber das Video zur v2.0 und fand dann auch die Projekt-Webseite mit dem v2.0 image fuer meinen Kobo Mino (N705)
Um das Image "einzuspielen" muss man den Mini auseinander nehmen und das Image auf die eingebaute SDCard aufspielen
(z.B. mit Balena Etcher)
Da die v2.0 noch nicht gerooted ist, muss man in den Diagnostic Mode kommen (beim booten oefter die Power-Taste betaetigen).
Dort kann man dann ein Factory-Reset ausloesen inkl. Wechsel auf den gerooteten Kernel auf Partiton 2.
Dann kann man entweder per WiFi oder USB-Net versuchen per SSH auf den Kobo Mini zu kommen...
Ich habe mich eine ganze Weile auf das USB-Net versteift, wegen Kabelanbindung, aber so rivhtig wollte er nicht mitspielen.
Zugriff per USB-Net klappte bei mir immer nur, wenn ich schon per WiFi verbunden war
Die root-Partititon is standardmaessig nur read-only gemounted, so dass man das erstmal nach dem SSH-Connect umstellen muss.
Dazu bietet das Login einen Hilfetext mit passendem Befehl an
So kann man nun auf der Partition auch schreiben bzw. per FTP Dateien ins Filesystem schieben.
Ich hatte erstmal gut zu suchen, welche Cross-Compiler-Toolchain ich nutzen muss...normal muss es (sagt man) genau die Version sein, mit der das System erstellt wurde.
Als ich passende aus 04/2013 gefunden hatte stellte sich aber raus, dass der Kobo Mini mit den neu erstellen Binarys nicht spielen will, weil die passende ld-lib nicht auf dem System ist
Das lag daran, dass er nicht glibc nutzt sondern musl - die passende Compile-Umgebung fuer eine ARM v7l CPU (der Kobo hat eine MX50 800Mhz Freescale CPU) fand sich dann dort auf der Seite in Form eine Archives fuer Linux namens armv7r-linux-musleabihf-cross.tgz
Bereit wird die Version fuer compileren gemahct mit:
Im makefile muss man dann anstatt gcc dann CC = armv7l-linux-musleabihf-gcc nutzen.
So kam mein Kobo Mini auch zu eine RunCPM v6.3
Wordstar 3
Wordstar 4 fuer CP/M kommt von den Farben und dem Menue aber schoener raus
CTRL-K ... fast wie vi ...
Da muss ich ja zugeben, dass ich nano-User bin
Danke!
Ctrl-H scheint auch eher wie im vi Left anstatt Page Up zu sein.
Nur Ctrl-L will nicht right sein - jedenfalls loescht mir puTTY dann den Screen weg
Was ich bis jetzt per try/error rausgefunden habe:
Ctrl-J down
Ctrl-A 1st entry
Ctrl-Z last entry
Ctrl-R Page Down
Ctrl-H Page Up
Ctrl-I Laufwerk-s/Seitenwechel wie (T)
aber eine "Zeile" up (im Gegensatz zu Ctrl-J bzw. Ctrl-E) habe ich noch nicht gefunden
Hat von Euch schon jemand den CP/M File Commander v0.97 erfolgreich mit VT100/ANSI genutzt?
Ich habe die vt100.ini nach FC.INI kopiert und nutze im puTTY fuer die korrekte Window-Lines-Darstellung im puTTY die Codepage 437,
aber die Steuerung per Cursor (rauf/runter) bzw. PageUp/-Down will mir nicht gelingen bzw. passt nicht zu puTTY
Die anderen Funktionen wie T (Seitenwechsel), L fuer Laufwerk (rechts, links, user-Area) und auch die angegebenen Funktionen fuer die Menu-Zahlen klappen.
Im Thread im RobotronTechnik-Forum habe ich leider keine Info zum VT100-Mode gesehen
Auch habe ich noch nicht verstanden, warum auf der Homepage nur die v0.9c aus 2016 ist und auf folgender Seite die neue v0.97 aus 2024
In diesem Thread auf Vogons sind ein paar Links zu funktionieren Treibern:
Looking for PCMCIA drivers: Vadem VG-468 - FMA7600 laptops \ VOGONS
Super besten Dank das schaut super aus
kleines MBasic wegen der Funktion und bin begeistert.
Fein - die Pins fuer die SDCard waren ja "fast" nur geraten bei der Doku
Jetzt braucht Du nur noch ein terminal am Mac, dass die Escape-Codes fuer ANSI verarbeitet.
Dann sieht es etwas netter aus.
Evtl. kannst Du ja einfach so wie auf dieser Seite ANSI und die Fareb aktivieren?:
Viel Spass damit - bis Du evtl. von SvenMb eine RunCPM-Version mit DVI bekommst
Ein Vergleich der mit hxcfe und samdisk (4.0) generierten D88 -Dateien zeigt, dass samdisk ohne -k0 einen "Versatz" in den Daten erzeugt (auch das Inhaltsverzeichnis wird verschoben) ... mit -k0 passiert das nicht ...
Hier eine Antwort/Erklaerung, von Simon Owen warum es im Emulator auch ohne -k0 laeuft:
Zitat
The skew is only needed when writing disk images back to real disks, as the disk access can be a bit slower without it. I do still try to set it correctly in disk images in case it will be written, but the disk will work fine without it. The real software always reads by sector id so it doesn't matter where it appears on the track. Though if the next sector it wants has just passed by the head it will have to wait a little longer for it to return to the head for reading.
und dann noch eine Information, dass die V4 besser fuer Emulatoren ist und die V3.8.11 besser ist, wenn man Images auf echte Disketten schreiben will:
Zitat
The SAMdisk v3 vs v4 issue is a bit complicated. I originally wanted v4 to completely replace v3, but adding all the detailed features from the old version was taking much longer than expected, and will probably never be finished. I only recommend using v3 if you're wanting to write disk images to an old-style floppy disk controller. For almost everything else v4 should work better -- I should probably write that on my site! Building updates for v3 is getting more difficult too, especially to try and keep it working on Windows XP that some users need.
Ich habe den RP2040 , wenn ich irgendein UF2 Image wie zum Beispiel RunCPM_v6_3_Pico_260MHz_01062024.uf2 übertrage, dann ist er im Terminal als Teilnehmer (8-N-1 mit 115000) vorhanden und fährt hoch (siehe Bild), nur die SD Karte wird nicht erkannt (ich habe das CP/M als A und mit Unterverzeichnisse 0 und 1 angelegt).
Das kann nicht ganz klappen, da Dein RP2040 PiZero eine andere SDCard-Konfig hat wie das .UF2 des PicoW dass Du geflasht hast
Dein RP2040 hat folgende SDCard-Config:
Fuer Dich habe ich mal eine RunCPM v6.3 Version angelegt (inkl. .UF2-Binary), die ueber USB "spricht" und Deine SDCard nutzen koennen sollte.
Leider ist die Schematic-PDF-Dokumentation fuer das Board sehr inkonsistent und es gibt scheinbar keine steuerbare LED fuer die CP/M-Floppy.Zugriffe
(nur die PowerLED, die ueber einen Widerstand direkt am Strom haengt).
Deshalb habe ich in dieser Version die LED-Definition disabled - ebenso wie die DigitalWrite-Command fuer die LED....
Um 270Mhz auch fuer den RP2040 PiZero zu erreichen muss man in der boards.txt des RP2040-Core folgende 2 Zeilen bei den Mhz-Definitionen des Waveshare RP2040 PiZero einfuegen:
waveshare_rp2040_pizero.menu.freq.270=270 MHz (Overclock)
waveshare_rp2040_pizero.menu.freq.270.build.f_cpu=270000000L
D.h. "aussenrum" sieht es so aus:
waveshare_rp2040_pizero.menu.freq.250=250 MHz (Overclock)
waveshare_rp2040_pizero.menu.freq.250.build.f_cpu=250000000L
waveshare_rp2040_pizero.menu.freq.270=270 MHz (Overclock)
waveshare_rp2040_pizero.menu.freq.270.build.f_cpu=270000000L
waveshare_rp2040_pizero.menu.freq.275=275 MHz (Overclock)
waveshare_rp2040_pizero.menu.freq.275.build.f_cpu=27500000
Aber 270Mhz ist der Max.-Wert fuer eine stabile Nutzung (bei der Volt-Konfiguration).
BTW: frisch compiliert vom Github-master:
SAMdisk 4.0 ALPHA (Jun 15 2024), (c) 2002-24 Simon Owen
SAMDISK [copy|scan|format|list|view|info|dir|rpm] <args>
-c, --cyls=N cylinder count (N) or range (A-B)
-h, --head=N single head select (0 or 1)
-s, --sector[s] sector count for format, or single sector select
-r, --retries=N retry count for bad sectors (default=5)
-R, --rescans=N rescan count for full track reads (default=0)
-d, --double-step step floppy head twice between tracks
-f, --force suppress confirmation prompts (careful!)
The following apply to regular disk formats only:
-n, --no-format skip formatting stage when writing
-m, --minimal read/write only used MGT tracks
-g, --gap3=N override gap3 inter-sector spacing (default=0; auto)
-i, --interleave=N override sector interleave (default=1)
-k, --skew=N override inter-track skew (default=1)
-z, --size=N override sector size code (default=2; 512 bytes)
-b, --base=N override lowest sector number (default=1)
-0, --head[0|1]=N override head 0 or 1 value
Alles anzeigen
Dazu brauchte es unter armbian neben der Standard-gcc Installtion och ein paar Pakete:
und dann
Ach ich habe den RP2040 PiZero den Du auch verwendest mit DVI.
Soweit ich es verstehe, hat er zwar auch den RP2040 PiZero schon bestellt, die Software ist darauf aber noch nicht angepasst.
Auf Github bei ihm wird noch die Softwarekonfiguration ( pico_sd_spi_dvi_usbkey.h ) fuer die Frei-Kabelversion von diesem Post stehen.
Fuer den RP2040 PiZero muss zumindest das Pinout in der Software angepasst werden.
Laut Github ist der serielle TTL-Port auf
GPIO 0 TX
GPIO 1 RX
aktiv - aber das heisst nicht auf USB