Forum: Mikrocontroller und Digitale Elektronik Mini Heimcomputer zum selbst programmieren


von Wusel D. (stefanfrings_de)


Lesenswert?

Ich suche einen Mini Heimcomputer zum selbst programmieren (also ohne 
Betriebsystem) als Bausatz oder Fertiggerät.

Ich dachte da an sowas wie den Commodore PET, nur mit moderneren 
Bauteilen und nicht ganz so klobig.

http://upload.wikimedia.org/wikipedia/commons/thumb/c/c5/Commodore_2001_Series-IMG_0448b.jpg/280px-Commodore_2001_Series-IMG_0448b.jpg

Gibt es sowas?

von Karl H. (kbuchegg)


Lesenswert?

Stefan Frings schrieb:

> Gibt es sowas?

Die gibts schon lange nicht mehr.
Seit du an jeder Strassenecke einen PC um 300 Euro kriegst, ist diese 
Zeit längst vorbei.

Was stört dich am AVR-BASIC-Computer aus der Codesammlung?
Das ist Preis-Leistungsmässig noch im einigermassen vernünftigen 
Bereich. Kommerzielle Bausätze rechnen sich da einfach nicht mehr.

Und leistungsmässig ist der dem PET weit vorraus :-)

von Lukkul (Gast)


Lesenswert?

>Was stört dich am AVR-BASIC-Computer aus der Codesammlung?
Er hat doch gar nicht gesagt, dass ihn was stört.
Ich vermute mal, er kennt das Projekt einfach noch nicht.

von Poster (Gast)


Lesenswert?

Wurde nicht eigendlich die Raspberry für genau diesen Zweck entwickelt?

von Yalu X. (yalu) (Moderator)


Lesenswert?

Stefan Frings schrieb:
>
> Ich dachte da an sowas wie den Commodore PET, nur mit moderneren
> Bauteilen

Ein PET mit moderneren Bauteilen ist ein PC.

> und nicht ganz so klobig.

Bei den PCs gibt es auch sehr schlanke Ausführungen.

> (also ohne Betriebsystem)

Du kannst auch PCs ohne Betriebssystem kaufen oder das Betriebssystem
einfach löschen.

Vielleicht hilft es weiter, wenn du uns mitteilst, welche für dich
wichtigen Merkmale der PET hat, ein PC aber nicht.

von Fred S. (kogitsune)


Lesenswert?

Ohne Deine genauen Wünsche und Anforderungen zu kennen: Wenn Du alles im 
Selbstbau bewerkstelligen und viel dabei lernen möchtest, bietet sich 
vielleicht das http://hive-project.de/ an.

von Gernot Geiz (Gast)


Lesenswert?

Stefan Frings schrieb:
> Ich suche einen Mini Heimcomputer zum selbst programmieren (also ohne
> Betriebsystem) als Bausatz oder Fertiggerät.
>
> Ich dachte da an sowas wie den Commodore PET, nur mit moderneren
> Bauteilen und nicht ganz so klobig.
>
> http://upload.wikimedia.org/wikipedia/commons/thum...
>
> Gibt es sowas?

Klar, nennt sich retrocomputing. Schau mal unter

http://de.wikipedia.org/wiki/C-One

oder anderen FPGA-basierenden Nachbauten.

von Christian B. (casandro)


Lesenswert?

Du kannst auch eines der tausenden Projekte die aus einem 
Mikrocontroller einen "Heimcomputer" machen nehmen. Ein Betriebssystem 
ist aber das was man da eigentlich gerne hätte.

von Alternative für Deutschland (Gast)


Lesenswert?

Jener hier macht Apple I, Kim-1 und Altair Nachbauten:
http://www.brielcomputers.com/

von Ben _. (burning_silicon)


Lesenswert?

Vielleicht findest Du noch irgendwo einen C-64. Oder wenn's was Retro 
aus dem Osten sein soll einen KC-85. Beides sehr schöne Geräte zum dran 
rumbasteln, allerdings versägt ein AVR die Dinger locker was die 
Rechenleistung angeht.

von Fpgakuechle K. (Gast)


Lesenswert?

Ben _ schrieb:
> Vielleicht findest Du noch irgendwo einen C-64. Oder wenn's was Retro
> aus dem Osten sein soll einen KC-85.

