Mini vMac for NON-Jailbroken iOS

About Mini vMac and all other 68k emulators, including SoftMac, Executor, and MESS.

Moderators: Cat_7, Ronald P. Regensburg

Post Reply
User avatar
adespoton
Forum All-Star
Posts: 4208
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Mini vMac for NON-Jailbroken iOS

Post by adespoton »

You heard that right... now that Apple has enabled provisioning deployment profiles against your AppleID, you can build and run Mini vMac on a NON-Jailbroken iOS!

1. Run

Code: Select all

svn checkout svn://vc.namedfork.net/namedfork/minivmac4iphone/trunk
in the terminal.
2. Plug in your iOS device
3. Launch XCode 7 or later (download it from the App Store if you don't have it) and load the project.
4. Create a free Provisioning Profile
4. Update the project, linking to your provisioning profile.
5. Run. It'll automatically install the software, then immediately halt with an error.
6. Go into Settings->General->Device Management (right under iTunes Wi-Fi Sync and VPN), select your Apple ID, and enable the app. Then it can run with no issues.

[edit] Of course, after this, you need to add the appropriate ROM file, disk image, etc. just like you do anywhere else. But this will actually get the functional software on to your device.
User avatar
adespoton
Forum All-Star
Posts: 4208
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: Mini vMac for NON-Jailbroken iOS

Post by adespoton »

Hmm. I can't seem to check out the iOS sources now. Does anyone else have a copy of the source?
zydeco
Space Cadet
Posts: 7
Joined: Tue May 24, 2016 9:11 pm
Location: Stockholm, Sweden

Re: Mini vMac for NON-Jailbroken iOS

Post by zydeco »

Well, I've updated it for iOS 9, and put the sources on github this time:

https://namedfork.net/iphone/minivmac

I've also uploaded the sources to the old version for reference, some of it is used on the new one.

https://namedfork.net/minivmac4iphone

Have fun!
User avatar
adespoton
Forum All-Star
Posts: 4208
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: Mini vMac for NON-Jailbroken iOS

Post by adespoton »

Thanks! My current phone screen isn't all that much smaller than my old Mac Plus :D I'll try compiling this week and see if I can deploy to a bog-standard locked phone. Toxic Ravine and Cairo Shootout, here I come....
User avatar
adespoton
Forum All-Star
Posts: 4208
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: Mini vMac for NON-Jailbroken iOS

Post by adespoton »

Feedback time :)

first: https://flic.kr/s/aHskxcF9Xf -- Poon!

Second, I found one issue that stumped me for a bit: the filenames are case sensitive. The Plus ROM needs to be named "vMac.ROM" and not "vMac.rom" or "vmac.rom". Similarly, the disk images need to end in .dsk or .img, not .DSK or .IMG. The good news is that clicking the edit button in the file manager allows you to rename these appropriately -- I started off by using a secondary file manager, and then realized that all the file manipulation can be done right in the Mini vMac file manager! Thanks, zydeco!

One feature request: is it possible to include zlib in the compilation for a) unzipping files directly in the file manager and b) unzipping on the fly? This would enable zipped "master" disk images that get unzipped for each use and discarded when the disk is ejected.

Also, I love what you've done with the custom icon code :)
zydeco
Space Cadet
Posts: 7
Joined: Tue May 24, 2016 9:11 pm
Location: Stockholm, Sweden

Re: Mini vMac for NON-Jailbroken iOS

Post by zydeco »

Glad to know it works, I've been doing some testing myself and it seems to work on iOS 7 too with a few changes.

I'm fixing the issues with case in filenames now, I didn't want to add too many dependencies, but in this case it's probably worth it.
User avatar
adespoton
Forum All-Star
Posts: 4208
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: Mini vMac for NON-Jailbroken iOS

Post by adespoton »

