TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Smalltalk-80 on Raspberry Pi: A bare metal implementation

166 pointsby baptiste313over 2 years ago

8 comments

johndoe0815over 2 years ago
Author here, feel free to ask any questions you have :).<p>It&#x27;s amazing this little project shows up again here. So far, I received a lot of very positive and friendly feedback about this little pet project of mine.<p>The whole project would not have been possible without the work of Rene Stange, who created the circle bare-metal library for the Raspberry Pi (<a href="https:&#x2F;&#x2F;github.com&#x2F;rsta2">https:&#x2F;&#x2F;github.com&#x2F;rsta2</a>) and Dan Banay, who created a C++ implementation of the Smalltalk-80 VM (<a href="https:&#x2F;&#x2F;github.com&#x2F;dbanay&#x2F;Smalltalk">https:&#x2F;&#x2F;github.com&#x2F;dbanay&#x2F;Smalltalk</a>). I mostly hacked together some glue code...<p>If you want to dig deeper, the Blue Book by Adele Goldberg and David Robson (scan provided by Stephane Ducasse, thanks a lot!) is _the_ reference on both the language and the structure and implementation of the underlying bytecode VM: <a href="http:&#x2F;&#x2F;stephane.ducasse.free.fr&#x2F;FreeBooks&#x2F;BlueBook&#x2F;Bluebook.pdf" rel="nofollow">http:&#x2F;&#x2F;stephane.ducasse.free.fr&#x2F;FreeBooks&#x2F;BlueBook&#x2F;Bluebook....</a><p>Beware, though it&#x27;s fully functional, crosstalk is still limited by constraints of the original Smalltalk 80 system - e.g. in terms of color (black and white only), possible screen resolution (2^20 pixels, the system crashes if you try to increase the resolution beyond this) and available memory (~1 MB!).<p>Nevertheless, I think it&#x27;s a rather authentic reproduction of a more than 40 year old system and I learned (in a comment thread on a completely different topic) that one of our fellow hackernews regulars used it to teach his kid Smalltalk programming - love it! I haven&#x27;t tried to optimize it significantly, so there&#x27;s no JIT compiler or bitblit acceleration using the Raspberry Pi GPU.<p>There&#x27;s a more modern bare-metal Smalltalk implementation based on Squeak (<a href="https:&#x2F;&#x2F;squeak.org" rel="nofollow">https:&#x2F;&#x2F;squeak.org</a>) for the Raspberry Pi by Pablo Marx, though this seems to have some stability problems according to the author: <a href="https:&#x2F;&#x2F;github.com&#x2F;pablomarx&#x2F;RaspberrySqueak">https:&#x2F;&#x2F;github.com&#x2F;pablomarx&#x2F;RaspberrySqueak</a><p>Finally, if you are interested in alternative bare-metal language&#x2F;OS environments for the Raspberry Pi, you could also give Lukas Hartmann&#x27;s (of MNT Reform notebook fame) Interim OS a try: <a href="http:&#x2F;&#x2F;interim-os.com" rel="nofollow">http:&#x2F;&#x2F;interim-os.com</a>
评论 #34219282 未加载
评论 #34213221 未加载
评论 #34210262 未加载
dangover 2 years ago
Related:<p><i>Bare metal Smalltalk-80 port to the Raspberry Pi</i> - <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=23874206" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=23874206</a> - July 2020 (63 comments)<p><i>Ask HN: Automated SW testing on different Raspberry Pi models?</i> - <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=23806323" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=23806323</a> - July 2020 (1 comment)
评论 #34209924 未加载
0x445442over 2 years ago
I love ST the language, I like ST the image but I hate the tight coupling to the antiquated UI. I know there’s GNU ST but I wish there were more options. I also wonder how difficult it would be to create a modern IDE integration with GNU ST with something like IntelliJ, Eclipse, Net Beans or VS Code.
评论 #34214711 未加载
daitangioover 2 years ago
Also, this Java implementation is nice <a href="https:&#x2F;&#x2F;github.com&#x2F;victorr&#x2F;jsqueak">https:&#x2F;&#x2F;github.com&#x2F;victorr&#x2F;jsqueak</a><p>Look at Squeak Smalltalk for further enhancements
bogomipzover 2 years ago
The README states:<p>&gt;&quot;Smalltalk-80 for Raspberry Pi version 0.2 This is a bare metal Smalltalk-80 port to the Raspberry Pi.&quot;<p>I was curious what &quot;bare metal&quot; means in this context. Does this just mean that the Small Talk VM itself was ported to ARM?
评论 #34214683 未加载
narutowindyover 2 years ago
Someone explain what&#x27;s smalltalk?
评论 #34210295 未加载
评论 #34210691 未加载
评论 #34210372 未加载
pulse7over 2 years ago
Any screenshots?
评论 #34209056 未加载
评论 #34209036 未加载
doomDOTwadover 2 years ago
(2020)