Hacker News new | past | comments | ask | show | jobs | submit login
Emulating an iPod Touch 2G using QEMU (devos50.github.io)
129 points by jandeboevrie on Dec 25, 2023 | hide | past | favorite | 21 comments



Is there an archive of ipas that would work on the version of iOS that this is emulating?

I was just thinking about this because of the Nintendo server shutdown and it feels similar for iOS apps that only worked on previous versions or require specific servers to hit - wondering if a lot of these older apps & services will just be lost. Even services working today would have the same issue a decade from now if there’s not some standard to archive the data & api layers as well as the apps themselves.


I had a conversation with a huge gaming friend of mine. We were talking about old Nintendo cartridges and I said it’s gonna suck for kids when their favorite mobile game is lost to history.

He thinks they will just emulate Android for everything until they have a working solution for iOS.


I managed to get it working and it is a good nostalgia trip. There is no networking so there is not a lot to do, but you can use Settings to set the time, use the World Clock, make Notes and use the Calculator.

Don't make the mistake I did and forget to make a shallow clone of the repo (--depth=1).


Thanks to this comment I finally realized what a depth=1 clone is.


Fantastic stuff. I just tried it on my MBP and it works. Though I haven't figured out how to get back to the home screen from any app.

Edit: Press "h" for home


Super side question: how do you pronounce QEMU? I've heard it as "kyum" in a video; my personal guess is "kyu-eemu".


I've heard KEE-moo and KEM-oo.


I'm Swedish so I just pronounce stuff I'm unsure about like they're spelled. In this case: "Q-emu". But I also say /etc like "e-t-c" rather than etsy, mysql like "my-s-q-l".

I'm not in a hurry, and people will know what I'm saying even if I sound a bit stupid. Benefit of not being a native speaker :)


same here as an American. Generally if I see that the word is a portmanteau of some kind , in this case presumably 'emulation' is one part of the portmanteau , I just try to do my best to pronounce that part like the parent word.

So in this case i've always said "Q-Emu' in my head. I share your other pronunciations, too. Weird.

I never knew what the Q meant, upon searching I see that it's "quick emulator".


> But I also say /etc like "e-t-c" rather than etsy

I've never heard anyone use anything other than either 'slash e t c' or 'slash et cetera', I think I'd probably have an immense urge to punch someone if they said 'slash etsy'


"etc" is short for Latin et cetera. So it's arguably no more "native" for Anglophones than for you.


I spell out each letter even though it’s not an acronym.


kwehmoo


i always said que-emu.


This is nice. I actually wanted to emulate the hardware of a car's ECU to run it's firmware and reverse engineer it better. The arch was simple, it had no multiple cores, it had no MMU, it was all running in real mode basically.

Unfortunately it required in my opinion heavy modifications to emulate the timers, internal modules of the main chip, memory(SRAM and NAND), CAN controllers and so forth. Maybe not everything, but most of the chip features were used and required. Then I had to emulate or at least a static version of all the engine peripherals such as sensors and injectors and so forth. I had no idea if my emulator(QEMU) had to be cycle accurate or not.

So I gave up.


That's gonna be tough to emulate because the ECU is gonna be running a hard-realtime OS such as VxWorks or QNX so things will indeed need to be cycle-accurate.


I can assure you, it was running no more OS than an Arduino Mega would.

It was purely interrupt based.


I apologize for going off topic, but may I kindly ask how one might go about learning these things?


Pretty interesting to see Linux lodged deep within the guts of these early iOS devices.


Good old BSD. Keeps putting out ;)


I think that comment refers to the iOS kernel uploading a copy of the linux kernel to the broadcom wifi controller during boot. I'm sure a lot of devices do that or something similar.

I wonder what issues that creates licensing wise, since that's GPL'd code they have to ship on every device and firmware update. I would guess they published the source for it somewhere, and disclosed it. Just like the GPL2 versions of bash they used to put in macos.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: