<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Get Info: #basiliskii</title>
    <description>Posts tagged “basiliskii” — Blog of independent game and app developer Matt Sephton. Featuring vintage Macintosh, game development, digital artwork, Japanese esoterica, video game reviews, hacks and tips, and much more.</description>
    <link>https://blog.gingerbeardman.com/tag/basiliskii/</link>
    <atom:link href="https://blog.gingerbeardman.com/tag/basiliskii/index.xml" rel="self" type="application/rss+xml"/>
    <pubDate>Wed, 01 Jul 2026 16:09:47 +0000</pubDate>
    <lastBuildDate>Wed, 01 Jul 2026 16:09:47 +0000</lastBuildDate>
    <generator>Jekyll v4.4.1</generator>

    
      
        <item>
          <title>About the interoperability of System 7 and iOS</title>
          <description>&lt;p&gt;It never fails to amaze me how at home System 7 feels on an iPad. In fact, I’d go so far as to say I’ve never felt more capable than when I’m using it this way. &lt;em&gt;What a time to be alive!&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Still, there are times when it makes sense to lean on the features of the host device to get your job done more easily. In this post I detail common tasks that involve “crossing the streams”.&lt;/p&gt;

&lt;hr /&gt;

&lt;h2 id=&quot;file-conversions&quot;&gt;File Conversions&lt;/h2&gt;

&lt;p&gt;When transferring files to/from System 7 you’re going to need to convert them to/from suitable formats to make your life easier. Below I’ve listed my approach to the most common file types. Of course, your task may differ but I hope this gives you some useful hints.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Bitmap files&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I use &lt;a href=&quot;https://pixaki.com&quot;&gt;Pixaki&lt;/a&gt; which is a fantastic native iPad app for creating pixel art. It will load either layered Photoshop or flat PNG files, both of which are easy to generate in System 7:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;PSD: Photoshop 3.0&lt;/li&gt;
  &lt;li&gt;PNG: GraphicConverter 4.1&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Vector files&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Dealing with vector artwork produced in the Deneba apps that I use is a little trickier. We have to jump use a stepping stone or two. First we export a file that keeps the vector data—I tend to choose Illustrator 88—and then we load that into the majestic FreeHand and export an EPS from there.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;I88: Illustrator 88 (aka version 1.7)&lt;/li&gt;
  &lt;li&gt;EPS: FreeHand 3/4/5&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Textual data&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I generally type in Markdown so plain-text TXT files work just fine and require no conversion. Programming source code files such as C, Pascal, or otherwise also transfer without incident.&lt;/p&gt;

&lt;p&gt;You may have some luck with Rich Text RTF files, and also with some versions of the Microsoft Word DOC file format, to transfer formatted text both ways without having to convert it to other file formats.&lt;/p&gt;

&lt;p&gt;More exotic document formats will be trickier, but &lt;a href=&quot;https://www.libreoffice.org&quot;&gt;LibreOffice&lt;/a&gt; can open number of older formats as read-only files. Examples are: AppleWorks, ClarisWorks, Nisus Writer, WordPerfect, and more.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Tabular data&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Excel&lt;/em&gt; 4.0 has you covered for CSV, XLS and more.&lt;/p&gt;

&lt;hr /&gt;

&lt;h2 id=&quot;file-io&quot;&gt;File I/O&lt;/h2&gt;

&lt;p&gt;To get files out of System 7 simply drop them onto the File Sharing drive, open Files, and long press on the file to get a list of the available actions. The exact options that iOS will give you will depend on the apps you have installed. Don’t be a stranger over at the App Store!&lt;/p&gt;

&lt;hr /&gt;

&lt;h2 id=&quot;printing&quot;&gt;Printing&lt;/h2&gt;

&lt;p&gt;To print any type of document from System 7, I make use of software that allows printing to a PDF. It’s worth noting that the result is a bitmap PDF, not vector, but it’s good enough to get hold of a quick hardcopy.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;PDF: Acrobat PDFWriter 3.0&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Of course, if you are working with vector files you’ll have a proper scalable vector PDF file that you can print in exactly the same way.&lt;/p&gt;

&lt;p&gt;Once the PDF is in File Sharing, use iOS to print it wirelessly to an AirPrint compatible printer.&lt;/p&gt;

