H4th ROM. American in origin after all it would seem.

ZX-Team Forum

H4th ROM. American in origin after all it would seem.

Beitragvon moggy » 31.01.2017, 17:43

An article from Sync magazine would seem to confirm that the UK h4th is a clone of the original Multi-Forth/Pluri-Forth after all.

https://archive.org/stream/SyncVolume4N ... 9/mode/2up

A fairly lengthy read but worth persevering with.
Dateianhänge
Untitled-1.jpg
Untitled-1.jpg (93.43 KiB) 367-mal betrachtet
moggy
User
 
Beiträge: 18
Registriert: 09.09.2011, 15:30

Re: H4th ROM. American in origin after all it would seem.

Beitragvon Joachim » 31.01.2017, 18:52

@moogy: Thank You for this very interesting issue of SYNC! The FORTH-article remembered me, what I wanted do next. Also very useful for me was the article about drawing circles in machine code.

Bei dieser Gelegenheit habe ich mich daran erinnert, dass Borco damals viel in Forth programmiert hat. Für ihn habe ich auch den Switch für Forth-Screens in Mefisdos eingeführt. Borco hat ein Forth-Word gebaut (MDOS), mit dem man aus Forth heraus in den Mefisdos-Editor kommt und dann den screen speichern oder laden kann. Auch hat er ein Wort kreiert, mit dem man Ein-Ausgaben über unsere PIO machen kann. Leider habe ich noch nicht viel Ahnung von Forth und kann nichts weiter dazu sagen. Ich habe mal einpaar seiner Forth-Versionen zusammengepackt. Vielleicht interessiert es jemanden. Bei diesem Forth handelt es sich um das Denk-Forth von Denk und Bachmann. Borco hatte damals auch Kontakt zu Herrn Denk aufgenommen.
Die Files kann man leider nicht mit dem EO einladen. Warum weiß ich nicht. Ich habe sie von meinen Zeddy auf den Stick gezogen. Von da aus kann ich sie auch wieder einladen und starten. Mit dem EO nicht. Vielleicht hat jemand eine Lösung dazu.

GFORTH.zip
(39.71 KiB) 20-mal heruntergeladen
Viele Grüße!
Joachim
Benutzeravatar
Joachim
User
 
Beiträge: 691
Registriert: 06.11.2004, 20:21

Re: H4th ROM. American in origin after all it would seem.

Beitragvon bokje » 01.02.2017, 09:25

Mit einem (hex) '80' Byte am Ende hinzugefuegt kann EightyOne sie einladen :)
bokje
User
 
Beiträge: 41
Registriert: 02.05.2015, 14:38

Re: H4th ROM. American in origin after all it would seem.

Beitragvon Joachim » 04.02.2017, 14:59

Klappt wunderbar! Danke!
Beim Programm HDFORTH.P gibt es aber Probleme. Das liegt offensichtlich an der Zeile 10. Da steht: 10 SAVE. Das kommt davon, dass dies mein Mefisdos-Aufruf mit verändertem ROM ist (bei meinem ZX81 steht dort: 10 MDOS).
Viele Grüße!
Joachim
Benutzeravatar
Joachim
User
 
Beiträge: 691
Registriert: 06.11.2004, 20:21

Re: H4th ROM. American in origin after all it would seem.

Beitragvon ZX-Heinz » 04.02.2017, 16:39

Joachim hat geschrieben:Klappt wunderbar! Danke!
Beim Programm HDFORTH.P gibt es aber Probleme. Das liegt offensichtlich an der Zeile 10. Da steht: 10 SAVE. Das kommt davon, dass dies mein Mefisdos-Aufruf mit verändertem ROM ist (bei meinem ZX81 steht dort: 10 MDOS).

Bei mir steht auch 10 SAVE ... und Eightyone blockiert. Ebenso der NU. Auch mit Ergänzung #80.
Benutzeravatar
ZX-Heinz
User
 
Beiträge: 1061
Registriert: 05.12.2011, 14:45

Re: H4th ROM. American in origin after all it would seem.

Beitragvon bokje » 05.02.2017, 07:57