Also bei 25 Jahren alten Geräten erwarten dich Ausfälle und Reperaturen. 
Und mit Anschluß an einen VGA-Monitor haberts auch. Vorher mit einen 
c64-Emulator
antesten ob es dir gefällt. Ein klassicher DOS-rechner wäre auch noch zu 
überlegen. Oder der Vorgänger CP/M. Mikrocontrollern fehlt meist die 
Monitor/Grafik-ausgabe um damit Programmieren im klassischen Sinne zu 
lernen. M. E. klafft da tatsächlich eine Lücke zwischen Taschenrechner 
und Multimedia-Boliden die einem das Selbsstudium heftig erschwert.

Vielleicht findet sich dort was in Richtung 8/16 Bit mini(Lern-)computer 
mit Grafik:
-Individual computers http://www.jschoenfeld.com/home/indexde.htm
-Elektronikladen http://elmicro.com/index.html

-UZEBOX: ATMEGA-Computer-KIT http://belogic.com/uzebox/index.asp

von Wusel D. (stefanfrings_de)


Lesenswert?

Vielen dank für eure zahlreichen Antworten.

AVR-Basic: Ich möchte gerne in Maschinencode compilierte Programme laden 
und ausführen können. Bin nicht sicher, ob AVR dann überhaupt geeignet 
ist (wegen der Harvard Architektur). Wie dem auch sei, das Projekt schau 
ich mir mal genauer an.

Raspberry Pi: Wird mit Linux ausgeliefert. Ob ich dies durch mein 
eigenes Betriebsystem erstezen kann ist fraglich, da müsste ich ja 
detaillierte Infos zur Hardware bekommen. Was mir da noch fehlt ist eine 
Tastatur und ein Display und das alles dann in einem handlichen Gehäuse.

C64: Hat keinen Bildschirm. Ich möchte einen Computer mit Bildschirm.

Einplatinen-Rechner gibts genug, aber ich will keine Platine haben, 
sondern einen kompletten Ein-Kasten-Computer.

PC: Bei einem 286er Notebook würde ich mir die Programmierung eines 
eigenen Betriebsystems noch zutrauen. Aber die gibt's ja nicht mehr in 
neu. Bei aktuellen Geräten befürchte ich, dass die Hardware zu komplex 
und die Verfügbarkeit von Doku zu schlecht sein wird.

Aber ja, eigentlich läuft es auf ein Notebook hinaus - nur bitte eins 
mit vollständig dokumentierter Hardware, damit ich mein eigenes 
Betriebsystem schreiben kann.

Sinn der Aktion: Spass haben. Kommerziell betrachtet ist das natürlich 
totaler Unfug.

von Carsten (Gast)


Lesenswert?

Das Raspberry Pi wird ohne Betriebssystem ausgeliefert. Das musst du dir 
selber runterladen. Und hier mal ein kleiner Anfang wie du dir dein 
eigenes Betriebssystem für das RPi schreiben kannst 
http://www.cl.cam.ac.uk/freshers/raspberrypi/tutorials/os/.

Gruß
Carsten

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Stefan Frings schrieb:
> Was mir da noch fehlt ist eine
> Tastatur und ein Display und das alles dann in einem handlichen Gehäuse.
>
> C64: Hat keinen Bildschirm. Ich möchte einen Computer mit Bildschirm.

Das Display für beide steht in Deinem Wohnzimmer herum und heißt 
"Fernseher". Im Falle des Raspberry Pi kannst Du den Fernseher auch per 
HDMI anschließen.

Die Tastatur für den Raspberry Pi ist 'ne stinknormale PC-USB-Tastatur, 
die es in ganz einfacher Ausführung schon für 10 EUR gibt ...

Und wenn Du 'ne richtige Tastatur von z.B. Cherry nimmst (die G3000 
o.ä.), dann ist deren Gehäuse groß genug, den Raspberry Pi darin 
unterzubringen.

von Mark L. (m2k10) Benutzerseite


Lesenswert?

Stefan Frings schrieb:
> Gibt es sowas?

Jain, µMk64:
http://www.mmk64.de

Ist leider (noch?) nicht als Bausatz oder gar Fertiggerät erhältlich. 
Aber gerade Betriebssystementwicklung ist noch einfacher wie beim PET, 
dank SD-Karte kann man sowas am PC gemütlich schreiben und wie DOS 
einfach von Karte booten.