&lt;hr /&gt;

&lt;h2 id=&quot;multitasking&quot;&gt;Multitasking&lt;/h2&gt;

&lt;p&gt;iOS is only a swipe away, so remember that you can access iOS apps and services and swipe System 7 away at any time.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;strong&gt;Split View&lt;/strong&gt; (if you enabled it when building BasiliskII) for side-by-side browsing in Safari&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;Slide Over&lt;/strong&gt; for quick access to Files, Photos, Safari, etc.&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;Background&lt;/strong&gt; to listen to Music or Podcasts&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;Picture-in-Picture&lt;/strong&gt; for YouTube or other video playback&lt;/li&gt;
&lt;/ul&gt;

&lt;hr /&gt;

&lt;h2 id=&quot;downloading-files&quot;&gt;Downloading files&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;Safari&lt;/em&gt; will let you download classic Macintosh file formats. Even though it doesn’t know how to handle them, they will automatically be saved on your iPad in Downloads.&lt;/p&gt;

&lt;p&gt;From there you can use Files to copy the file into BasiliskII’s File Sharing folder, or use the iOS Share Sheet to copy the file into BasiliskII and simultaneously open the emulator! Very handy. I use one or the other depending on my goal.&lt;/p&gt;

&lt;p&gt;Some file formats you are likely to come across:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;strong&gt;.hqx&lt;/strong&gt;—BinHex file&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;.bin&lt;/strong&gt;—MacBinary file&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;.sit&lt;/strong&gt;—StuffIt archive&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;.cpt&lt;/strong&gt;—CompactPro archive&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;.sea&lt;/strong&gt;—self-extracting archive&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The above files can be converted or extracted using StuffIt, MindExpander, or CompactPro. You might also see files with more than one extension, in which case don’t worry the file has been treated twice for good measure, you may have to open it twice in System 7 to get it into its final/original form.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;strong&gt;.dsk&lt;/strong&gt;—disk image&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;.img&lt;/strong&gt;—disk image&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;.smi&lt;/strong&gt;—self-mounting disk image&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The above disk images can be mounted using StuffIt, ShrinkWrap, DiskCopy 6. You could also mount them in the BasiliskII interface, but I tend not to do so for disk images that I won’t have mounted for very long.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;strong&gt;.iso&lt;/strong&gt;—standard CD-ROM disk image&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;.toast&lt;/strong&gt;—proprietary CD-ROM disk image&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The above optical disk images should be mounted using the BasiliskII settings interface (shown at first launch, or whenever you shake your device). Disks mounted in this way will be available at every boot, and can only be removed by shutting down the system and restarting the emulator.&lt;/p&gt;

&lt;h3 id=&quot;related-posts&quot;&gt;Related posts&lt;/h3&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;/2021/04/17/turning-an-ipad-pro-into-the-ultimate-classic-macintosh&quot;&gt;Turning an iPad Pro into the Ultimate Classic Macintosh&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;/2021/04/21/building-basiliskii-for-ios/&quot;&gt;How to install BasiliskII on your iPad&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;/2021/04/19/automating-interactions-using-apple-events/&quot;&gt;Exploring Custom Keyboards and Automation&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;/2021/03/28/changing-the-size-of-toolbar-items-using-resedit/&quot;&gt;Optimising Macintosh app toolbars for touch&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;/2021/04/24/macintosh-drawing-software-compared/&quot;&gt;Macintosh drawing software compared&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;/2021/04/25/mixing-external-tools-across-deneba-software/&quot;&gt;Mixing External Tools across Deneba software&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;/2021/04/30/my-system-7-software-choices/&quot;&gt;My System 7 software choices&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;About the interoperability of System 7 and iOS&lt;/li&gt;
&lt;/ul&gt;
</description>
          <author>by Matt Sephton</author>
          <pubDate>Mon, 03 May 2021 00:00:00 +0000</pubDate>
          <link>https://blog.gingerbeardman.com/2021/05/03/interoperability-of-system-7-and-ios/</link>
          <guid isPermaLink="true">https://blog.gingerbeardman.com/2021/05/03/interoperability-of-system-7-and-ios/</guid>
        </item>
      
    
      
        <item>
          <title>Building BasiliskII for iOS</title>
          <description>&lt;p&gt;I’ve had numerous requests for a guide to building BasiliskII on iOS. Let me know of anything is unclear or would benefit from more details!&lt;/p&gt;

