Operation : PewPew! A new game for 68040 and soon... 68030

Don't know how I missed this, but luckily someone uploaded it to my BBS! :cool:

I was not expecting stereo music to come blasting from my MBP speakers when I fired it up in Basilisk II. Fantastic job so far!!
I wonder who that was? Curse that handsome devil! 😂 🙃

I actually left the sampling playback at 22050Hz but I think in a future version, to try and help with CPU cycles, I'll add a menu option to drop it to 11025Hz.
Plus.. it's Jester! Stardust Memories is such a classic. 🥳

Thanks for the kind words! :)
 
I'd forgotten that perhaps the version matters… :P I'll get 7.1 running on my SE/30 and vMac and use 5.5 to see if that helps, can't wait to try it out!

Would you be able to share on Github? I want to write a markdown editor for my own use and will share eventually.
Let me know how 7.1 behaves for you.
Now that the game is 'done' to a state that it's playable and I'm happy with, I'm starting to play with optimizing for 030 (?020?) :)

Source in next post down :)
 
Hi Everyone,

Thanks for the kind word and support on my game!
I'm glad so many people are enjoying it!
It was a lot of fun to make, learned a lot, forgot even more... 😂

I put together a little package that contains a fully commented version of the C source, as well as the full CodeWarrior PRO 4 project folder, including all libraries and resource file, and some other goodies.

Apologies now for my sense of humour in the comments... 😇

The package is zipped (by OSX) and inside you will find the .SIT files, instructions, etc.. to extract in your 68K environment.

Operation PewPew! SOURCE CODE

Any questions, comments, requests, etc.. please contact me!
Aaron/DW
Dark Systems BBS
 
I wonder who that was? Curse that handsome devil! 😂 🙃

I actually left the sampling playback at 22050Hz but I think in a future version, to try and help with CPU cycles, I'll add a menu option to drop it to 11025Hz.
Plus.. it's Jester! Stardust Memories is such a classic. 🥳

Thanks for the kind words! :)
Updated my news page - now you've hit the big-time! 😅

Screenshot 2026-01-31 at 8.50.38 AM.png
 
Last edited:
Thank you for sharing the source code. The comments are fabulous and are really going to help me learn. In a past life I made a side shooter in Java but that was so long ago and I'm not familiar with the MacToolbox. This is going to be a blast… or rather a PewPew
 
Last edited:
Thank you for sharing the source code. The comments are fabulous and are really going to help me learn. In a past life I made a side shooter in Java but that was so long ago and I'm not familiar with the MacToolbox. This is going to be a blast… or rather a PewPew
haha, sweet! and you're welcome!
Here's a LINK to a site with dozens of old school Macintosh programming textbooks in PDF format.

But, please ask anything! No guarantee it's the proper way to do something, but it worked! 😂
I thin it's awesome more people are interested in writing for this platform. So much useful life left in them! 🥳
 
Hi Everyone!

Development testing update version - 68030 👈
Pre-release 1.5.0


I made some (I think) pretty major revisions, refinements, probably errors 🙃, and changes to quite a bit of the code to try and get PewPew running fast on 68030 machines.. I think I was, at least partially, successful!

Anyone with real hardware who wants to help me test, please download this version (attached) and let me know how it plays on your machine.
Please include your system specs.

Here's a short list of some of the changes I've made
- The game window is now centred on any sized screen, instead of being tucked away in a corner (no one puts PewPew in the corner!) 🤣
- The game will detect your CPU type and adjust some settings automatically for better game play. Example: 68030, music is off, stars turned down, no screen shake or screen flash events. 68040, music blasting, 60 parallax stars, etc... I plan on expending this, but allowing the player to override the defaults.
- The ship's laser is a little fancier looking.
- The laser's bounding box is properly sized to strike enemies and not pass through the edges.
- The 16x16 sprites now use a much faster collision detection routine
- When the laser is fired, the system checks if an enemy is even 'near' the laser's path and only does collision detection checks if it's a plausible hit.
- The star field is now directly written to memory.
- The player's ship is now limited to the inside of the playing area border. No more vanishing off the ends of the screen.
- 16x16 sprites now use a directstamp16 routine, (mostly) bypassing QuickDraw. 🤞
- Found some embarrassingly inefficient code left over from early on that was duplicating (and taking up cpu cycles) tasks like collision detection, etc...