--- Gerade die Antworten gelesen, Bildschirm fehlt auch.

Grüße
Mark

von GuidoL (Gast)


Lesenswert?

wie waers mit:
DuinoMite, the World's Cheapest Computer.

http://www.duinomite.com/

von amateur (Gast)


Lesenswert?

@Stefan Frings

Ich verstehe Dein Problem nicht!

Mutterbretter gibt’s an jeder Ecke bis zum geht-nicht-mehr, 'ne Büchse 
drum und glücklich werden.

Vor Raspberry Pi's und Konsorten kann man sich schon kaum noch retten.

Jeder Elektronikhändler, der etwas auf sich hält, hat ganze Regale voll 
von mehr oder weniger ausgebauten Systemen.

... und alle mit Anschlüssen bis zum Abwinken.

Wenn alle Stricke reißen: Nimm einen großen Besen und putze ein Netbook 
bis die Platte blank ist.

von Steffen (Gast)


Lesenswert?

Hallo Stefan,

Du möchtest also ein komplettes Betriebssystem from Scratch schreiben, 
habe ich das richtig verstanden? Einschließlich dem Bootstrap? Das halte 
ich für ein sehr engagiertes Projekt, für einige Mannjahre (-zehnte).

Allein schon der Bootstrap verlangt detailliertes Wissen über die 
vorliegende Hardware, und da gibt es einiges an Komponenten. Bei einem 
klassichen PC müßtest Du das BIOS mit Deinem eigenen Bootcode flashen. 
Guck mal bei coreboot.org um einen Eindruck zu bekommen, was zum Booten 
eines PCs notwendig ist.

Oder möchtest Du auf einem "gebooteten" Rechner "lediglich" ein 
Betriebssystem aufsetzen, dass auf den Schnittestellen der Firmware 
basiert wo es also bereits Funktionsschnittstellen zur Tastatur, Video, 
Datenträger, etc. gibt (bspw. das BIOS im PC)? Also bspw. ein paar 
Funktionen für Executable Binäreformate, Dateisystem, 
Speichermanagement, etc. hinzufügen?

Wenn Du einen PC als Grundlage nimmst, dann könntest Du Dir die freien 
BootLoader angucken, um einen Einstiegspunkt zu bekommen (bspw. GRUB2), 
oder ein einfaches freies BS wie FreeDOS.

Grüße, Steffen

von Ben _. (burning_silicon)


Lesenswert?

> C64: Hat keinen Bildschirm. Ich möchte einen Computer mit Bildschirm.
Da reicht jeder alte Fernseher.

Übrigens find ichs etwas mies, daß Du alle Vorschläge direkt in den Wind 
schlägst, ohne Dir die Dinger genauer angesehen zu haben.

Zweitens, Du willst Programme ausführen, die in Maschinensprache 
geschrieben wurden? Nun, da hab ich ein böhses Märchen für Dich - und 
zwar sind die meisten davon extrem plattformabhängig und laufen nur auf 
der Hardware, für die sie geschrieben wurden. Wenn man einen AVR mit 
einem x86 Programm füttert, zuckt der nur müde mit den Schultern.

> Bei einem 286er Notebook würde ich mir die Programmierung eines
> eigenen Betriebsystems noch zutrauen.
Jaja... **kicher** glaube ich Dir aufs Wort. Leider bist Du damit 35 
Jahre zu spät dran.

Ich hab sowas auch aus Spaß mal angefangen nur um zu schauen ob ichs 
hinkriege. Einerseits erleichtert das BIOS bei den PCs viele Dinge (zB. 
Laufwerkszugriff), andererseits ist es deutlich mehr Aufwand als es am 
Anfang zu sein scheint.

von Harald W. (wilhelms)


Lesenswert?

Yalu X. schrieb:

> welche für dich wichtigen Merkmale der PET hat, ein PC aber nicht.

Einen User Port? :-)
Gruss
Harald

von Simon (Gast)


Lesenswert?

Du könntest auch den Kiwi nehmen: http://www.ist-schlau.de
Allerdings wird es mit dem Nachbauen etwas schwieriger und mit 
moderneren Bauteilen ist er ebenfalls nicht aufgebaut. :