&lt;p&gt;February 2024: Updated for building with Xcode 15.2 on macOS 14.3 to iOS 17.3. YMMV.&lt;/p&gt;

&lt;h2 id=&quot;building&quot;&gt;Building&lt;/h2&gt;

&lt;ol&gt;
  &lt;li&gt;Install &lt;a href=&quot;https://apps.apple.com/gb/app/xcode/id497799835?mt=12&quot;&gt;Xcode from Mac App Store&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;Clone &lt;a href=&quot;https://github.com/zydeco/macemu/tree/ios/BasiliskII/src/iOS&quot;&gt;project source from GitHub&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;Switch to the &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;ios&lt;/code&gt; branch&lt;/li&gt;
  &lt;li&gt;Open .xcodeproj file&lt;/li&gt;
  &lt;li&gt;Set &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;Product &amp;gt; Destination&lt;/code&gt; to point to your device&lt;/li&gt;
  &lt;li&gt;Run&lt;/li&gt;
&lt;/ol&gt;

&lt;hr /&gt;

&lt;h2 id=&quot;optional-changes&quot;&gt;Optional Changes&lt;/h2&gt;

&lt;p&gt;These are changes I made that give a better experience on my specific iPad.&lt;/p&gt;

&lt;h3 id=&quot;adding-chunky-screen-resolutions&quot;&gt;Adding chunky screen resolutions&lt;/h3&gt;

&lt;p&gt;I added chunky “half resolution” screen modes to increase the size of user interface elements so that buttons, menu items and so on are all around the 44pt recommended in the Apple iOS HIG.&lt;/p&gt;

&lt;p&gt;For iPad Pro 12.9” these changes were:&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;[self addVideoMode:CGSizeMake(512, 496) to:videoModes]; // portrait minus keyboard
[self addVideoMode:CGSizeMake(512, 672) to:videoModes]; // portrait &quot;full&quot; screen
[self addVideoMode:CGSizeMake(683, 502) to:videoModes]; // landscape &quot;full&quot; screen
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Enter those after &lt;a href=&quot;https://github.com/zydeco/macemu/blob/9b90ebad780f35afb9f0001109bdca9c7e1cb478/BasiliskII/src/iOS/BasiliskII/B2ScreenView.mm#L56-L61&quot;&gt;line 61 in file B2ScreenView.mm&lt;/a&gt;&lt;/p&gt;

&lt;h3 id=&quot;disabling-graphics-smoothing&quot;&gt;Disabling graphics smoothing&lt;/h3&gt;

&lt;p&gt;My personal preference is to disable filtering/smoothing on all graphics scaling, but only because I’ve dialled in resolutions that fit exactly so there will be no scaling happening anyway:&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;NSString *filter = kCAFilterNearest;
videoLayer.magnificationFilter = filter;
videoLayer.minificationFilter = filter;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Make this change at &lt;a href=&quot;https://github.com/zydeco/macemu/blob/9b90ebad780f35afb9f0001109bdca9c7e1cb478/BasiliskII/src/iOS/BasiliskII/B2ScreenView.mm#L108&quot;&gt;line 108 in file B2ScreenView.mm&lt;/a&gt;&lt;/p&gt;

&lt;h3 id=&quot;custom-keyboard-layouts&quot;&gt;Custom Keyboard Layouts&lt;/h3&gt;

&lt;p&gt;These are defined in JSON and &lt;a href=&quot;https://github.com/zydeco/macemu/tree/ios/BasiliskII/src/iOS/Keyboard%20Layouts&quot;&gt;compiled&lt;/a&gt; to a custom format:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/zydeco/macemu/tree/ios/BasiliskII/src/iOS/BasiliskII/Keyboard%20Layouts&quot;&gt;source file location on GitHub&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;several regional layouts are already provided&lt;/li&gt;
  &lt;li&gt;you don’t have to make your own!&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href=&quot;https://github.com/gingerbeardman/artworks-keyboard&quot;&gt;Here’s one that I made&lt;/a&gt;, based on the British layout, for use with Deneba artWORKS/UltraPaint. To install it you should copy the file &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;artWORKS.nfkeyboardlayout&lt;/code&gt; to BasiliskII’s &lt;em&gt;Keyboard Layout&lt;/em&gt; folder using the Files app on your iPad.&lt;/p&gt;

