Apple [RELEASE + TUTORIAL] Giovanni - GBC Emulator for Apple Watch

Manurocker95

Game Developer & Pokémon Master
OP
Member
Joined
May 29, 2016
Messages
1,512
Trophies
0
Age
29
Location
Madrid
Website
manuelrodriguezmatesanz.com
XP
2,795
Country
Spain
Hey, I didn't know why anyone posted this before. 2 years ago Gabriel O'Flaherty-Chan (Gabrieloc) started his open-source project Giovanni Emulator for Apple Watch and now I'm here to bring it to anyone interested. I know there is an old Reddit post, but hey, why not having one here. JAILBREAK IS NOT NEEDED AND THIS IS NOT MINE SO I CAN'T HELP WITH NOT-WORKING GAMES NOR ISSUES WITH THE EMULATOR.

banner.png



Some games may crash during gameplay but I tested a few games (Pokémon Gold, Crystal, Yellow, Keitai Denjuu Telefang and DK Country) and execpting a few slowdowns and gamepad-issues, the emulator works like a charm.

I tested the emulator on an iPhone X with iOS 14.3 + Apple Watch 4 with WatchOS 7.2 but the general requirements for installing the emulator are:

- Apple Watch with WatchOS 3+.
- iPhone with iOS 10+ paired with the apple watch.
- MacOS.
- XCode 8.0+ (For Apple Watch 4 and above, you need XCode 10+ as they come with WatchOS 5.1).
- Apple Developer account (can be the free one).
- Git + Github account for cloning the repo.

There are a few steps to install the app:

Clone the repo:

Turn on your mac and clone the repo by git:

Code:
git --recursive [email protected]:gabrieloc/GIOVANNI.git

or

Code:
git --recurse-submodules [email protected]:gabrieloc/GIOVANNI.git

You don't need any ssh stuff for getting this cloned and working.

Open xCode's Project:

Connect the iPhone to your mac. Open XCode and look for GIOVANNI.xcodeproj or go to the cloned folder by your favourite explorer and open it.

Building the app:

You will need to change some building settings like linking in WatchOS, iOS App and WatchkitExtension the developer team. You can change the app name and bundle identifier if you want too. Once you click build in XCode, the app will install in your iPhone. Even if it tells you that you can't install it correctly, the app will install in iOS 14.3+.

cd695317-40e8-4910-9780-fee54f027f16.jpg


ROMs:

- Dump from your physical games (or download roms from your favourite pirate site) and place them in your computer. They must be .gb or .gbc.
- Connect your iPhone to the computer and open iTunes.
- In iTunes select your phone > Shared Files > Giovanni
- Drag your ROMs there.

upload_2019-4-6_14-13-15.png



Have Fun:

- Open the app in your Apple Watch. If your game list is not refreshed automatically, open the app in your iPhone and try again. The list will display all your games. Now just tap in the game you want to play.

ca1968a9-bedd-4507-b710-0b98d7c9f444.jpg


- The game will run.

- Enjoy. <3

D3de9FjWkAAWyll.jpg


For the controls:

controls.png


If you want to see videos of the emulator working, check this:



Updates:

V1.1: I updated the code to latest iOS and WatchOS, so it no longer shows weird logs. I need to delete deprecated functions tho.



Source Code:

- Original repo: https://github.com/gabrieloc/GIOVANNI

WARNING: The project from the original repository won't work with latest iOS without some tweaks. I fixed XCode issues and uploaded the code to my github: https://github.com/Manurocker95/GiovanniEmulator.
 
Last edited by Manurocker95,

_imaxi_

New Member
Newbie
Joined
Oct 29, 2019
Messages
2
Trophies
0
Age
27
XP
55
Country
Germany
Hi,

when i try to run my build failed with error message "error: Build input file cannot be found: '/Users/maximilianstingl/Downloads/GIOVANNI-master 2/gambatte/libgambatte/src/interrupter.cpp' (in target 'Gambatte_watchOS' from project 'giovanni')"