Hat NXTLIN=0 ((kein autostart) mit sz81, wieder SAVE, und GOTO 20 das vielleicht gelöst?
Dateianhänge
HDFORTH1.P
(13.3 KiB) 10-mal heruntergeladen
bokje
User
 
Beiträge: 41
Registriert: 02.05.2015, 14:38

Re: H4th ROM. American in origin after all it would seem.

Beitragvon bokje » 05.02.2017, 09:00

Apart from timing differences between H4th and Tree4th, there is a bug in H4th which is not present in Tree4th.

Code: Alles auswählen
2 3 +- .

Should give 2, but gives a stack error in H4th, because the result is not pushed to the stack (using RST).

H4th (at address 170fh):
Code: Alles auswählen
        ret     z
        call    0b1eh
        rst     08h
        ret     

Tree4th:
Code: Alles auswählen
        nop
        call    nz,0b1eh
        rst     08h
        ret     
bokje
User
 
Beiträge: 41
Registriert: 02.05.2015, 14:38

Re: H4th ROM. American in origin after all it would seem.

Beitragvon tokabln » 05.02.2017, 10:01

Hi Bokje,

does this mean H4TH should be patches at 0170fh with the same code used in Tree4TH?

Any recommendation is warmly welcome.
Lieben Gruß Torsten
BMZ MFA, ZX80Core, AX81, ZX81, ZX81NU, Spectrum+, Harlequin, Amstrad NC100, Cambridge Z88, C64, C128D, Amiga 500, Amiga 1200, Atari Portfolio, HP200LX, IBM PC 5155, TP755c, T41, PS/2 (Model 40SX), PS/2E, Accura 101, Apple //e
Benutzeravatar
tokabln
User
 
Beiträge: 740
Registriert: 10.11.2013, 00:24
Wohnort: D, Berlin (Mariendorf)

Re: H4th ROM. American in origin after all it would seem.

Beitragvon ZX-Heinz » 05.02.2017, 10:51

bokje hat geschrieben:Hat NXTLIN=0 ((kein autostart) mit sz81, wieder SAVE, und GOTO 20 das vielleicht gelöst?
Läuft jetzt perfekt auf dem ZX81NU. Danke!
.
Benutzeravatar
ZX-Heinz
User
 
Beiträge: 1061
Registriert: 05.12.2011, 14:45

Re: H4th ROM. American in origin after all it would seem.

Beitragvon bokje » 05.02.2017, 12:55

tokabln hat geschrieben:does this mean H4TH should be patches at 0170fh with the same code used in Tree4TH?

Yes, that could work, see:
Dateianhänge
h4thp.zip
(6.18 KiB) 9-mal heruntergeladen
bokje
User
 
Beiträge: 41
Registriert: 02.05.2015, 14:38

Re: H4th ROM. American in origin after all it would seem.

Beitragvon Joachim » 05.02.2017, 13:23

Ich habe es auch nachstellen können und es war tatsächlich der Autostart und die Zeile 10. Als dieses Programm gespeichert wurde, das muss man wissen, wusste noch niemand, dass es einen Emulator und eine Verbindung zum PC geben wird ;)

Hier noch eine Anleitung zum GFORTH von Herrn Denk. Vielleicht kann sie jemand gebrauchen.

Denk Forth.pdf
(1.5 MiB) 13-mal heruntergeladen
Viele Grüße!
Joachim
Benutzeravatar
Joachim
User
 
Beiträge: 691
Registriert: 06.11.2004, 20:21

Re: H4th ROM. American in origin after all it would seem.

Beitragvon moggy » 05.02.2017, 14:34

bokje hat geschrieben:
tokabln hat geschrieben:does this mean H4TH should be patches at 0170fh with the same code used in Tree4TH?

Yes, that could work, see:


Excellent Bokje many thanks for this. :D

I presume this correction is a genuine bug and will not show a fault in some other calculations when the correction is made? If so I shall be using this ROM code from now on.

Another discovery I have made thanks to 1024MAK is that to use the USA Tree-Forth ROM with a UK 81,no alteration has to be made to convert the 81 to USA spec via a 10ohm resistor, as long as the TV/monitor is set for UK PAL 60Hz then it will work just fine but still displays the visual glitches of the H4fth version and runs slightly slower(see picture).

An explanation made on the UK forum by 1024MAK can be found here,apologies if this information is already known.

http://www.sinclairzxworld.com/viewtopic.php?f=7&t=2215

I have also posted a link to this topic, on the UK forum.
Dateianhänge
forth.jpg
forth.jpg (251.76 KiB) 180-mal betrachtet
moggy
User
 
Beiträge: 18
Registriert: 09.09.2011, 15:30

Re: H4th ROM. American in origin after all it would seem.

Beitragvon moggy » 05.02.2017, 17:47

bokje hat geschrieben:Apart from timing differences between H4th and Tree4th, there is a bug in H4th which is not present in Tree4th.

Code: Alles auswählen
2 3 +- .

Should give 2, but gives a stack error in H4th, because the result is not pushed to the stack (using RST).

H4th (at address 170fh):
Code: Alles auswählen
        ret     z
        call    0b1eh
        rst     08h
        ret     

Tree4th:
Code: Alles auswählen
        nop
        call    nz,0b1eh
        rst     08h
        ret     



It is worth pointing out that this error does not occur when using the +- primitive to apply a negative sign to the first stack item.

For example 2 -3 +- . gives -2 which is correct, the error only seems to occur when applying a positive sign to the first stack item using +-.
moggy
User
 
Beiträge: 18
Registriert: 09.09.2011, 15:30

Re: H4th ROM. American in origin after all it would seem.

Beitragvon ZX-Heinz » 06.02.2017, 17:35

Joachim hat geschrieben:Hier noch eine Anleitung zum GFORTH von Herrn Denk. Vielleicht kann sie jemand gebrauchen.
Denk Forth.pdf

Hallo Joachim, hallo bokje,
leider funktioniert der Befehl

n PUT NAME

nur bei "save to real tape"! Nur ein wav-File wird erzeugt. Damit ist das HDFORTH nur sehr bedingt brauchbar, da Speichern auf SD-Card nicht möglich ist. Oder weiß jemand, wie doch?

Eine Lösung interessiert mich deshalb, weil FORTH eine Möglichkeit wäre, mein MrZ auch am Zeddy zu betreiben. Bisher nur am Speccy (mit PASCAL)

Hat jemand vielleicht Kontakt zu Wolfgang Denk?
Benutzeravatar
ZX-Heinz
User
 
Beiträge: 1061
Registriert: 05.12.2011, 14:45


Zurück zu Sinclair ZX81

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste

cron