spinix ... oder : Sprachlos vor'm Propeller

Offtopic Themen bitte hier hinein.
Benutzeravatar
yeti
Beiträge: 2300
Registriert: Fr 27. Aug 2010, 14:48
Wohnort: Wrong Planet
Kontaktdaten:

Was für ein Osterei...

Beitrag von yeti »

In [url=http://forums.parallax.com/showthread.php?123795&p=1089320#post1089320]Re: spinix[/url] Dave Hein hat geschrieben:I've updated Spinix to version 0.90. This version contains the following new features:

- Added the Spinit Spin compiler to the spasm directory
- Improved ANSI support for the vi editor
- Added the "." repeat command to vi
- Fixed the "/" and "?" text search commands in vi
- Fixed a few problem in the Spasm assembler
- Added console terminal type and number of lines to the config command

The biggest change is the addition of the Spinit Spin compiler. This compiler is restricted to simple Spin programs, but it can produce useable programs. It outputs Spasm code, which can be assembled with the Spasm assembler. It does not support PASM code, but that will come in a future update. Also, programs must consist of a single object. Multiple objects will be supported later with a Spin object linker utility.

Please let me know if you see any problems with the vi ANSI support. It works OK with the Windows Hyper Terminal and Putty. Make sure the ^H backspace is enabled when using Putty.

Attached Files Attached Files

* File Type: zip spinix090.zip‎ (722.5 KB, 7 views)
Also mal den GGPP-USB-SD-Clone aus der Reisetasche wühlen und ihn ans Netbook stöpseln...
𝖂𝖎𝖗 𝖐𝖔̈𝖓𝖓𝖊𝖓 𝖆𝖑𝖑𝖊𝖘 𝖆𝖚𝖘𝖘𝖊𝖗 𝖎𝖓 𝕱𝖗𝖚̈𝖍𝖑𝖎𝖓𝖌, 𝕾𝖔𝖒𝖒𝖊𝖗, 𝕳𝖊𝖗𝖇𝖘𝖙 𝖚𝖓𝖉 𝖂𝖎𝖓𝖙𝖊𝖗! – 𝕯𝖊𝖚𝖙𝖘𝖈𝖍𝖑𝖆𝖓𝖉.
"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: spinix ... oder : Sprachlos vor'm Propeller

Beitrag von yeti »

http://forums.parallax.com/showthread.p ... ith-Spinix ... ist vielleicht 'n Lesezeichen wert ...
𝖂𝖎𝖗 𝖐𝖔̈𝖓𝖓𝖊𝖓 𝖆𝖑𝖑𝖊𝖘 𝖆𝖚𝖘𝖘𝖊𝖗 𝖎𝖓 𝕱𝖗𝖚̈𝖍𝖑𝖎𝖓𝖌, 𝕾𝖔𝖒𝖒𝖊𝖗, 𝕳𝖊𝖗𝖇𝖘𝖙 𝖚𝖓𝖉 𝖂𝖎𝖓𝖙𝖊𝖗! – 𝕯𝖊𝖚𝖙𝖘𝖈𝖍𝖑𝖆𝖓𝖉.
"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: spinix ... oder : Sprachlos vor'm Propeller

Beitrag von yeti »

Es tut sich was im Spinix-Land:
Und es gab in diesen Tagen im Parallax-Forum unter [url]http://forums.parallax.com/showthread.php/123795-spinix?p=1194343&viewfull=1#post1194343[/url] wahre frohe Kunde und es ward Jubel all und überall... Dave Hein hat geschrieben:I've attached spinix097 below. This contains the beginnings of a VGA driver that I did about a year ago, but never posted. It's only a 32x15 text display, so it's not that useful, but it's a start. The driver is loaded by running loadvga. Once the driver is loaded you can run a test program call vgatdemo. Hit the escape key to exit the program. The standard out can be switched to the display by typing "stdout display". It can be switched back to the serial port by typing "stdout serial".

This version also contains faster versions of the sb and rb apps that are used to send and receive files over the serial port. The faster versions are called sb1 and rb1. They compute the CRC using a table instead of doing it a bit at a time.
𝖂𝖎𝖗 𝖐𝖔̈𝖓𝖓𝖊𝖓 𝖆𝖑𝖑𝖊𝖘 𝖆𝖚𝖘𝖘𝖊𝖗 𝖎𝖓 𝕱𝖗𝖚̈𝖍𝖑𝖎𝖓𝖌, 𝕾𝖔𝖒𝖒𝖊𝖗, 𝕳𝖊𝖗𝖇𝖘𝖙 𝖚𝖓𝖉 𝖂𝖎𝖓𝖙𝖊𝖗! – 𝕯𝖊𝖚𝖙𝖘𝖈𝖍𝖑𝖆𝖓𝖉.
"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: spinix ... oder : Sprachlos vor'm Propeller

Beitrag von yeti »

Ort: [url]http://forums.parallax.com/showthread.php/123795-spinix?p=1202015&viewfull=1#post1202015[/url] Betreff: [b]Re: spinix[/b] Dave Hein hat geschrieben:Spinix 1.02 is attached below. The main change in version 1.02 is the addition of the pfth Forth interpreter. The executable for pfth is in the /bin directory, and the source and text files are in the /forth directory. An ANS Forth source file can be executed by typing "pfth file.fth" from the Spinix command line. The user can exit pfth, and return back to the Spinix shell by typing "bye". pfth supports simplified version so the ls, cat, rm, cp and cd command.

Another major change is the way that Spin and C programs are detected. I now use an explicit "SPRO" or "CPRO" tag stored in the first four bytes of the file, where the clock frequency is normally stored. Programs that are not Spinix-aware can be run as stand-alone programs. This allows for running CMM C programs.

I also add the Linux word count program, wc.
Das Attachment bitte am angegebenen Ort abholen.
𝖂𝖎𝖗 𝖐𝖔̈𝖓𝖓𝖊𝖓 𝖆𝖑𝖑𝖊𝖘 𝖆𝖚𝖘𝖘𝖊𝖗 𝖎𝖓 𝕱𝖗𝖚̈𝖍𝖑𝖎𝖓𝖌, 𝕾𝖔𝖒𝖒𝖊𝖗, 𝕳𝖊𝖗𝖇𝖘𝖙 𝖚𝖓𝖉 𝖂𝖎𝖓𝖙𝖊𝖗! – 𝕯𝖊𝖚𝖙𝖘𝖈𝖍𝖑𝖆𝖓𝖉.
"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: spinix ... oder : Sprachlos vor'm Propeller

Beitrag von yeti »

Hey Spinix!
How R U?
Long time no see...

Ich hab mal auf meinen Gadget-Gangster-Propeller-Plattform-USB-SD-Hong-Kong-Clone (GGPPUSHKC) zusammengefrickelt, was grad so aktuëll an Spinix greifbar ist:
  1. spinix133.zip
  2. nachgeliefertes /bin/timezone
  3. nachgeliefertes sdsave.fth
  4. boot.binary/boot.spin-Fix
Mal als Appetitanreger:

Code: Alles auswählen

shell> cd devel
shell> cat fibo.spn
con
  _clkmode = $62
  _clkfreq = $4E495053 ' SPIN

obj
  c : "clibsd"

pub main(argc, argv) | n, startTime, endTime, executionTime, rawTime
  c.enter(argc, argv)
  c.printf0(string("hello, world!\n"))
  n := 0
  repeat while n =< 26
    c.printf1(string("fibo(%d) = "), n)
    startTime := clock
    result := fibo(n)
    endTime := clock
    rawTime := endTime - startTime
    executionTime := rawTime / (CLKFREQ / 1000)
    c.printf3(string("%d (%dms) (%d ticks)\n"), result, executionTime, rawTime)
    n++
  c.exit(0)

pub clock
  result := cnt

pub fibo(n)
  if n < 2
    return n
  else
    return fibo(n - 1) + fibo(n - 2)

shell> spc fibo
spinit fibo
Pass 1: Compiling Global Symbols
Pass 2: Generating Spasm Code
spasm fibo
Pass 1: Counting methods and objects
Pass 2: Compiling Symbols
50 symbols compiled
Pass 3: Generating bytecodes
208 bytes generated
splink fibo.bin clibsd.bin fibo
shell> fibo
hello, world!
fibo(0) = 0 (0ms) (2944 ticks)
fibo(1) = 1 (0ms) (2944 ticks)
fibo(2) = 1 (0ms) (6976 ticks)
fibo(3) = 2 (0ms) (11008 ticks)
fibo(4) = 3 (0ms) (19072 ticks)
fibo(5) = 5 (0ms) (31168 ticks)
fibo(6) = 8 (0ms) (51328 ticks)
fibo(7) = 13 (1ms) (83584 ticks)
fibo(8) = 21 (1ms) (136000 ticks)
fibo(9) = 34 (2ms) (220672 ticks)
fibo(10) = 55 (4ms) (357760 ticks)
fibo(11) = 89 (7ms) (579520 ticks)
fibo(12) = 144 (11ms) (938368 ticks)
fibo(13) = 233 (18ms) (1518976 ticks)
fibo(14) = 377 (30ms) (2458432 ticks)
fibo(15) = 610 (49ms) (3978496 ticks)
fibo(16) = 987 (80ms) (6438016 ticks)
fibo(17) = 1597 (130ms) (10417600 ticks)
fibo(18) = 2584 (210ms) (16856704 ticks)
fibo(19) = 4181 (340ms) (27275392 ticks)
fibo(20) = 6765 (551ms) (44133184 ticks)
fibo(21) = 10946 (892ms) (71409664 ticks)
fibo(22) = 17711 (1444ms) (115543936 ticks)
fibo(23) = 28657 (2336ms) (186954688 ticks)
fibo(24) = 46368 (3781ms) (302499712 ticks)
fibo(25) = 75025 (6118ms) (489455488 ticks)
fibo(26) = 121393 (9899ms) (791956288 ticks)
shell> vi fibo.spn 
...der Schnappschuß vom dann erscheinenden Editor ist als Bild angebäppt...

Pfeiltasten probiert man vergeblich, aber wer nicht zu arg von heutigen vi-Warmduscherversionen verkorkst ist, wird schon damit klarkommen...

Spektakulär, was da ein einzelner Propeller alles leistet!

Jetzt fehlt eigentlich nur noch ein als 2ter Propeller realisiertes Terminal und die Kiste ist autark.
An Screen anbäppen (screen /dev/ttyUSB0 115200) ist aber auch nicht so falsch... :-D ...ohne irgendwas, das Terminal spielen kann, verlasse ich im allgemeinen eh nie das Haus... :-) ...vielleicht ist demnächst also der GGPPUSHKC öfter mal dabei...