Could you help me?

Thanks!!
 

_imaxi_

New Member
Newbie
Joined
Oct 29, 2019
Messages
2
Trophies
0
Age
27
XP
55
Country
Germany
Hi,

when i try to run my build failed with error message "error: Build input file cannot be found: '/Users/maximilianstingl/Downloads/GIOVANNI-master 2/gambatte/libgambatte/src/interrupter.cpp' (in target 'Gambatte_watchOS' from project 'giovanni')"

Could you help me?

Thanks!!
 

DannyBoi22456

Member
Newcomer
Joined
Mar 14, 2020
Messages
6
Trophies
0
Age
24
XP
88
Country
United Kingdom
Is it possible for you to add a compiled IPA in the releases on the github page? My Macbook is running El Capitan rn so I can't install Xcode 10.
 

DannyBoi22456

Member
Newcomer
Joined
Mar 14, 2020
Messages
6
Trophies
0
Age
24
XP
88
Country
United Kingdom
Is it possible for you to add a compiled IPA in the releases on the github page? My Macbook is running El Capitan rn so I can't install Xcode 10.
 

DannyBoi22456

Member
Newcomer
Joined
Mar 14, 2020
Messages
6
Trophies
0
Age
24
XP
88
Country
United Kingdom
Is it possible for you to add a compiled IPA in the releases on the github page? My Macbook is running El Capitan rn so I can't install Xcode 10.
 

Manurocker95

Game Developer & Pokémon Master
OP
Member
Joined
May 29, 2016
Messages
1,512
Trophies
0
Age
29
Location
Madrid
Website
manuelrodriguezmatesanz.com
XP
2,795
Country
Spain
sorry, im dumb. i meant a precompiled ipa for sideloading yourself (an unsigned one)

If you don't have a paid developer account, the expiration time for each free account-ipa is 7 days, so if I compile it now, I would need to compile a new one next week.

You can't compile an app without signing it afaik
 

CrCrate

New Member
Newbie
Joined
Nov 15, 2019
Messages
4
Trophies
0
Age
27
XP
38
Country
Poland
If you don't have a paid developer account, the expiration time for each free account-ipa is 7 days, so if I compile it now, I would need to compile a new one next week.

You can't compile an app without signing it afaik

stackoverflow thread 25396299 has some info how to build an ipa file without signing it. (nevermind this, please just sign the ipa for one week)
im really sorry if im bothering you but if that fails, could you just make a signed one for one week? i have a jailbroken iphone and am able to export an unsigned from that.
 
Last edited by CrCrate,

Manurocker95

Game Developer & Pokémon Master
OP
Member
Joined
May 29, 2016
Messages
1,512
Trophies
0
Age
29
Location
Madrid
Website
manuelrodriguezmatesanz.com
XP
2,795
Country
Spain
Any idea why it crashes when trying to load a game that was alrerady loaded after closing the app for the first time ?

Hmm, it should not happen. Does it happen with a specific ROM?. I will take a look just in case. It worked just fine with Pokémon Yellow and Pokémon Prism.

What fw are you using for both iOS and WatchOS?
 
Last edited by Manurocker95,

SSJoker

New Member
Newbie
Joined
Dec 28, 2020
Messages
2
Trophies
0
Age
27
Location
Suceava,Romania
Website
www.facebook.com
XP
50
Country
Romania
Hmm, it should not happen. Does it happen with a specific ROM?. I will take a look just in case. It worked just fine with Pokémon Yellow and Pokémon Prism.

What fw are you using for both iOS and WatchOS?
I tried with both Pokémon Red and Pokémon Yellow. iOS 14.3 and WatchOS 7.2.
 
  • Like
Reactions: Manurocker95

Manurocker95

Game Developer & Pokémon Master
OP
Member
Joined
May 29, 2016
Messages
1,512
Trophies
0
Age
29
Location
Madrid
Website
manuelrodriguezmatesanz.com
XP
2,795
Country
Spain
I tried with both Pokémon Red and Pokémon Yellow. iOS 14.3 and WatchOS 7.2.

