HIVE-Project

Retro Style Eigenbau Computer mit Parallax Propeller
Aktuelle Zeit: Di 23. Okt 2018, 23:08

Alle Zeiten sind UTC [ Sommerzeit ]




Ein neues Thema erstellen Auf das Thema antworten  [ 28 Beiträge ]  Gehe zu Seite 1, 2, 3  Nächste
Autor Nachricht
 Betreff des Beitrags: FemtoBasic überarbeitet
BeitragVerfasst: Di 9. Okt 2012, 19:32 
Offline
Benutzeravatar

Registriert: Do 4. Okt 2012, 21:56
Beiträge: 350
Wohnort: Berlin
Hallo Hive-Gemeinde
Habe mich als alter Basic-Liebhaber etwas mit FemtoBasic auseinandergesetzt. Mir ist es gelungen diverse Fehler zu beheben und es wurden 28 neue Befehle eingearbeitet. Es ist sicher noch um einiges von einer stabilen Version entfernt aber als Anfang sollte es schon brauchbar sein. Es würde mir weiterhelfen, wenn der eine oder andere als Tester fungieren könnte. Im folgenden nun die Änderungen: -LOAD,SAVE funktionieren jetzt richtig
-RENAME-Befehl integriert und in REN umbenannt ->REN"Dateialt.xxx","Dateineu.xxx"
-Befehl FILES wurde in DIR umbenannt (hab mich ständig vertippt, weil ich dir gewohnt war)
-Befehl DELETE in DEL umbenannt (man muss schon soviel tippen, da können die Befehle ruhig etwas kürzer sein)
-Befehl CLEAR für löschen aller Variablen
-Befehl BYE beendet von Femto-Basic (macht natürlich nur Sinn wenn Basic von einem Hostprogramm aufgerufen wurde)
-COLOR 0-7 setzt eine von acht möglichen Zeichenfarben
-CLS Bildschirm loeschen cursor oberste Zeile Pos1
-HOME Cursor auf oberste Zeile Pos1 Bildschirm bleibt erhalten
-LOCATE x,y Cursor an Pos x,y setzen
-GETX Cursorposition x abfragen ->print getx
-GETY Cursorposition y abfragen ->print gety
-SCROLL Scrollbereich y1,y2 setzen -> Scroll y1,y2
-SCRDOWN n-Zeilen runterscrollen -> Scrdown n
-SCRUP n-Zeilen hochscrollen -> Scrup n
-CUROFF Cursor ausschalten
-CURON Cursor einschalten
-SETSEC Sekunde setzen ->Setsec n
-SETMIN Minute setzen ->Setmin n
-SETHOUR Stunde setzen ->Sethour n
-SETDAY Tag setzen ->Setday n
-SETMONTH Monat setzen ->Setmonth n
-SETYEAR Jahr setzen ->Setyear n
-GETSEC Sekunde abfragen ->print getsec
-GETMIN Minute abfragen
-GETHOUR Stunde abfragen
-GETDAY Tag abfragen
-GETMONTH Monat abfragen
-GETYEAR Jahr abfragen
-GETDOW Tag der Woche abfragen
-SETDOW Tag der Woche setzen ->Setdow(n) n 1...7
Letztlich handelt es sich lediglich um Aufrufe aus der reg-ios, die eigentliche Arbeit hat also Drone235 :ugeek: geleistet (ziehe meinen Hut vor Deiner Leistung).
WICHTIGER HINWEIS: Zum kompilieren muss entweder die von mir gekürzte reg-ios benutzt werden oder die reg-ios aus dem TriOS-release r48 vom 27.11.2011
sonst meckert der Compiler, das zuviele Longs verplempert wurden.
Viel Spaß beim testen


Dateianhänge:
femto-basic-09-10-2012-kr.rar [45.53 KiB]
255-mal heruntergeladen

_________________
Computer lösen die Probleme, die man ohne sie gar nicht hätte!
Nach oben
 Profil  
 
 Betreff des Beitrags: Re: FemtoBasic überarbeitet
BeitragVerfasst: Di 9. Okt 2012, 21:56 
Offline
Administrator
Benutzeravatar

Registriert: So 24. Mai 2009, 10:35
Beiträge: 2256
Wohnort: Lutherstadt Wittenberg
Coole Geschichte! Ich glaube laserjones Gebete wurden erhört... :twisted:

http://hive-project.de/board/viewtopic.php?f=10&t=750&hilit=welcome+to

Hast du das Basic schon mit einem längeres Programm getestet? Werden die korrekt geladen und gespeichert?

Habe es gerade angetestet und auch ohne Probleme mit R50 und der normalen IOS compilieren können. Ich vermute, du hast im BST die Optimierungen ausgeschaltet, da meine BIN-Datei auch kleiner ist (trotz R50). Probiere doch mal bei dir, ich habe alle Optimierungen angeschaltet.

