• Updated 2023-07-12: Hello, Guest! Welcome back, and be sure to check out this follow-up post about our outage a week or so ago.

Retro68, the missing link for me

Mu0n

Well-known member
Hey all,
I've subscribed to the retrochallenge of next month (in a mere 2 days) and before I get started, the lure of using retro68 has made itself manifest to me again.

Caveat: I'm not a professional programmer, but I started around 8 years old and I'm 43 now, to give you a vague idea of where I'm at. My friends in high school were surprised I didn't go study computer science in college, but something else had caught my interests (physics).

More than ever, I'm very tuned to using a version control system (git). I've poured over a thousand hours in a java project since 2017, a miniatures game based on Star Wars called X-Wing. It's for a board games java engine platform called Vassal. Board games can be simulated on it with the use of an editor. In principle, you can do 0 code inside your module and just use its editor, but injecting custom java routines has made the module incredibly feature rich and its user base is very happy.

What made me take pause in using retro68 is twofold:
1) I very much hate switching tools. To my non-professional programmer mind, there's an ocean of possibilities in how to prep yourself up with tools, checks, build engines, scripts, etc that it physically disgusts me to read walls of text about them and not getting a clear sense that I should adopt them. Once I get used to something, I absolutely latch to it.

2) I got the general sense that when retro68 says it supports 'MacOS', it was generally speaking about at least System 7.something, once the drivers matured across machines past the Classic. I was not 100% convinced I could use it to target System 4-6, Mac Plus or below. Maybe I'm wrong! This is where I could use an intervention.

My current tools: develop in Basilisk II (PC) under System 7.5, using Symantec Think C 6, target 68000 macs and/or mini-vMac or above. I'm happy staying at or above System 4.

I'm willing to adapt the Mac II variant of mini-vMac as a dev AND development tool, but I need reassurances that the traps library it uses to compile and build the mac application is one that's compatible with at least a real Mac Plus. I would love to dump my projects on github with a gradle build script or something similar (ugh learning new scripts!)
 

tanuki65

Well-known member
Disclaimer: I've never written an app with Retro68 (I prefer to work in more modern languages); this post is basically speculation based off of my interpretation of the documentation.

2) I got the general sense that when retro68 says it supports 'MacOS', it was generally speaking about at least System 7.something, once the drivers matured across machines past the Classic. I was not 100% convinced I could use it to target System 4-6, Mac Plus or below. Maybe I'm wrong! This is where I could use an intervention.
Retro68's GitHub readme explicitly says
A GCC-based cross-compilation environment for 68K and PowerPC Macs. Why? Because there is no decent C++17 Compiler targeting Apple's System 6. If that's not a sufficient reason for you, I'm sure you will find something more useful elsewhere.
The bolding is my own, but it seems to at least target System 6 (and I don't know why you'd target System 6 without supporting 68000s, since most 020s and 030s are running 7.x). I don't know about Systems 4 and 5, though, but I believe 6.x -> 7.0.1 was one of the biggest jumps API-wise. One of the example programs, Launcher, is explicitly described as running under an environment without MultiFinder.

I would definitely suggest giving Retro68 a shot if you want to use C++, especially if you care more about the Mac Plus/SE/Classic support than the 128k/512k support. You might be able to use a subset of Retro68's APIs under System 4; who knows?
 
Top