RunCPM kommt auf die ATARI 8Bit device emulation Fujinet

  • Mit einem Fujinet-Device kann man an einem ATARI 8Bit Laufwerke/Drucker/Modem und Netzwerk emulieren.

    Nun kommt ein weiteres "Sahnehaeubchen"....CP/M-Unterstuetzung, denn das Fujinet-Device setzt auf einem ESP32-WROVER auf und dort kommt dann RunCPM zum Einsatz und der ATARI 8Bit kann dann Terminal fuer das RunCPM spielen :)


  • Ich habe Deine Post mal zum Anlaß genomen, den HT-C Compiler auf meinem System zu benutzen und den 3-zeiler compiliert:


    A0:>C -V mand.c -LF

    A0:>runstart;mand;runend


    Compilieren geht recht schnell, die Laufzeit von MAND.COM ist 1m 22.865s. CPU-Takt 25MHz. Von der Laufzeit sind 65ms ab zu ziehen, da für die Zeitberechnung ein transientes Programm benutzt wird (RUNEND.COM benötigt Ladezeit von der SD-Karte).



    Cheers

    Kurt

  • Ich habe Deine Post mal zum Anlaß genomen, den HT-C Compiler auf meinem System zu benutzen und den 3-zeiler compiliert:

    A0:>C -V mand.c -LF

    A0:>runstart;mand;runend

    Das selbst-compilieren habe ich nach Deinem Muster probiert - hat soweit geklappt :)
    runstart/runend habe ich hier leider nicht, waere auch unfair - weil auf meinem Win10 Rechner unter RunCPM sind es ca. 3 Sekunden :)

    Geht runstart/runend nur auf Deinem System? denn Zeitunterschiede anzeigen geht meist mangels Timer nicht mit RunCPM (in MBASIC z.B.)


    Ich musste fuer die korrekte Darstellung die Anzahl von Zeichen von 84 auf 80 reduzieren, weil das TTGO VGA32 ANSI-Terminal nach 80 Zeichen umbricht (obwohl es wohkl nicht angefordert wird):

    Code
    main(k)
    {float i,j,r,x,y=-16;while(puts(""),y++<15)
    for(x=0;x++<80;putchar(" .:-;!/>)|&IH%*#"[k&15]))
    for(i=k=r=0;j=r*r-i*i-2+x/25,i=2*r*i+y/10,j*j+i*i<11&&k++<111;r=j);}

    Einmal editiert, zuletzt von guidol ()

  • Ich bin etwas spät dran, wir hatten hier einen Ausfall des Internets in 3/4 von Geesthacht. Geht alles seit ein paar Minuten wieder.

    Geht runstart/runend nur auf Deinem System?

    Ja, leider. Ich habe auf meinem System speziell für Zeitmessungen eine 32-bit Zähler mit 1ms Clock. Den kann ich für solche Messungen über 'RUNSTART' & 'RUNEND' einsetzen.


    Ich musste fuer die korrekte Darstellung die Anzahl von Zeichen von 84 auf 80 reduzieren

    War mir auch aufgefallen. Da ich den Run über den Laptop im Terminalfenster ausgeführt hate, reichte es das Fenster entsprechend breiter und höher aufzuziehen. Die ausgegebenen Zeilen sind auch mehr wie 30, aber dank der 'Elastizität' des Fensters kein Problem... Soweit mein C-Verständnis reicht, müßte in Zeile 2 der Laufbereich der Schleife angepaßt werde auf -15 ...+15, wenn es ganz in ein 80x30 Fenster passen soll. Aber dann scrollt das Ganze immer noch hoch, wenn der Lauf fertig ist. Der Scroll-Vorgang/Zeilenumbruch selbst hat bei mir keinen erkennbaren zusätzlichen Zeitaufwand verursacht, das macht ja alles der Laptop.


    Cheers

    Kurt