I had the harebrained idea to try using a variation in here (mac II, custom screen size) but as I was preparing it to update the core files, I realized I didn't know what CPU options to use. Which values did you use to generate your source?
zydeco
Space Cadet
Posts: 7
Joined: Tue May 24, 2016 9:11 pm
Location: Stockholm, Sweden

Re: Mini vMac for NON-Jailbroken iOS

Post by zydeco »

I'm adding support for running variations from within the same app (in the bundles branch right now), by compiling all the emulation-related parts into loadable bundles, and having a UI in settings to choose from them. It will still require to relaunch the app for changes to take effect, but I think it's a good compromise.

I used the default Mac Plus for mine (CNFGGLOB.h, CNFGRAPI.h and EMCONFIG.h), I changed some of the defines to reflect features I've not implemented yet (IncludeSonyNew and IncludeSonyNameNew for example). The iOS platform-dependent-code (MYOSGLUE.m) is based on the cocoa version.
User avatar
adespoton
Forum All-Star
Posts: 4208
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: Mini vMac for NON-Jailbroken iOS

Post by adespoton »

Thanks! The bundles work great, and I've been able to create custom sized MacII windows to go fullscreen on my various iOS devices :)

I've also added a few feature requests on github -- nothing of high priority, but I figured I might as well track the "nice to have" ones.

Also, the disk1.dsk, disk2.dsk autoload namingn convention works great in your port; just thought I'd point that out :) So you can have a set of disks that autoloads/runs when you launch Mini vMac.

I've added a few more photos to my flickr share above :)
User avatar
adespoton
Forum All-Star
Posts: 4208
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: Mini vMac for NON-Jailbroken iOS

Post by adespoton »

Hey... I just noticed this in the source:

Code: Select all

 (NSArray<NSBundle*>*)emulatorBundles {
From that, it looks like you've carried over mnvm support such that I could create and load emulator bundles with specific configurations. How would that work with the current interface? Does it mean you could have multiple VMs associated with different hardware profiles?
zydeco
Space Cadet
Posts: 7
Joined: Tue May 24, 2016 9:11 pm
Location: Stockholm, Sweden

Re: Mini vMac for NON-Jailbroken iOS

Post by zydeco »

adespoton wrote:Hey... I just noticed this in the source:

Code: Select all

 (NSArray<NSBundle*>*)emulatorBundles {
From that, it looks like you've carried over mnvm support such that I could create and load emulator bundles with specific configurations. How would that work with the current interface? Does it mean you could have multiple VMs associated with different hardware profiles?
Indeed, all the code from the Mini vMac core is compiled into a framework that is loaded at runtime, in the current target there are 3, for Mac 128K, Mac Plus and Mac II, but more can be created. I have added some info about this to the project wiki on GitHub, including some steps to add new variants.
User avatar
adespoton
Forum All-Star
Posts: 4208
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: Mini vMac for NON-Jailbroken iOS

Post by adespoton »

Thanks!
Tupring
Space Cadet
Posts: 1
Joined: Sat Aug 13, 2016 5:56 am

Re: Mini vMac for NON-Jailbroken iOS

Post by Tupring »

zydeco wrote:Well, I've updated it for iOS 9, and put the sources on github this time:

https://namedfork.net/iphone/minivmac

I've also uploaded the sources to the old version for reference, some of it is used on the new one.

https://namedfork.net/minivmac4iphone

Have fun!
Still waiting to hear back from you again… How do I get the Icon to appear? Old version 1.2.2 was fine. No other version has worked for me. Tried on four different devices with different iOS versions. There's a post about this issue on Reddit as well: http://www.reddit.com/r/VintageApple/co ... _9/d5qxk2o

Image
User avatar
adespoton
Forum All-Star
Posts: 4208
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: Mini vMac for NON-Jailbroken iOS

Post by adespoton »

Try compiling and deploying it from xcode; I'm not jailbroken, but have never had the issue you describe.
User avatar
gingerbeardman
Tinkerer
Posts: 88
Joined: Mon Aug 06, 2018 2:58 pm
Location: UK
Contact:

Re: Mini vMac for NON-Jailbroken iOS

Post by gingerbeardman »

I've installed this and it works very well. Thanks!

Next I plan to add a Mac Classic variation with larger screen resolution. I tried last night but couldn't manage it. I'll try again. I wonder if it's with bundling variations for all supported systems? There aren't that many.

My only question is of there's a way to get an image from iOS Photo Album or Files app into mini vMac? Usually I use mini vMac's ImportFl but I can't figure out how to summon a file selector? ExportFl works just fine, sending to Files.
• BasiliskII on iPad Pro 12.9": Macintosh IIci 32MB + System 7.5.5 + Deneba artWORKS & UltraPaint
User avatar
adespoton
Forum All-Star
Posts: 4208
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: Mini vMac for NON-Jailbroken iOS

Post by adespoton »

I went with a Mac II variation with a screen resolution that matched my device; this will work better than doing so with a Mac Classic (which was only designed with a fixed screen resolution, even though Paul hacks around this with Mini vMac). So my Emulated Machine list includes Mac 128k, Mac II 8M, 640x480, 8M, 1024x768, Mac Plus 4M, 512x342. If you want to create a Classic variation, you'll probably want to make it 4M, 512x342 as well to start, before you start playing around with adjustments.

Images are going to be a bit tricky -- you'll need JPEGView to view any JPEG images from the host system, and I believe iOS defaults to PNG for screen captures. PNG didn't exist until 1997, and the JPEG format changed a bit between 1993 and now, so you're going to need to do some conversion prior to sending images to Mini vMac.

As far as getting stuff into the images goes, I've just stuck to using disk images to do it so far
User avatar
gingerbeardman
Tinkerer
Posts: 88
Joined: Mon Aug 06, 2018 2:58 pm
Location: UK
Contact:

Re: Mini vMac for NON-Jailbroken iOS

Post by gingerbeardman »

Since my latest message I have a double-height Mac Plus running which is fine for now. I should be able to turn the two Plus instances into Classics with more time.

So, my question: "how do I get any external file into Mini vMac iOS?"

For the vMac.ROM and DISK1.dsk you copy them into the app's file sharing folder and it sees them.

But what about a simple text file or image file that I have on my iPad (Files, iCloud Drive, Dropbox, etc)?

As I explained the usual method is to use Mini vMac's "ImportFl" native Macintosh application, but on macOS that requires use of Control+O to get a file selector to pick a file. This doesn't happen on iOS/iPadOS.

Disk images means I have to involve another computer so I'm trying to see if it can be done only using iPadOS.

(I'm not concerned about images formats, I already have a working setup for PICT/TIFF/PNG/etc on my Mini vMac on macOS and by extension my real Macintosh Classic - using Bitmap Translator)
Last edited by gingerbeardman on Thu Mar 25, 2021 11:27 pm, edited 1 time in total.
• BasiliskII on iPad Pro 12.9": Macintosh IIci 32MB + System 7.5.5 + Deneba artWORKS & UltraPaint
User avatar
gingerbeardman
Tinkerer
Posts: 88
Joined: Mon Aug 06, 2018 2:58 pm
Location: UK
Contact:

Re: Mini vMac for NON-Jailbroken iOS

Post by gingerbeardman »

Got it!

- use the share sheet

1. Mini vMac: launch ImportFl
2. iPad: Files > long press file > Share > Mini vMac
3. Mini vMac: confirm imported file details
• BasiliskII on iPad Pro 12.9": Macintosh IIci 32MB + System 7.5.5 + Deneba artWORKS & UltraPaint
User avatar
adespoton
Forum All-Star
Posts: 4208
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: Mini vMac for NON-Jailbroken iOS

Post by adespoton »

I've been wondering if we should somehow embed ImportFl into MvM4iOS itself, so that it's always running.
Post Reply