Was für Befehle würden für den Hive Sinn machen? Sound, Grafik?
Vielleicht könnten ja auch noch Befehle ausgefügt werden, die keinen Sinn machen. Zum Beispiel die I/O-Befehle machen keinen Sinn, da wir ja mit Regnatix keine Roboter, sondern nur die Slaves steueren wollen. So könnten wir den Speicher entlasten um Sound und Grafikbefehle zu integrieren.

Die Version ist auch ziemlich alt und ich habe damals den Quelltext nur überflogen um ihn überhaupt startbar zu machen.

Irgendwie hab ich grad auch nicht richtig verstanden, wo genau im Speicher das Basic seine Token ablegt. Ist die Berechnung der Adressen und der Programmspeichergröße korrekt?

_________________
"Ob Sie denken, dass Sie es können, oder ob Sie denken, dass Sie es nicht können - in beiden Fällen haben Sie recht." Henry Ford


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: FemtoBasic überarbeitet
BeitragVerfasst: Di 9. Okt 2012, 22:32 
Offline
Benutzeravatar

Registriert: Do 4. Okt 2012, 21:56
Beiträge: 350
Wohnort: Berlin
Wo die Token landen hab ich auch noch nicht herausgefunden. Bin ich aber bei. Grafik und soundbefehle sind in Planung. Dank der guten reg-ios sollte das relativ einfach sein zumindest was Sound angeht. Mit den Grafikmodi muss ich mich noch auf den Hosenboden setzen und testen. Unsinnige Befehle werden rausgeschmissen. Besteht eigentlich eine möglichkeit den H-Ram zu nutzen? Bin gerade bei peek und poke Befehlen aber irgendwie peekt er mir Speicherstellen, die ich nicht nachvollziehen kann. Mach warscheinlich noch was falsch.
Habe auch schon Programme über die magischen zehn Zeilen eingegeben, die auch liefen.Alleding waren das nur ganz simple Sachen mir den neuen Befehlen, Schleifendurchläufe und Speicherdumps.
Die Speichergröße wird nicht wirklich richtig angezeigt, da die Berechnungsgrundlage für die Speicheranzeige in den Variablenfestlegungen eingetragen ist und daher jeden Wert haben kann.
Wenn ich ein Speicherdump von allem (mit Variablenspeicher) habe lässt sich das auf realistische Angaben bringen. Aber das wird schon. Langsam steig ich auch hinter den Code vom Grundgerüst, damit lässt sich schon was anfangen. Durch die jetzt funktionierenden Dateifunktionen, ist zumindest erstmal die Möglichkeit da, den eigegebenen Code zu sichern und nicht jedesmal bei null anzufangen. Ein Basic, indem man seine Werke nicht sichern kann ist absolut unbrauchbar (zumindest in meinen Augen).
Den Tip mit den Compilereinstellungen werd ich gleich mal überprüfen, an die hab ich ja noch gar nicht gedacht,danke.

_________________
Computer lösen die Probleme, die man ohne sie gar nicht hätte!


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: FemtoBasic überarbeitet
BeitragVerfasst: Di 9. Okt 2012, 23:19 
Offline
Administrator
Benutzeravatar

Registriert: So 24. Mai 2009, 10:35
Beiträge: 2256
Wohnort: Lutherstadt Wittenberg
Routinen um auf den hRAM zuzugreifen sind im IOS enthalten. Man kann einfach mit ram_rdbyte/ram_wrbyte usw. zugreifen, oder auch den hRAM als RAMDisk verwenden und auf Speicherfiles zugreifen. In dem Codeabschnitt im IOS steht in dem einleitenden gelben CON-Block (eRAM/SPEICHERVERWALTUNG) eine Minianleitung dazu. Keine Ahnung ob man damit was anfangen kann. Wenn nicht, beantworte ich einfach hier deine Fragen.

Poste doch mal die Codesequenz für peek/poke hier.

Sound ist vielleicht erstmal eine gute Idee: Damit könnte man erstmal einen kleinen spaßigen Musikplayer oder etwas ähnliches in Basic programmieren, um die diversen Funktionen zu testen. (Hey, wie in alten Zeiten bei den ersten Gehversuchen am 8Bitter... :mrgreen: )

Was mir noch aufgefallen ist (durch den Sound): "dir" enthält ein mount/unmount. Im Prinzip könnte das entfallen, da das Medium gemounted ist, wenn Basic geladen wird.

_________________
"Ob Sie denken, dass Sie es können, oder ob Sie denken, dass Sie es nicht können - in beiden Fällen haben Sie recht." Henry Ford


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: FemtoBasic überarbeitet
BeitragVerfasst: Mi 10. Okt 2012, 06:49 
Offline

Registriert: Sa 22. Okt 2011, 16:10
Beiträge: 231
Wohnort: Forst (Lausitz)
Jetzt rückt die kalte Jahreszeit wieder näher und ich hoffe etwas mehr Zeit zum Basteln zu haben. Ich bin auch eher an Basic, als an einer anderen Programmiersprache interessiert. Wenn ich mal meinen Senf dazugeben darf. An Befehlen würden mir einfache Grafikbefehle gefallen, bei denen ich die Schriftfarbe und den Hintergrund des jeweiligen Zeichens einfärben kann. Das ging damals bei vielen 8bittern (KC und Commodore) so.

