Hive Spin Compiler

Du hast ein Betriebssystem für den Hive geschrieben oder beschäftigst dich mit den grundlegenden Systemfunktionen, dann bist du hier richtig!
Antworten
paulruiz
Beiträge: 25
Registriert: Di 20. Dez 2011, 11:38

Hive Spin Compiler

Beitrag von paulruiz »

cross-post vom Ich hatte ein Traum
Ich glaub es last sich was basteln aus die BMA und SPUD debuggers, fur beide gibt es Quelle. Beiden benutzen ein bstc List Datei um von Adressen zum Quelle zu gehen. Ich hab noch kein funktionierendes Spin compiler in C gefunden, und bstc is nicht offene Quelle glaub Ich. Vielleicht ist Sphinx brauchbar fur dieses Zweck. Vielleicht können wir Brad mal Bitten um bstc Quelle frei zu geben.
Hab mal Sphinx genauer angesehen. Compilation von Spin seht sich nicht sehr Schwierig aus -- aber die Probleme sind vielleicht in generation von optimierte Bytecode Sequenzen. Sphinx macht keine Optimierungen.

Also an die Arbeit, eine offene Quelle Hive Spin Compiler in C. Anbei das erste Teil, eine Spin Lexer. Ich glaub das das ganze etwa 5000 Zeilen C Quelle sein wird. Wer Zeit hat, bitte mahl testen (einfach mahl einige spin Quellen anbieten und sehen ob das ohne Crashes oder Fehlermeldungen durch geht).

Paul
Dateianhänge
test.c
(688 Bytes) 485-mal heruntergeladen
keyword.h
(12.43 KiB) 737-mal heruntergeladen
lexer.h
(385 Bytes) 496-mal heruntergeladen
lexer.c
(16.96 KiB) 446-mal heruntergeladen
Benutzeravatar
yeti
Beiträge: 2300
Registriert: Fr 27. Aug 2010, 14:48
Wohnort: Wrong Planet
Kontaktdaten:

Re: Hive Spin Compiler

Beitrag von yeti »

Code: Alles auswählen

(yeti@destiny:2)~/wrk/propeller/hsc$ ./test ../hive-trios-svn/hive-trios-read-only/flash/administra/admflash.spin 
Speicherzugriffsfehler
Oha!

Code: Alles auswählen

(yeti@destiny:2)~/wrk/propeller/hsc$ file ../hive-trios-svn/hive-trios-read-only/flash/administra/admflash.spin 
../hive-trios-svn/hive-trios-read-only/flash/administra/admflash.spin: Little-endian UTF-16 Unicode English text, with CRLF line terminators
Aha!
...also nicht mit dem Unicode-Mist aus der parallaxschen IDE füttern!
...war eigentlich schon beim Blick in die Quellen klar, aber ich wollt's lieber doch explizit erwähnen...

Die Versuche die ich mit wirklich winzigen Spin-Quellen in echtem ASCII aus ursprünglich freilaufenden Bio-Bits gemacht habe sahen bisher gut aus.

(...aber wegen Migräne halt ich es grad' nicht wirklich lang am Bildschirm aus...)
𝖂𝖎𝖗 𝖐𝖔̈𝖓𝖓𝖊𝖓 𝖆𝖑𝖑𝖊𝖘 𝖆𝖚𝖘𝖘𝖊𝖗 𝖎𝖓 𝕱𝖗𝖚̈𝖍𝖑𝖎𝖓𝖌, 𝕾𝖔𝖒𝖒𝖊𝖗, 𝕳𝖊𝖗𝖇𝖘𝖙 𝖚𝖓𝖉 𝖂𝖎𝖓𝖙𝖊𝖗! – 𝕯𝖊𝖚𝖙𝖘𝖈𝖍𝖑𝖆𝖓𝖉.
"Du willst hier nicht klicken. Dies interessiert Dich nicht." — Yeti.
"DNA is a four letter word!" — Yeti.
Benutzeravatar
yeti
Beiträge: 2300
Registriert: Fr 27. Aug 2010, 14:48
Wohnort: Wrong Planet
Kontaktdaten:

Re: Hive Spin Compiler

Beitrag von yeti »

Den Hinweis zum "Open source Spin/PASM compiler in C/C++" hab ich in einen eigenen Thread umgebettet...
𝖂𝖎𝖗 𝖐𝖔̈𝖓𝖓𝖊𝖓 𝖆𝖑𝖑𝖊𝖘 𝖆𝖚𝖘𝖘𝖊𝖗 𝖎𝖓 𝕱𝖗𝖚̈𝖍𝖑𝖎𝖓𝖌, 𝕾𝖔𝖒𝖒𝖊𝖗, 𝕳𝖊𝖗𝖇𝖘𝖙 𝖚𝖓𝖉 𝖂𝖎𝖓𝖙𝖊𝖗! – 𝕯𝖊𝖚𝖙𝖘𝖈𝖍𝖑𝖆𝖓𝖉.
"Du willst hier nicht klicken. Dies interessiert Dich nicht." — Yeti.
"DNA is a four letter word!" — Yeti.
paulruiz
Beiträge: 25
Registriert: Di 20. Dez 2011, 11:38

Re: Hive Spin Compiler

Beitrag von paulruiz »

Danke fur Tests und fur das Link. Ich bin sehr Froh: ein Bauteil das innerhalb 24 Stunden da ist und ohne Arbeit. War nur alles so einfach! :D :D :D

Die grosse ist 10.000 Zeilen, etwa 2-Fach was Ich gedacht hatte, aber immer noch schlank. Vielleicht lasst es sich auch nog abspecken.

Am moment wird nog kein Debug info generiert, aber das ist vielleicht ist das nicht so schwer um zu machen.
Antworten