That's weird then. It should not matter but are you signing with developer account or the free one?

--------------------- MERGED ---------------------------

I tried with both Pokémon Red and Pokémon Yellow. iOS 14.3 and WatchOS 7.2.

I will debug the Watchkit outputs in case something weird happens in specific cases. It might be related with a memory leak I haven't handled. But it's weird bc it's working for me.


Edit: It happened to me. I will try to check what's the issue.
 
Last edited by Manurocker95,
  • Like
Reactions: SSJoker

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • BigOnYa @ BigOnYa:
    Yea you right there, fallout 76 was a letdown, but it not that bad now, they have fixed slot of issues they had at launch. Biggest issue with Fallout 76 is its a pay to advance further type of game, which sucks
  • Xdqwerty @ Xdqwerty:
    @BigOnYa, I may probably download fallout 3 or new vegas on my ps3
  • Xdqwerty @ Xdqwerty:
    cuz I didnt like fallout 1 that much
  • BigOnYa @ BigOnYa:
    New Vegas is awesome, F3 was ok too.
  • Psionic Roshambo @ Psionic Roshambo:
    I played Fallout 4 on PC, I enjoyed it honestly. Not my favorite game on earth but at the same time I didn't hate it at all lol
  • BigOnYa @ BigOnYa:
    That's cool you got a ps3... Glad to hear. Game on!
    +1
  • Psionic Roshambo @ Psionic Roshambo:
    Ironic this was posted today lol
  • BigOnYa @ BigOnYa:
    I think the tv series has boasted play of, I did see they said playing of it Is up, way more than norm
    +1
  • BigOnYa @ BigOnYa:
    I've been playing the next gen version on Series X all day, I love it. :wub:
    +1
  • Psionic Roshambo @ Psionic Roshambo:
    Downloading some random stuff, damn almost 400GBs in like 4 hours lol
  • Psionic Roshambo @ Psionic Roshambo:
    Gonna be over 1TB this month.... damn lol
  • Xdqwerty @ Xdqwerty:
    good night
    +1
  • BigOnYa @ BigOnYa:
    At least you have some fast speeds. What a drag that used to be, I remb downloading 1 pic back in the day, and seeing line by line show
    +1
  • BigOnYa @ BigOnYa:
    Nighty night.
  • BigOnYa @ BigOnYa:
    Or worse, you downloading something, and someone calls your phone and interupts the download, good ole AOL. Of course that's before most you guys even were born yet.
  • Psionic Roshambo @ Psionic Roshambo:
    Lol I think my first modem was 48K but it had some sort of firmware or software update that let me get 56K
    +1
  • Psionic Roshambo @ Psionic Roshambo:
    I had EarthLink lol
  • Psionic Roshambo @ Psionic Roshambo:
    A bunch of NetZero accounts that I used for things... Lol
    +1
  • Psionic Roshambo @ Psionic Roshambo:
    So glad I'm not in prison lol
  • BigOnYa @ BigOnYa:
    Yea marriage is a bitch sometimes...
  • Psionic Roshambo @ Psionic Roshambo:
    I legit think they passed the cyber terrorism laws from some of my hmm pranks lol
  • Psionic Roshambo @ Psionic Roshambo:
    I knocked the east coast backbone of EarthLink offline for like 6 hours one time, was on the news and everything well I mean I wasn't on the news.... Just they where having "technical difficulties" lol
    +1
  • Psionic Roshambo @ Psionic Roshambo:
    Was just one single custom packet. I miss when Internet security was an afterthought lol almost all modems and network hardware operated in promiscuous mode.
  • Psionic Roshambo @ Psionic Roshambo:
    Now these days they do sanity checks.... The source IP can't also be the destination IP lol
    Psionic Roshambo @ Psionic Roshambo: Now these days they do sanity checks.... The source IP can't also be the destination IP lol