PFTH ist auch in Spinix dabei, aber immer lamsan mit die greisen Informagièrs... der Brodie liegt auch schon länger rum, aber ich arbeite bislang immernoch recht erfolglos an der Erfindung des 50-Stunden-Tages... *seufz!* ...auch Rom wurde nicht in einer Nacht versaut!
Dateianhänge
:-D
:-D
𝖂𝖎𝖗 𝖐𝖔̈𝖓𝖓𝖊𝖓 𝖆𝖑𝖑𝖊𝖘 𝖆𝖚𝖘𝖘𝖊𝖗 𝖎𝖓 𝕱𝖗𝖚̈𝖍𝖑𝖎𝖓𝖌, 𝕾𝖔𝖒𝖒𝖊𝖗, 𝕳𝖊𝖗𝖇𝖘𝖙 𝖚𝖓𝖉 𝖂𝖎𝖓𝖙𝖊𝖗! – 𝕯𝖊𝖚𝖙𝖘𝖈𝖍𝖑𝖆𝖓𝖉.
"Du willst hier nicht klicken. Dies interessiert Dich nicht." — Yeti.
"DNA is a four letter word!" — Yeti.
Benutzeravatar
TuxFan
Beiträge: 1022
Registriert: So 6. Sep 2009, 11:18

Re: spinix ... oder : Sprachlos vor'm Propeller

Beitrag von TuxFan »

Moin moin!
So, hab mal ein bisschen mit spinix gespielt.
Der erste Versuch mit dem CP/Mchen hat leider nicht geklappt, deshalb hab ich den zweiten Versuch mit dem SoMProp gemacht. Hierbei konnte ich erstmal die Pinbelegung für die serielle Schnittstelle zum Terminal so belassen und mußte nur die Frequenz in zwei Dateien (/src/boot.spin, /src/eeprom.spin) auf 10 MHz und PLL8X geändert. Da ich unter Linux arbeite, mußte noch der Compiler BSTC mit Rootrechten nach /usr/bin kopiert werden, damit die Übersetzung mit Hilfe der Scripte auch lief. Nach der Compilierung noch den Inhalt des root-Verzeichnisses auf die microSD-Karte kopiert. Dann boot.binary ins EEProm mit BST kopiert und die SD-Karte in den Schacht des SoMProp geschoben. Nachdem das Terminal von BST nur ein PR zeigte und dann blockierte hab ich es mal mit dem GTKTerm probiert und endlich lief spinix. Rasch die Pin-Nummern fürs SD-Laufwerk eingegeben und es war wie vor mehr als zwanzig Jahren als ich den ersten Kontakt zu Unix hatte.
So nun werd ich es noch einmal mit dem CP/Mchen versuchen. Schaun mer mal......
Gruß
TuxFan
Wunder gibt es immer wieder.......
Benutzeravatar
drohne235
Administrator
Beiträge: 2284
Registriert: So 24. Mai 2009, 10:35
Wohnort: Lutherstadt Wittenberg
Kontaktdaten:

Re: spinix ... oder : Sprachlos vor'm Propeller

Beitrag von drohne235 »

Ich will das auch auf dem Hive haben... :evil:
"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
Benutzeravatar
yeti
Beiträge: 2300
Registriert: Fr 27. Aug 2010, 14:48
Wohnort: Wrong Planet
Kontaktdaten:

Re: spinix ... oder : Sprachlos vor'm Propeller

Beitrag von yeti »

TuxFan hat geschrieben:Da ich unter Linux arbeite, mußte noch der Compiler BSTC mit Rootrechten nach /usr/bin kopiert werden, damit die Übersetzung mit Hilfe der Scripte auch lief.
Das ist doch kein Grund Super-Goofy die Supererdnüsse wegzufuttern... es geht auch ohne root-Rechte:

Code: Alles auswählen

mkdir ~/bin
cp .../von/sonstwo/bstc ~/bin/
export PATH="~/bin:$PATH"
...hoffentlich wird Spinix bald selbsthostend... oder wie heißt das?
drohne235 hat geschrieben:Ich will das auch auf dem Hive haben... :evil:
Schick Dave doch zwei Hives, einen fertigen und einen zum selber bauen... über einen Hive-Werbeetat hatten wir doch schonmal gebrainstormt... ist vielleicht 'n eigenen Thread wert?

Anfixxen und dabei harmlos flöten...
𝖂𝖎𝖗 𝖐𝖔̈𝖓𝖓𝖊𝖓 𝖆𝖑𝖑𝖊𝖘 𝖆𝖚𝖘𝖘𝖊𝖗 𝖎𝖓 𝕱𝖗𝖚̈𝖍𝖑𝖎𝖓𝖌, 𝕾𝖔𝖒𝖒𝖊𝖗, 𝕳𝖊𝖗𝖇𝖘𝖙 𝖚𝖓𝖉 𝖂𝖎𝖓𝖙𝖊𝖗! – 𝕯𝖊𝖚𝖙𝖘𝖈𝖍𝖑𝖆𝖓𝖉.
"Du willst hier nicht klicken. Dies interessiert Dich nicht." — Yeti.
"DNA is a four letter word!" — Yeti.
joergd
Beiträge: 124
Registriert: Fr 20. Dez 2013, 20:08
Wohnort: Ronneburg

Re: spinix ... oder : Sprachlos vor'm Propeller

Beitrag von joergd »

drohne235 hat geschrieben:Ich will das auch auf dem Hive haben...
Ich auch. Ohne daß ich mir das jetzt schon genauer angesehen habe: So schwer dürfte das doch gar nicht sein. Nur die SD-Card-Funktionen umbiegen und es müßte (über die serielle) laufen. Dann noch Bellatrix anbinden, das ist vielleicht etwas schwerer.
Viele Grüße

Jörg
Benutzeravatar
drohne235
Administrator
Beiträge: 2284
Registriert: So 24. Mai 2009, 10:35
Wohnort: Lutherstadt Wittenberg
Kontaktdaten:

Re: spinix ... oder : Sprachlos vor'm Propeller

Beitrag von drohne235 »

joergd hat geschrieben:
drohne235 hat geschrieben:Ich will das auch auf dem Hive haben...
Ich auch. Ohne daß ich mir das jetzt schon genauer angesehen habe: So schwer dürfte das doch gar nicht sein. Nur die SD-Card-Funktionen umbiegen und es müßte (über die serielle) laufen. Dann noch Bellatrix anbinden, das ist vielleicht etwas schwerer.
Jo, hab schon überlegt, ob man das einfach in Administra startet und über den Bus eine serielle Kommunikation zu Bella als Terminal herstellt. So bräuchte man nur die Pins anpassen.
"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
Antworten