Ein komplettes Betriebssystem selbst zu schreiben finde ich gut. Einige 
Mannjahre ist allerdings übertrieben. Es kommt halt immer darauf an, was 
das BS können soll. Als Anfänger hat man wohl eher nicht im Kopf, ein 
zweites Linux zu schreiben. Somit kann man sich Schritt für Schritt 
einarbeiten. Schau mal bei den Jungs von OSDev vorbei: 
http://wiki.osdev.org/Main_Page

Viel Erfolg und vor allem Spaß!

Simon

von Chips und Freibier! (Gast)


Lesenswert?

Stefan Frings schrieb:
> Ich möchte gerne in Maschinencode compilierte Programme laden
> und ausführen können. Bin nicht sicher, ob AVR dann überhaupt geeignet
> ist (wegen der Harvard Architektur).

Wer hat dir diesen Mist erzählt, oder einfach nur schlecht geträumt?
Wirf mal die Suchmaschine deines Vertrauens an und schau welche 
Betriebssysteme auf Harvard Architekturen laufen. Danach kannst du dir 
die Augen reiben.

von Harald Habenuß (Gast)


Lesenswert?

Chips und Freibier! schrieb:
>> Ich möchte gerne in Maschinencode compilierte Programme laden
>> und ausführen können. Bin nicht sicher, ob AVR dann überhaupt geeignet
>> ist (wegen der Harvard Architektur).
>
> Wer hat dir diesen Mist erzählt, oder einfach nur schlecht geträumt?
> Wirf mal die Suchmaschine deines Vertrauens an und schau welche
> Betriebssysteme auf Harvard Architekturen laufen. Danach kannst du dir
> die Augen reiben.

So Unrecht hat er nicht, Harvard ist nicht gleich Harvard:
http://en.wikipedia.org/wiki/Modified_Harvard_architecture

Bei einer reinen Harvard architecture kann man eben nicht Code aus dem 
Datenspeicher holen und dann den Instructionpointer draufsetzen. Aber da
Mikrocontroller modifiziertes harvards und keinen reinen sind, ist das 
kein Problem für ein OS.

Und es lohnt sich schon zu überlegen ob eine Prozessorarchitektur für 
bestimmte OS-feature (Multitask, Multiuser,Virtual mem) geeignet ist. 
Bspw. MMU für Speicherschutz, TestModifyWrite Instruction für semaphoren 
etc. pp..

von Andreas B. (andreas_b77)


Lesenswert?

Chips und Freibier! schrieb:
> Stefan Frings schrieb:
>> Ich möchte gerne in Maschinencode compilierte Programme laden
>> und ausführen können. Bin nicht sicher, ob AVR dann überhaupt geeignet
>> ist (wegen der Harvard Architektur).
>
> Wer hat dir diesen Mist erzählt, oder einfach nur schlecht geträumt?
> Wirf mal die Suchmaschine deines Vertrauens an und schau welche
> Betriebssysteme auf Harvard Architekturen laufen. Danach kannst du dir
> die Augen reiben.

Vom Stichwort Harvard getriggert aber dann vom AVR offensichtlich keine 
Ahnung…

Der kann aufgrund seiner Harvard-Architektur kein Code aus dem RAM 
ausführen und der Programmspeicher ist komplett als Flash ausgeführt. 
Das heißt, dass geladener nativer Maschinencode zur Ausführung immer 
erst geflasht werden muss (außer man emuliert einen AVR im AVR, da kann 
der Emulator auch einfach den Code aus dem RAM lesen), was sehr 
unpraktisch ist.

Mit etwa MSP430 und ARM sieht es da besser aus, die können auch einfach 
Code aus dem RAM ausführen. Es braucht nur ein Exemplar mit ausreichend 
RAM.

von Der E. (rogie)


Lesenswert?

Stefan Frings schrieb:
> Ich suche einen Mini Heimcomputer zum selbst programmieren (also ohne
> Betriebsystem) als Bausatz oder Fertiggerät.
>
> Ich dachte da an sowas wie den Commodore PET, nur mit moderneren
> Bauteilen und nicht ganz so klobig.
>
> 
http://upload.wikimedia.org/wikipedia/commons/thumb/c/c5/Commodore_2001_Series-IMG_0448b.jpg/280px-Commodore_2001_Series-IMG_0448b.jpg
>
> Gibt es sowas?


Ja, z.B. als Emulator für Windows und Linux:

http://vice-emu.sourceforge.net/

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.