EDIT
Yes, if you look in the code in that screen shot, the variable 'partypooper' can be either 0 or 1. 0 = 68040 1 = 68030 :poop:😆

centered.png
 

Attachments

Last edited:
One more update...

CRITICAL UPDATE

666 was found in one of the compiled versions, so I'm replacing everything with this verified CLEAN version.
Good lesson to double check the free downloads of dev tools from the standard mac websites.

The game itself and the source code .SIT archives attached.

Aaron/DW
Dark Systems BBS
 

Attachments

Good lesson to double check the free downloads of dev tools from the standard mac websites.
What development tools, what version and from where?

You're saying that is where you got it from, but it might be good for us to firstly confirm that that is where your infection came from, and then we can clean it up for other people?
 
Hey, finally got around to trying this.

Unfortunately, doesn’t run past the title screen on my Color Classic II. I’ve tried all bit depths (including 1 bit) and results are identical:

View attachment IMG_6069.MOV

EDIT: System 7.6.1
 
Last edited:
What development tools, what version and from where?

You're saying that is where you got it from, but it might be good for us to firstly confirm that that is where your infection came from, and then we can clean it up for other people?
It's a good idea to scan everything on your computer with the most up to date virus checker it can handle. I use Virex on my '030 and '040 Macs, and Disinfectant on my 68000 Macs. On my OS X Macs I use ClamXAV. Be paranoid. They are out to get you.
 
It's a good idea to scan everything on your computer with the most up to date virus checker it can handle. I use Virex on my '030 and '040 Macs, and Disinfectant on my 68000 Macs. On my OS X Macs I use ClamXAV. Be paranoid. They are out to get you.
Yes, but if they actually told us what the download was, we could fix the source, rather than every single computer it is downloaded to, forever.

Doesn't mean it isn't good to check downloads, but it helps everyone if we fix the source. I'm puzzled why they haven't answered the question.
 
Well, if they're anything like me, maybe they are the source - I have my own floppy discs for Think C (and the manuals) - and I used my own media to install it. If my media were infected then only I could fix it.

That said, I have scanned my computer - and it's all clean. And I scanned my game, Innecto, and that's clean too. But don't take my word for it - if you want to play my game then you need to scan it yourself too! (Mind you, I was trying to get it to run on a 128k Mac - so the additional bloat of a viral payload would be unacceptable for reasons of optimisation if nothing else!)
 
Well, if they're anything like me, maybe they are the source - I have my own floppy discs for Think C (and the manuals) - and I used my own media to install it. If my media were infected then only I could fix it.
Nah, they explicitly blamed a "standard Mac website".

That said, I have scanned my computer - and it's all clean. And I scanned my game, Innecto, and that's clean too. But don't take my word for it - if you want to play my game then you need to scan it yourself too! (Mind you, I was trying to get it to run on a 128k Mac - so the additional bloat of a viral payload would be unacceptable for reasons of optimisation if nothing else!)
I made this for my real hardware moving forward:


It should boot most beige Macs (I haven't tested older than a 475 yet, but it should boot back to a IIci, if not back to a 4MB Plus). It will also work mounted with things back before that if they can read the hfs CD properly. As well as newer machines up to MacOS 9.2.2 if they boot from their own disk
 
Nah, they explicitly blamed a "standard Mac website".


I made this for my real hardware moving forward:


It should boot most beige Macs (I haven't tested older than a 475 yet, but it should boot back to a IIci, if not back to a 4MB Plus). It will also work mounted with things back before that if they can read the hfs CD properly. As well as newer machines up to MacOS 9.2.2 if they boot from their own disk
Back in the dark ages of the 1990s, before I became a full time software developer, I used to work for an Apple Centre* as their PowerBook repair geezer. I went to Apple's training centre in Uxbridge to learn how to service a PowerBook (although quite a lot of the time seemed to have been spent talking up QuickTime). I got a certificate and everything. More usefully, I got a set of Service Source CDs and a boot disk that sounds very similar to yours. All the tools you need to fettle an ailing Mac.

*not actually owed by Apple - these were independent businesses that had received accreditation from Apple that they were able to service and sell Apple kit reliably. It was during the time that I worked there that Apple deprecated the Apple II and we got to chuck a whole bookshelf full of manuals (including those for the /// and the Lisa). I kind of wish we hadn't now!
 
Back
Top