Wie soll denn der Sound "benutzt/angesprochen" werden? Als Befehl, eine MP3-Datei abzuspielen oder mit Hilfe von Befehlen, Tonhöhe und Toneigenschaften selbst zu gestalten, ähnlich wie "SOUND"? Ein Befehl "BEEP" könnte einen Standardton ausgeben.

_________________
HIVE S/N: 232


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: FemtoBasic überarbeitet
BeitragVerfasst: Mi 10. Okt 2012, 17:22 
Offline
Benutzeravatar

Registriert: So 6. Sep 2009, 11:18
Beiträge: 978
Hallo!
Erstmal Dank an Zille9 für den Einsatz an der BASICfront.
Ist ja fast wie Vorfreude auf Weihnachten.
Dann hab ich mal eine Frage zum Befehlssatz :
Ist es Möglich die Befehle "shiftin" und "shiftout" für SPI und ähnliches für I2C im Basic zu implementieren?
Grund :
An Administra sind 4 Portleitungen frei, die auf dem Busstecker liegen. Nun wäre es doch schön, wenn man von Basic aus über Regnatix und Administra auf diese Leitungen zugreifen könnte um periphere SPI- oder I2C-Chips anzusteuern. In Administra müßte eigentlich noch Platz für deartige Routinen sein. Z.B. die SPI-Routinen (SPI-ASM) von Beau Schwabe in Assembler V1.3.
Gruß
TuxFan

_________________
Fassungslos und kein Ende in Sicht:
Der Wahnsinn reitet durch das Land
genähret von manch' brauner Hand.
Die Dummheit kriecht ihm vorne drein
und drischt auf manchen Menschen ein.
Verblödung breitet sich rasch aus
das hält bald keine Seele aus.


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: FemtoBasic überarbeitet
BeitragVerfasst: Mi 10. Okt 2012, 22:46 
Offline
Administrator
Benutzeravatar

Registriert: Sa 23. Mai 2009, 22:44
Beiträge: 595
Wohnort: Schorfheide
Hi zille9,
deine Arbeit am FemtoBasic find ich absolut genial. Ein funktinierendes BASIC müssen wir dann sofort an prominenter stelle bewerben. :D ... Hab ich schon gesagt dass ich es genial finde? ;)

_________________
http://hive-project.de


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: FemtoBasic überarbeitet
BeitragVerfasst: Do 11. Okt 2012, 00:20 
Offline
Benutzeravatar

Registriert: Sa 22. Okt 2011, 13:05
Beiträge: 178
Wohnort: FN, Germany
Hat sich jemand mal PropellerBASIC angesehen? Basiert auf FemtoBASIC ging dann aber eigene Wege.


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: FemtoBasic überarbeitet
BeitragVerfasst: Do 11. Okt 2012, 15:47 
Offline
Benutzeravatar

Registriert: Do 4. Okt 2012, 21:56
Beiträge: 350
Wohnort: Berlin
Freut mich, so eine Fangemeinde ins Leben gerufen zu haben. Meine Arbeit am Basic geht weiter, bin gerade bei der Soundeinbindung und bin offen für Vorschläge an sinnvollen Befehlen.
I2C-Interface hab ich schon drüber nachgedacht, wird möglicherweise auch realisiert, mal sehen.
Zur Zeit versuche ich wie gesagt, Sound. Danach sollen Grafikbefehle folgen, hauptsächlich liegt der Umfang letztlich am Speicher aber einiges ist noch möglich.
Am schönsten wäre es den gesamten externen Ram verfügbar zu machen aber da überleg ich noch am Konzept (wie was wo gespeichert werden soll).
Bitte an alle, die mit Femto arbeiten ->meldet euch bei Fehlern oder Wünschen oder was weiss ich noch. Ich werde versuchen alles zu berücksichtigen.

_________________
Computer lösen die Probleme, die man ohne sie gar nicht hätte!


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: FemtoBasic überarbeitet
BeitragVerfasst: Do 11. Okt 2012, 15:55 
Offline
Benutzeravatar

Registriert: Do 4. Okt 2012, 21:56
Beiträge: 350
Wohnort: Berlin
An Drone 235
der mount und unmount-Befehl war eigentlich gedacht um ein sauberes Arbeiten mit den SD-Karten zu ermöglichen aber mir ist aufgefallen, das nach einem Kartentausch (Karte raus, Karte rein) das System die Karte meist nicht mehr sauber erkennt (wird nur Müll beim Befehl DIR angezeigt).
Ist eventuell ein Bug im administra-code? Keine Ahnung, das müsstest Du vielleicht mal testen oder (ein (Un)Mountbefehl der nicht korrekt ausgeführt wird?) :?

_________________
Computer lösen die Probleme, die man ohne sie gar nicht hätte!


Nach oben
 Profil  
 
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 28 Beiträge ]  Gehe zu Seite 1, 2, 3  Nächste

Alle Zeiten sind UTC [ Sommerzeit ]


Wer ist online?

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


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
cron
Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de