Emu68
lisa-gemdos
Emu68 | lisa-gemdos | |
---|---|---|
13 | 2 | |
337 | 22 | |
- | - | |
9.0 | 10.0 | |
14 days ago | over 3 years ago | |
C | Assembly | |
Mozilla Public License 2.0 | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Emu68
- M68K Emulation for ARM
- M68K emulation for AArch64/AArch32
-
What’s New in M68k LLVM (May 2023)
As well as the Apollo FPGA emulated one there's an ARM based emulator https://github.com/michalsc/Emu68
- The fastest Amiga accelerator ever made? (Apollo Icedrake)
-
EmuTOS: A Modern FOSS Replacement OS for the Atari ST – and the Amiga Too
AIUI this is the motivation behind Emu68:
https://github.com/michalsc/Emu68
To run 680x0 AROS (and maybe real AmigaOS via PiStorm) on bare-metal on the Raspberry Pi.
See:
https://www.patreon.com/posts/i-owe-you-some-20956961
- MacintoshPi
- Will the PiStorm ever be a reliable solution for Amiga gaming?
-
Hacker News top posts: Aug 9, 2021
Emu68: M68K Emulation for ARM\ (2 comments)
lisa-gemdos
-
The Atari ST's Gemdos
The origin story of the GEM stuff is quite interesting. Lee Lorenzen was an employee at Xerox in Texas, and wanted to get some of the ideas from the Star onto commodity x86 hardware (just prior to IBM PC). He made a prototype, presented it, and it went nowhere. Gary Kildall (DR) then recruited him to come work for them doing basically that. He (Lorenzen) later went off to spin up his own company -- which created Ventura Publisher, which was built on a fork of GEM.
GEM maybe has a bad reputation as a bit of a Mac UI knockoff, but the history is actually deeper than that. Like a lot of things DR did, it got a bit neglected on the market.
Atari Corp also did a bad job of ongoing maintenance of this stuff. At least not until the latest-80s/early 90s when they suddenly started to iterate on it, hired Eric Smith (author of "MiNT" a unixy multitasking kernel that built overtop GEMDOS) to work on the OS, and pushed out proper multitasking versions... for their 68020/030 machines ... but too late.
It'd be cool if Landon Dyer (who is a user here) were to comment on this, as he was on the team that ported all this stuff from x86 to 68k. Unfortunately it looks like his blog where he wrote this up (dadhacker.com) seems to be gone (!?), it was great writing.
I also believe some of the sources from GEMDOS were used as part of the DR-DOS source tree later. All of this is GPL now.
Also interesting, before the ST, the 68k port of GEMDOS was run on Motorola VME 68k machines, but also on the Apple Lisa. The version running on the latter has since been resurrected, and boots:
https://github.com/cheesestraws/lisa-gemdos
Finally, the (GPL'd) EmuTOS source code base basically did all of the heroic work of porting the original DR sources to the Atari ST again, based on the original DR sources. And they have done an amazing job of reproducing Atari/DR's work faithfully.
https://emutos.sourceforge.io/
That, and EmuTOS runs lovely on other 68k machines (Amiga, Mac, and Lisa for example) as well as ColdFire machines (the "FireBee" Atari-ish computer, and dev boards). It's a great little 68k/ColdFire operating system that is quite portable and well supported.
EmuTOS running on Amiga: https://www.youtube.com/watch?v=uxIytWnqQnU
-
EmuTOS: A Modern FOSS Replacement OS for the Atari ST – and the Amiga Too
FWIW having seen the sources for both, GEMDOS isn't based directly off CP/M68k. There are commonalities, and some bits of code shared (executable format for one) but they're entirely separate codebases.
The first platform to run GEMDOS on 68k was the Apple Lisa. That was the dev machine DR used.
That's been resurrected in the past few years: https://github.com/cheesestraws/lisa-gemdos
And in fact EmuTOS itself now boots on the Lisa again.
I have a feeling the stack-based calling convention may be influenced by the dev period on the Lisa? The reason I say this is that I know Mac OS Classic used this scheme as well: push all args to stack and call TRAP. I suspect because of this that the Lisa did as well, though I couldn't tell you for sure since hardly any docs are out there for that. Atari was not unique in choosing these scheme.
Now, why Apple did this, I don't know. Maybe it's because they wrote everything in their own bespoke Pascal and that was something about their compiler?
I am not sure an x86 version of GEMDOS really ever existed so doubt it came from there.
FWIW you got me interested, so I'm reading the CP/M68k sources right now and from the bits I've read, I do see the stack based calling convention there, as well:
_bios2:
What are some alternatives?
The Blocklist Project - These lists were created because the founder of the project wanted something with a little more control over what is being blocked. Many lists out there are all or nothing. We set out to create lists with more control over what is being blocked and believe that we have accomplished that.
Atari-Mac-MagiC-Sources
nixpkgs - Nix Packages collection & NixOS
pTOS - Port of EmuTOS to the ARM architecture.
lists - The definitive list of lists (of lists) curated on GitHub and elsewhere
atari-mint - MiNT is Not TOS: a multitasking OS for the Atari ST
circle - A C++ bare metal environment for Raspberry Pi with USB (32 and 64 bit)
MacintoshPi - MacintoshPi is a project that allows running full-screen versions of Apple's Mac OS 7, Mac OS 8 and Mac OS 9 with sound, active online connection and modem emulation under Raspberry Pi.
alephone - Aleph One is the open source continuation of Bungie’s Marathon 2 game engine.