&lt;h3 id=&quot;enable-split-view-support&quot;&gt;Enable Split View Support&lt;/h3&gt;

&lt;p&gt;This can be enabled by changing &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;BasiliskII-Info.plist&lt;/code&gt;: &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;UIRequiresFullScreen&lt;/code&gt; should be &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;false&lt;/code&gt; in &lt;a href=&quot;https://github.com/zydeco/macemu/blob/ios/BasiliskII/src/iOS/BasiliskII/BasiliskII-Info.plist#L114&quot;&gt;BasiliskII-Info.plist&lt;/a&gt; but be wary of the following problem:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;the very top of the screen (where you’d expect the iOS status bar to be, and where part of the System 7 menu bar is) will become unresponsive to touch due to the Slide Over indicator&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This would need to be managed/avoided by the screen layout of BasiliskII, but when I attempted this it raised more issues.&lt;/p&gt;

&lt;p&gt;However, you can still use Slide Over to position Safari, Files, etc. along the edge of your screen.&lt;/p&gt;

&lt;hr /&gt;

&lt;h2 id=&quot;notes&quot;&gt;Notes&lt;/h2&gt;

&lt;p&gt;There are additional capabilities that come with the emulator integration. I go further into these, and more besides, in a additional posts listed at the bottom of the page.&lt;/p&gt;

&lt;h3 id=&quot;keyboard&quot;&gt;Keyboard&lt;/h3&gt;

&lt;ul&gt;
  &lt;li&gt;Swipe up/down with two fingers to show/hide the on-screen keyboard&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&quot;settings&quot;&gt;Settings&lt;/h3&gt;

&lt;ul&gt;
  &lt;li&gt;Spread 4 or 5 fingers to show the &lt;em&gt;BasiliskII Settings&lt;/em&gt; pop-up&lt;/li&gt;
  &lt;li&gt;Tap outside of the &lt;em&gt;BasiliskII Settings&lt;/em&gt; pop-up to hide it&lt;/li&gt;
  &lt;li&gt;Settings can also be invoked through the app menu, long press the app icon&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&quot;custom-screen-size&quot;&gt;Custom screen size&lt;/h3&gt;

&lt;ul&gt;
  &lt;li&gt;Pinch with 2 fingers to dynamically resize screen&lt;/li&gt;
  &lt;li&gt;Separate tracking for horizontal and vertical resizing&lt;/li&gt;
  &lt;li&gt;Double-tap for full size screen&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&quot;file-sharing&quot;&gt;File Sharing&lt;/h3&gt;

&lt;p&gt;A drive appears on the desktop that is mapped to the iOS file sharing folder of the app.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;You can use Files to transfer files into or out of the emulated machine&lt;/li&gt;
  &lt;li&gt;Share Sheet also works for getting files into the emulated machine&lt;/li&gt;
  &lt;li&gt;You can organise the files into folders using the Files app&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&quot;apple-pencil&quot;&gt;Apple Pencil&lt;/h3&gt;

