Beiträge von guidol

    Hab' ich schon, diskutiere gerade mit Ihm das, er meinte er könne ja einen "CP/M 3 specific channel" aufmachen.

    in dem Channel so es in den ersten Messages noch nicht so gt aus, wie in den letzten :)
    Wir haetten ja nichts dagegen die Arduinos aussen vor zu lassen - fuer Linux/Windows waer ein RunCPM fuer CP/M 3.0 schon mal ein Anfang :)
    Ich drueck Dir die Daumen, dass Marcelo auch "Blut geleckt hat" ;)


    {EDIT] Das wird ja schon "ernst" :)
    Preparation for eventual CP/M 3.0 support


    und auf Discord:

    Zitat

    RunCPM v6.0 with CCP v3.0 has been pushed to GitHub. I recommend backing up your 5.x version before pulling that one. Most of the changes are preparation to support the additional BIOS and BDOS functions which would be required to run CP/M 3. This might or might not happen. Will depend on many items, like work, free time, children schedules, etc. At least the Foundation Stone is there.

    Mal eine einfache Frage ... CP/M 3.0 Emulieren ist nie ein Ziel gewesen ?

    Hmmm - Nein :(


    Aktuelle Aussage des Autor Marcelo Dantas auf dem RunCPM-Discord-Channel vom 05.10.2022:

    Zitat

    CP/M 3 would require an almost full rewrite of RunCPM.

    So I unfortunately have no plans for it.

    @geowar has ported some CP/M3 behavior to the internal CCP v2.6 though.

    Made it's usage much more interesting.


    WIP:Add support for cpm3 line editing control characters #153


    Aber es bleibt beim CP/M v2.2 (evtl. mit ZCPR3 - wenn man das andere CCP nimmt).

    OK ;) ich mach auch mal mit beim Glaskugel-Problem-raten :)

    Nachdem meine ersten Ideen auch schon genannt wurden (Netzteil, verstaubte Luefer and CPU/Gehaeuse oder Grafikkarte) koennte ich mir noch 2 Sachen vorstellen


    - alte Kondensatoren auf dem Mainboard, da ein Dual-Core nicht der neueste ist

    (mein Athlon Phenom II X4 B95 (QuadCore) hat nun auch schon 10 Jahre auf dem Buckel)


    oder einfach

    - leere BIOS-Batterie - es ist erstaunlich wie schlecht einige Systeme mit schwacher CR2032-Knopfzelle klar kommen

    Kann sich jemand den Unterschied vorstellen zwischen HTerm und puTTY/kiTTY bzw. Tera Term (wenn man da die Flow-Control auf None hat)?


    Das Problem habe ich mit einem ESP-C3-01M-Kit.

    Oeffnet man mit putty oder Tera Term eine Terminal-Console auf den USB-Port (z.B. COM11) scheint das Board in einen Reset-Status zu gehen.

    Alle Lichter gehen aus und es stellt sich tot. Es startet neu, wenn man die USB-Terminal-Console wieder schliesst.


    Im Gegensatz dazu klappt es ueber den TTL-serial-Port (z.B. COM12) RX/TX/GND einwandfrei.

    D.h. ich kann normal dort RunCPM bedienen.


    Auf dem USB-Port ist ein CH340 als TTL-USB-serial-converter.

    Bei einem ESP-C3-S32-Board macht er diese Zicken nicht.


    Im Arduino IDE Serial Monitor stellt sich das ESP-C3-01M-Kit-Board auch tot, wenn man nicht in der boards.txt der ESP32-Board-Unterstuetzung

    folgende Aenderung macht(bevor man die Arduini IDE startet):

    von

    Code
    esp32c3.serial.disableDTR=false
    esp32c3.serial.disableRTS=false


    nach

    Code
    esp32c3.serial.disableDTR=true
    esp32c3.serial.disableRTS=true






    Ich habe bis jetzt nur dieses Bild der Hardware gesehen, aber leider noch keine Info/URL gefunden.

    Kennt jemand von Euch das Projekt?

    Ich denke einige hier faenden es sicher auch interessant ;)


    Das Bild und den Twitter-Link findet man auch auf

    Making retro PC add-in cards with Raspberry Pi Pico #RetroComputing #RaspberryPiPico @ianpolpo @FreddyVETELE @yyzkevin
    There is a trend to use the Raspberry Pi Pico in designs used to emulate cards for old PCs. The emulation route started with the XTIDE Compact Flash to IDE…
    blog.adafruit.com



    Im RunCPM Pico github Repository gibt es nun einen angepassten Sourcecode fuer folgende Picos:

    - normaler Raspberry Pi Pico (SPI-config bei mir wie bei Picomite (MMBASIC))

    - Extreme Electronics RC2040 Pico

    und

    - Cytron Maker Pi Pico


    Der Cytron nutzt im Gegensatz zu den anderen beiden den SPI1-Bus anstatt den SPI0-Bus.

    Das war ein wenig aufwaendig rauszufinden, wie man das im Zusammenhang mit der SdFat-Library
    angeben/konfigurieren muss ;)


    Aber wenn man eine Konfig mal erstellt hat, die funktioniert - sind die anderen auch schnell erstellt und nutzen andere SPI-Pins (und der Cytron den SPI1-Bus fuer den onBoard-MicroSD-Slot).


    Ich versuch mir gerade vorzustellen, wie "schnuckelig" klein solch ein Pico-CP/M wird, wenn man einen MicroSD-SPI-Reader/Writer nimmt und anstatt des normalen RPi Pico einen DFRobot Beetle RP2040 ;)


    Die eine Seite (GP0-GP3) passt ja prima fuer das SD-SPI und VCC/GND liegen schon gegenueber an der USB-C-Buchse.

    Mal sehen, wann der hier erhaeltlich sein wird :(


    Es gibt auch einige 2.0 Lautsprechersysteme, die haben Lautsprecher wie diese und kosten als Paar meist unter 20EUR.


    Wie z.B. die Logitech Z120


    Ausserdem habe ich noch eine Billigmarke von denen ich aehnliche USB-Lautsprecher (weil der Verstaerker einen 5V USB-Anschluss nutzt) habe - und auch diese haben Lautsprecher in dem Design.


    On genau die Groesse passen wuerde, weiss ich aber nicht.


    Wie wäre es mit einem Array ? Also DATA -> DIM WERT(16) -> I=WERT(x) -> PRINT CHR$(I)

    Ueber Facebook hatte ich ein weiteres FRACTAL gefunden, dass sowas enthielt.


    Das Original:





    und das abgeaenderte FRACTAL.BAS, dass nun auch dieses "Array" nutzt:


    Als ich das serielle GLTerm auf GP(IO) 20&21 ( OPTION SERIAL CONSOLE GP20, GP21 )

    neu compilieren wollte, ging dies nicht mehr - da FabGL seit dem letzten Compile vor 10 Monaten einige Befehle in andere Classes verschoben hat (Terminal. -> SerialPort.)


    So musste ich mir das aktuelle ANSI-Terminal Example vornehmen um die Aenderungen zu finden ;)


    Hat aber nach ein paar Versuchen geklappt :)

    Gleichzeitig habe ich mal die aktuellste Beta v5.07.05b18 vom Picomite installiert.


    Ich habe mir mal die kleine Kurzanleitung "Python - kurz und gut" besorgt. Die ist für vieles schonmal sehr hilfreich, setzt aber voraus, daß man schonmal was anderes benutzt hat. Als absolute Beginner Text taugt das so gar nicht.

    In "Python - kurz und gut" habe ich mal bei einer Vorschau reingesehen - und wie Du schreibst ist dies nicht fuer mich als Beginner :(


    Aber - da sehen wir, dass Dein PRINT noch 2.x Syntax ist und die runden Klammern bei 3.x dazu gekommen ist:


    o'Reilly hat aber auch einen ca. 1600 Seiten dicken Klopper "Learning Python" , da werden dann auch mal einige Beispiele zu den Befehlen gezeigt - und dies sogar im Vergleich x2.x und v3.x :)

    Vielleicht solltest Du Dir einfach ein gutes Buch holen ?
    Im Anhang mal was zum Reinschauen. Gibt da aber auch Anderes und Übersichtlicheres. Python for Dummies oder sowas aus einem "richtigen" Verlag.

    Das habe ich vorher schon mal getan - allerdings sind viele Buecher (auch fuer Anfaenger beschriebene) doch weit ueber dem, was wir frueher an BASIC-Buechern hatten - leider auch bei der Wortwahl und den Zielen.
    Deshalb fand ich den YT-3.5-Stunden-Kurs nicht schlecht, dass war im wahrsten Sinne die "BASICs" ;)
    Als .PDF habe ich 6 Buecher gefunden, die mir vom Stil eher zusagten:


    Zitat von ThoralfAsmussen

    Achso, mach mal ein Upgrade. Das mit den komischen Klammern bei print etc. ist möglicherweise einfach mal geändert worden. Es gibt da bei Python so einen ziemlichen Versionssprung, zwischen ?? und ??, wo die Sprache nochmal bißchen umdefiniert worden ist.

    Dein .PDF-Buch nutzt aber auch bei PRINT noch die Klammern.

    Ausserdem Upgrade? Meine Thonny-IDE kommt mit python 3.10.6 und aktuell auf python.org ist 3.10.7

    Also wohl im gruenen Bereich.


    Mit dem grossen Versionsspring meinst Du evtl. vom alten v2.x auf das neue v3.x

    Selbst in den Linux/armbian Distributionen haben die nun auf v3.x umgestellt, dehalb kann man meist python nicht mehr mit python aufrufen, denn das war die v2.x - sondern muss nun python3 aufruegen fuer die v3.x

    (ausser man setzt sich einen symolic link : ln -s /usr/bin/python3 /usr/bin/python :) )


    Schoen waere, wenn man nachlesen koennte was nun aktuell ist.

    Mein v3.x mochte jedenfalls das Komma nicht, dafuer aber ,end="" in der Klammer um das default Ende-Zeichen zu erstetzen.

    Gerade, wo doch der Guidol nicht drumherum kommen wird, das auch mal auf einem seiner vielen kleinen Rechnerchen auszumessen.


    Das schöne an Python ist dafür aber, daß es eben gefühlt dadurch ein schöner Basic Nachfolger ist; auch wenn das sicher nicht die Absicht war.

    Ach - ich glaube bei der .py-Version spare ich mir den Vergleich, da echtes Python nur auf "groesseren" Systemen laeuft und fuer MicoPython gibt es nicht ganz so viel Hardware, dass sich ein Vergleich lohnt ;)

    Mit Thonny auf Windows kann man Python noch beim zeichnen des Apfelmaennchens zusehen....starte ich das ganze auf einem kleinen SCB (NanoPi 64) dann ist nach dem laden von python3 das Apfelmaennchen unterhalb einer Sekunde auf dem Bildschirm.


    Bis jetzt hatte ich mir Python nur am Rande mal kurz angesehen, weil es mir etwas "komisch" erschien nur durch Einrueckungen Code-Bloecke zu trennen und nicht durch begrenzende End-Anweisungen.


    Aber da die Schulen anstatt BASIC oder Turbo Pascal den kleinen Schuelern jetzt eher Python beibringen, wollte ich fuer meinen Sohn wenistens etwas hilfreich sein, wenn er mal fragt.


    Die automatische Konvertierung der Variablen kommt mir als BASIC-Programmierer natuerlich zuvor :)

    Gerade so Sachen wie zhz() sind ja eigentlich dann schon bißchen albern. Das print läßt sich ja nun wirklich einfach so reinschreiben in main().


    Mußt Du eigentlich diese Typwandlungen wirklich jedesmal machen ? Das sieht irgendwie seltsam aus - und kostet evtl. sogar Zeit. Die ganzen float() Sachen sind gemeint. Python, weiß das doch eh beim Zuweisen. Bei flowerking ist es lustigerweise genau andersherum, da sind sogar die int echte floats.

    Im Nachhinein ist es natuerlich ein wenig albern ;)
    Es war - mit den Funktionen - ein erster Versuch (nach dem Python-Crashkurs) die GOTOs der BASIC Version nachzubilden/umgehen. Ausserdem war es eine Moeglichkeit das gelernte vom Kurs anzuwenden/ zu nutzen und ein Gefuehl fuer Funktionen zu bekommen, da ich doch eher aus der alten GW-BASIC Ecke komme (und davon einige Sachen bei MBASIC unter CP/M vermisse).


    Zum Schluss habe ich dann auch im Code die Inhalte der Funktionen wieder in main() uebernommen.


    Die Definition der ganzen floats, war ein Versuch raus zu finden, ob die falsche Ausgabe evtl. daran scheitert, weil ich nicht wusst was Python selbst erkennt oder konvertiert (und es in der .PAS (Turbo Pascal) Version auch definiert wurde - weil man es da eher musste).

    Ich würde es so machen:

    Danke dass sind die richtigen Buchstaben/Zahlen ;)


    Lag wohl am ca=x*0.0458 (bei Dir) und ich hatte woander falsch uebernommen die ca=x*0.0448