Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Apple Pippin #81

Open
upintheairsheep opened this issue Mar 27, 2024 · 4 comments
Open

Apple Pippin #81

upintheairsheep opened this issue Mar 27, 2024 · 4 comments
Labels
feature-request Request support for some feature

Comments

@upintheairsheep
Copy link

upintheairsheep commented Mar 27, 2024

Can you add support for the Apple Pippin as a machine, and add the [https://retrostuff.org/2019/11/24/pippin-atmark-adb-adapter-dongles/ AppleJack] pADB (modified ADB) controller as a joystick? Pippin emulation already exists as partial support in MAME, but there is no viable Pippin emulator, so having it supported here would be nice.

@dingusdev
Copy link
Owner

Much of the components that make up a Pipppin are already emulated. The biggest hurdle is to find documentation on the TAOS graphics processor, which may or may not be a simple framebuffer. I might get started on a skeleton to see how far I can get.

@adespoton
Copy link

Looks like there's a good central reference for dumping/finding info here now: https://emulation.gametechwiki.com/index.php/Apple_Pippin -- although I'm not sure how useful it'll be, considering one of the quoted sources there appears to be me :D

Thinking about this a bit... is the Taos GPU at all related to Tao Group, which produced TAOS in Japan in the same period as the Pippin? https://en.m.wikipedia.org/wiki/Tao_Group

The Intent platform could be run either as the native operating system or as an application. Service code was delivered in a format called Virtual Processor (VP), which was translated on the device to native machine code.

The Intent portfolio included support for:

[C](https://en.m.wikipedia.org/wiki/C_(programming_language))/[C++](https://en.m.wikipedia.org/wiki/C%2B%2B) games with [OpenGL ES](https://en.m.wikipedia.org/wiki/OpenGL_ES) 3D rendering
A [Java](https://en.m.wikipedia.org/wiki/Java_(programming_language)) virtual machine which translated to native code
An [internet browser](https://en.m.wikipedia.org/wiki/Internet_browser) optimised for small screens
A music and multimedia [mixer](https://en.m.wikipedia.org/wiki/Mixing_console) called miniMIXA
A [MIDI](https://en.m.wikipedia.org/wiki/MIDI) [ringtone](https://en.m.wikipedia.org/wiki/Ringtone) engine called the Advanced Polyphone Ringtone Engine.

This really sounds like the same hardware, with the Pippin using an early version of the Intent engine for graphics processing. The hardware would make sense, given Apple's intention to make this a gaming platform that didn't require a specific hardware reference platform.

All this to say, we may have a route forward here, since Intent was designed to be platform agnostic and had implementation libraries for Java as well as a number of SDKs. https://wiki.c2.com/?TaoIntentOs may also be of use.

An intriguing bit here is that by the time it was renamed to Intent, it appears that OpenGL support was present (which I'm pretty sure wasn't there with the TAOS graphics hardware in the Pippin?)

Anyway, just recording some random thoughts on the topic in case they help someone down the line.

@dingusdev dingusdev added the feature-request Request support for some feature label Apr 3, 2024
@upintheairsheep
Copy link
Author

The Pippin BIOS can boot, but the AppleJack controller is not yet supported.

@maximumspatium
Copy link
Collaborator

maximumspatium commented May 9, 2024

FYI, I'm working on MESH SCSI controller emulation so Pippin can boot games off its internal CD-ROM drive.
AFAIK, Keith Kaisershot is working on AppleJack emulation for DingusPPC.
In other words, the chances are good that Pippin emulation in DingusPPC will be usable very soon.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature-request Request support for some feature
Projects
None yet
Development

No branches or pull requests

4 participants