&lt;p&gt;This is supported the same way as regular touch so it acts as a mouse. Drawing works well and is very responsive, even at lower Hz.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Palm rejection is missing&lt;/li&gt;
  &lt;li&gt;Pressure sensitivity is missing&lt;/li&gt;
  &lt;li&gt;Multi touch seems to be missing&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&quot;related-posts&quot;&gt;Related posts&lt;/h3&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;/2021/04/17/turning-an-ipad-pro-into-the-ultimate-classic-macintosh&quot;&gt;Turning an iPad Pro into the Ultimate Classic Macintosh&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;How to install BasiliskII on your iPad&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;/2021/04/19/automating-interactions-using-apple-events/&quot;&gt;Exploring Custom Keyboards and Automation&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;/2021/03/28/changing-the-size-of-toolbar-items-using-resedit/&quot;&gt;Optimising Macintosh app toolbars for touch&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;/2021/04/24/macintosh-drawing-software-compared/&quot;&gt;Macintosh drawing software compared&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;/2021/04/25/mixing-external-tools-across-deneba-software/&quot;&gt;Mixing External Tools across Deneba software&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;/2021/04/30/my-system-7-software-choices/&quot;&gt;My System 7 software choices&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;/2021/05/03/interoperability-of-system-7-and-ios/&quot;&gt;About the interoperability of System 7 and iOS&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
          <author>by Matt Sephton</author>
          <pubDate>Wed, 21 Apr 2021 00:00:00 +0000</pubDate>
          <link>https://blog.gingerbeardman.com/2021/04/21/building-basiliskii-for-ios/</link>
          <guid isPermaLink="true">https://blog.gingerbeardman.com/2021/04/21/building-basiliskii-for-ios/</guid>
        </item>
      
    
      
        <item>
          <title>Turning an iPad Pro into the Ultimate Classic Macintosh</title>
          <description>&lt;p&gt;I’ve started work on the next in my &lt;a href=&quot;/tag/1bitwoodblocks/&quot;&gt;1-bit Woodblocks&lt;/a&gt; series: “Tekagami” (Ito Shinsui’s “Hand Mirror”). So it’s a good time to talk about how I turned an iPad Pro into the ultimate Classic Macintosh.&lt;/p&gt;

&lt;p class=&quot;tofigure&quot;&gt;&lt;img src=&quot;https://cdn.gingerbeardman.com/images/posts/ultimate-classic-macintosh-1.jpg&quot; alt=&quot;JPG&quot; title=&quot;One of my drawings in Deneba UltraPaint on System 7, running in a Macintosh emulator on an iPad Pro&quot; /&gt;&lt;/p&gt;

&lt;h2 id=&quot;emulators&quot;&gt;Emulators&lt;/h2&gt;

&lt;p&gt;Both Macintosh emulators available on iOS we’re ported by &lt;a href=&quot;https://Twitter.com/maczydeco&quot; title=&quot;@maczydeco&quot;&gt;@maczydeco&lt;/a&gt; who has done an amazing job making them feel truly at home on iOS. Many thanks! They need to be built from source using Xcode but it’s a pretty straight forward process.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Mini vMac&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Supports System 1.1 to 7.5.5&lt;/li&gt;
  &lt;li&gt;Limited RAM and CPU emulation&lt;/li&gt;
  &lt;li&gt;File Sharing via bespoke method&lt;/li&gt;
  &lt;li&gt;No dynamic screen resolution changing&lt;/li&gt;
  &lt;li&gt;Odd interface using Control key shortcuts&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/zydeco/minivmac4ios&quot;&gt;Source code&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;BasiliskII&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Supports System 7.0 to 8.1&lt;/li&gt;
  &lt;li&gt;Advanced RAM and CPU emulation&lt;/li&gt;
  &lt;li&gt;File Sharing via mapped folder&lt;/li&gt;
  &lt;li&gt;Dynamic screen resolutions through Monitors control panel, or automation&lt;/li&gt;
  &lt;li&gt;Native iOS interface for settings panel, negating all the issues with the desktop GUI&lt;/li&gt;
  &lt;li&gt;We have a winner!&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/zydeco/macemu/wiki/BasiliskII-for-iOS&quot;&gt;Source code&lt;/a&gt; (use the &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;ios&lt;/code&gt; branch)&lt;/li&gt;
&lt;/ul&gt;

&lt;h2 id=&quot;file-sharing&quot;&gt;File Sharing&lt;/h2&gt;

&lt;p&gt;This works a treat in both emulators, but the experience is better in BasiliskII.&lt;/p&gt;

&lt;p&gt;With Mini vMac you need to run a special file import app, and then whilst it’s open use iOS Share Sheet to send a file to Mini vMac. These extra steps are just enough friction to make the emulator annoying to use.&lt;/p&gt;

&lt;p&gt;With BasiliskII things are easier as it has a drive mapped to the app’s file sharing folder. You can use the Share Sheet in the same way as Mini vMac, but you can also simply copy/move a file to the BasiliskII folder and it will be accessible inside the emulator. The only gotcha with this approach is that you’re best moving the file to the emulated system’s main disk drive otherwise you’ll encounter various oddities with certain apps that don’t know how to cope with files located on this type of drive.&lt;/p&gt;

