Volksforth und Grafik.
von wichtel » So 25. Dez 2011, 13:08Ich programmiere neben ACTION! auch das Volksforth , welches ich durch eine Zeitschrift von hier entdeckt habe: http://www.forth-ev.de/filemgmt/viewcat.php?cid=2
Es ist auf so einen kleinen Atari(Altirra) eine schöne Sache neben Action!.
Ich habe in kurzer Zeit mit dem Volksforth eine Grafikseite(DPL) erstellen können, wo ich eine selbsterstellte 4-Farben-Grafik (160x96)mit einem Forth-Word lade und dann auch noch dort eine PM bewege mit dem Joystick und einer Kollisionsüberprüfung.
PS : Auch alle Systemfloat-Routinen sind für das Volksforth umgesetzt worden und funktionieren tadellos:
http://atariwiki.strotmann.de/wiki/Wiki ... Math%20ROM
Nun meine Hauptfrage !
Ich habe durch mehrmaligen Lesen des Systemhandbuches herausgefunden, das die Grafikbefehle :
PLOT, DRAWTO, FILL usw im System des Atari800XL vorhanden sind, ohne das man dieses Grafikrad neu erfinden muss. Habe rumgesucht und nichts brauchbares gefunden im Systemhandbuch, wo dieses ausführlich beschrieben ist.
Dann habe ich mal die ACTION! Sytemdatei zerpflückt und siehe da, dort werden die internen Grafikbefehle benutzt, aber als typische INLINE-ASM deklariert den ich nicht interpretieren kann :
Nun mein Bitte :
Wer kann diese Daten oben umsetzen in einem ASM-Sourcecode, damit man die Grafikbefehle nutzen kann in ASM und dem Volksforth?
Oder wer kann hier im Forum mal dafür eine gute nachvollziehbare Einweisung geben?
Es wäre nett, wenn dieses Volksforth auf dem Atari ein neues Heim findet.
Angefangen hat es hier je mal mit dem Xforth, wo viel Zeit reingesteckt wurde.
Dieses XForth hat den nachteil, das man da keinen genügend grossen Grafikspeicher reservieren kann für eine Grafikseite die von der DPL festgelegt wird. Auch das neu Compilieren des XForth mit Speicherhöherlegung funktioniert nicht.
Eigentlicht ist dieses Volksforth ausgewachsen und zukunftsicher, weil man die Programme extern anfertigen kann und laden kann.
Frohe
Weihnachten
Es ist auf so einen kleinen Atari(Altirra) eine schöne Sache neben Action!.
Ich habe in kurzer Zeit mit dem Volksforth eine Grafikseite(DPL) erstellen können, wo ich eine selbsterstellte 4-Farben-Grafik (160x96)mit einem Forth-Word lade und dann auch noch dort eine PM bewege mit dem Joystick und einer Kollisionsüberprüfung.
PS : Auch alle Systemfloat-Routinen sind für das Volksforth umgesetzt worden und funktionieren tadellos:
http://atariwiki.strotmann.de/wiki/Wiki ... Math%20ROM
Nun meine Hauptfrage !
Ich habe durch mehrmaligen Lesen des Systemhandbuches herausgefunden, das die Grafikbefehle :
PLOT, DRAWTO, FILL usw im System des Atari800XL vorhanden sind, ohne das man dieses Grafikrad neu erfinden muss. Habe rumgesucht und nichts brauchbares gefunden im Systemhandbuch, wo dieses ausführlich beschrieben ist.
Dann habe ich mal die ACTION! Sytemdatei zerpflückt und siehe da, dort werden die internen Grafikbefehle benutzt, aber als typische INLINE-ASM deklariert den ich nicht interpretieren kann :
- Code: Alles auswählen
MODULE ; GRAPHIC ROUTINES
BYTE ARRAY dev_S="S:", dev_E="E:"
PROC Graphics=*(BYTE m)
[$48$A9$0$20 Close$CA9$A385$A9$0$AEdev_E$ACdev_E+1$20Open
$6A9$20 Close$68$A485$3029$1C49$A385$6A9$AEdev_S$ACdev_S+1$4COpen]
PROC Position=*(CARD c,BYTE r)[$5B85$5C86$5A84]
PROC Pos1=*()[$5585$5686$5484$60]
PROC GrIO=*()
[$20Pos1$AD$2FD$8D$2FB$ADdev_S$A585$ADdev_S+1$A685$A9$0$A385$A485$6A9$60]
PROC DrawTo=*(CARD c,BYTE r)
[$20GrIO$11A0$4CXIO]
BYTE FUNC Locate=*(CARD c,BYTE r)
[$20Position$6A9$4CGetD]
PROC Plot=*(CARD c,BYTE r)
[$20Pos1$6A9$AE$2FD$4CPutD]
PROC SetColor=*(BYTE reg,hue,lum)
[$5C9$1610$A085$98$F29$A285$8A$A0A$A0A$A205$A0A6$9D$2C4$9D$D016$60]
PROC Fill=*(CARD c,BYTE r)
[$20GrIO$12A0$4CXIO]
Nun mein Bitte :
Wer kann diese Daten oben umsetzen in einem ASM-Sourcecode, damit man die Grafikbefehle nutzen kann in ASM und dem Volksforth?
Oder wer kann hier im Forum mal dafür eine gute nachvollziehbare Einweisung geben?
Es wäre nett, wenn dieses Volksforth auf dem Atari ein neues Heim findet.
Angefangen hat es hier je mal mit dem Xforth, wo viel Zeit reingesteckt wurde.
Dieses XForth hat den nachteil, das man da keinen genügend grossen Grafikspeicher reservieren kann für eine Grafikseite die von der DPL festgelegt wird. Auch das neu Compilieren des XForth mit Speicherhöherlegung funktioniert nicht.
Eigentlicht ist dieses Volksforth ausgewachsen und zukunftsicher, weil man die Programme extern anfertigen kann und laden kann.
Frohe
Weihnachten