&lt;h2 id=&quot;screen-resolutions&quot;&gt;Screen Resolutions&lt;/h2&gt;

&lt;p&gt;The original Macintosh had a native screen resolution of 512×342.&lt;/p&gt;

&lt;p&gt;Conceptually, the iPad has a logical screen resolution of 1024×768, which when running in pixel doubled mode equates to 512×384. A pretty good match. Specifically, the native resolution varies according to the model of iPad or iPhone you are using.&lt;/p&gt;

&lt;p&gt;I use an iPad Pro 12.9” which has a native resolution of 2732×2048, pixel doubled that means 1366×1024, and pixel quadrupled 683×512. Targeting this ballpark of resolution means user interface elements will be around the &lt;a href=&quot;https://developer.apple.com/design/human-interface-guidelines/ios/visual-design/adaptivity-and-layout/&quot;&gt;magic 44pt tappable area&lt;/a&gt;, so that fingertip interactions are accurate, predictable and enjoyable.&lt;/p&gt;

&lt;p&gt;Of course the iPad can flip between landscape and portrait orientations on demand, which means BasiliskII supporting the Monitors control panel is a big win.&lt;/p&gt;

&lt;p&gt;So I added a bunch of custom resolutions to the BasiliskII soure code to add support for both pixel-doubled and pixel-quadrupled resolutions, in both portrait and landscape, with and without room for the software keyboard. I can switch between these resolutions with keyboard shortcuts. Which leads nicely on to…&lt;/p&gt;

&lt;h2 id=&quot;custom-keyboards&quot;&gt;Custom Keyboards&lt;/h2&gt;

&lt;p&gt;Both emulators share the same software keyboard mechanism. The keyboard layouts are user-editable as JSON and &lt;a href=&quot;https://github.com/zydeco/macemu/tree/ios/BasiliskII/src/iOS/Keyboard%20Layouts&quot;&gt;compiled&lt;/a&gt; into a custom format.&lt;/p&gt;

&lt;p&gt;So I put together a &lt;a href=&quot;https://github.com/gingerbeardman/artworks-keyboard&quot;&gt;custom keyboard layout&lt;/a&gt; that can be used in either emulator that gives me quick thumb access to tools and shortcuts in my most used apps: artWORKS and UltraPaint. It works for both apps as they are closely related, sharing a lot of code and resources.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;https://cdn.gingerbeardman.com/images/posts/ultimate-classic-macintosh-2.png&quot; alt=&quot;PNG&quot; /&gt;&lt;/p&gt;

&lt;p&gt;With this keyboard layout I’m not only relabelling the function keys, but also replacing some key codes to reposition keys for my own purposes. The apps don’t respond to function keys so I use macros and Apple Events to get things to work &lt;a href=&quot;/2021/04/19/automating-interactions-using-apple-events/&quot;&gt;as detailed in another post&lt;/a&gt;.&lt;/p&gt;

&lt;h2 id=&quot;how-does-the-experience-compare-to-a-real-macintosh&quot;&gt;How does the experience compare to a real Macintosh?&lt;/h2&gt;

&lt;p&gt;The most important aspect of this setup is that it runs System 7 and the various apps I use. That is the core of my classic Macintosh experience and the goal I had in mind. The hardware running System 7 is merely a conduit.&lt;/p&gt;

&lt;p&gt;That said, the iPad Pro is more portable, reliable and capable than my real Macintosh. That’s 30 years of hardware progress for you.&lt;/p&gt;

&lt;p&gt;The iPad’s display in particular is a huge differentiator—it can assume so many different resolutions it should be thought of as a collection of displays rather than just a single one.&lt;/p&gt;

&lt;p&gt;Apple Pencil is very similar in feel to my Wacom ArtPad II, but with the single huge improvement that you’re drawing directly on the screen. Drawing with an Apple Pencil on System 7 is every bit as good as drawing in a native iPad app.&lt;/p&gt;

&lt;p&gt;iOS is only a swipe away: download classic software using a modern web browser like Safari, expand archives more quickly with Files or Documents, watch videos picture-in-picture, search your Inside Macintosh PDFs in Books, listen to streaming music, and so many other things that aren’t doable (or at least are extremely difficult to do) on a real classic Macintosh.&lt;/p&gt;

&lt;p&gt;Bluetooth keyboards just work. The new/recent mouse pointer support in iOS also works. You could even plug the iPad into an external display to go full circle back to a desktop computer.&lt;/p&gt;

&lt;p&gt;This setup gives me the best of both old and new worlds, and that’s why I refer to it as the Ultimate Classic Macintosh.&lt;/p&gt;

&lt;h3 id=&quot;related-posts&quot;&gt;Related posts&lt;/h3&gt;

&lt;ul&gt;
  &lt;li&gt;Turning an iPad Pro into the Ultimate Classic Macintosh&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;/2021/04/21/building-basiliskii-for-ios/&quot;&gt;How to install BasiliskII on your iPad&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;/2021/04/19/automating-interactions-using-apple-events/&quot;&gt;Exploring Custom Keyboards and Automation&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;/2021/03/28/changing-the-size-of-toolbar-items-using-resedit/&quot;&gt;Optimising Macintosh app toolbars for touch&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;/2021/04/24/macintosh-drawing-software-compared/&quot;&gt;Macintosh drawing software compared&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;/2021/04/25/mixing-external-tools-across-deneba-software/&quot;&gt;Mixing External Tools across Deneba software&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;/2021/04/30/my-system-7-software-choices/&quot;&gt;My System 7 software choices&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;/2021/05/03/interoperability-of-system-7-and-ios/&quot;&gt;About the interoperability of System 7 and iOS&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&quot;elsewhere&quot;&gt;Elsewhere&lt;/h3&gt;

&lt;ul&gt;
  &lt;li&gt;2021-03-29—&lt;a href=&quot;https://www.macobserver.com/cool-stuff-found/emulating-mac-plus-ios/&quot;&gt;The Mac Observer&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;2021-04-18—&lt;a href=&quot;https://news.ycombinator.com/item?id=26854990&quot;&gt;Hacker News&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;2021-04-19—&lt;a href=&quot;https://boingboing.net/2021/04/19/ipad-pro-turned-into-the-best-classic-mac-there-ever-was.html&quot;&gt;Boing Boing&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;2021-04-19—&lt;a href=&quot;https://www.idownloadblog.com/2021/04/19/ipad-pro-classic-macintosh-emulator/&quot;&gt;iDownloadBlog&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;2021-04-19—&lt;a href=&quot;https://www.loopinsight.com/2021/04/19/turning-an-ipad-pro-into-the-ultimate-classic-macintosh/&quot;&gt;The Loop&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;2021-04-22—&lt;a href=&quot;https://www.fredzone.org/et-si-vous-transformiez-votre-ipad-en-macintosh-portable-2828&quot;&gt;FredZone&lt;/a&gt; (in French)&lt;/li&gt;
  &lt;li&gt;2021-04-23—&lt;a href=&quot;https://gizmodo.com/this-artist-turned-their-ipad-pro-into-a-classic-macint-1846749495&quot;&gt;Gizmodo&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;2021-04-23—&lt;a href=&quot;https://pxlnv.com/linklog/classic-macintosh-painting/&quot;&gt;Pixel Envy&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;2021-04-26—&lt;a href=&quot;https://www.igen.fr/ipad/2021/04/un-ipad-pro-sous-systeme-7-pour-dessiner-en-noir-et-blanc-122071&quot;&gt;iGeneration&lt;/a&gt; (in French)&lt;/li&gt;
&lt;/ul&gt;
</description>
          <author>by Matt Sephton</author>
          <pubDate>Sat, 17 Apr 2021 00:00:00 +0000</pubDate>
          <link>https://blog.gingerbeardman.com/2021/04/17/turning-an-ipad-pro-into-the-ultimate-classic-macintosh/</link>
          <guid isPermaLink="true">https://blog.gingerbeardman.com/2021/04/17/turning-an-ipad-pro-into-the-ultimate-classic-macintosh/</guid>
        </item>
      
    

  </channel>
</rss>
