Announcing 8bit-Unity: Cross-platform SDK for 8bit games

10 posts / 0 new
Last post
8bit-Dude's picture
Offline
Last seen: 2 years 11 months ago
Joined: Oct 31 2017 - 01:46
Posts: 8
Announcing 8bit-Unity: Cross-platform SDK for 8bit games
AttachmentSize
Image icon banner-original.png41.7 KB

Hey guyz,

Last month I released [url=http://8bit-slicks.com]8bit-Slicks[/url] for the C64, Atari XL and Apple//e. It is the first [b]cross-platform online game[/b] for 8bit era computers.

While developping the game, I organized my project into a "game" part, and a "SDK" part, for future re-use. It then occured to me that other people would benefit from this base for development of cross-platform 8bit games.

So I am announcing the planned release of [url=http://8bit-unity.com]8bit-Unity[/url] in the second quarter of 2019. The SDK will contain everything to let you create simple online 8bit games in C code once, and deploy on all supported platforms easily (C64, Atari XL, Apple//e, and more in future!).

So they tuned!!!

 

 

Offline
Last seen: 8 hours 42 min ago
Joined: Jul 5 2018 - 09:44
Posts: 2538
Excellent!  Hopefully your

Excellent!  Hopefully your SDK will start a new genesis of game titles!

 

macnoyd's picture
Offline
Last seen: 19 hours 6 min ago
Joined: Oct 15 2012 - 08:59
Posts: 836
Awesome!

Looking forward to it!  Thanks for helping to keep these devices alive and interesting.

Offline
Last seen: 4 years 6 months ago
Joined: Dec 2 2013 - 16:09
Posts: 44
Interesting!   I'm curious

Interesting!   I'm curious about how you deal with the enormous hardware differences between the three platforms?  I don't know about the Atari, but the C64 has hardware sprites and a true sound chip that make it a quite a fast game machine for the day.  The Apple II sound and video hardware, on the other hand, seems designed to make every step of the process painful and slow.  Ugh... pre-shifted graphics and a flip flop for a sound chip.  Unity only works because the graphics rendering systems across the 3 target platforms work and perform very similarly.

 

A little while ago, on a whim, I decided to enter a 48 hour game jam, and to write a game for the Apple II.  I wanted to show the kids at the jam what we old-timers had to go through back in the day.  :-)  I had first decided to use a C cross compiler(Aztek), but the code produced  was absurdly slow and bloated.  I grudgingly went back to the Merlin 32 cross assembler, which actually made for quite a nice development flow.

8bit-Dude's picture
Offline
Last seen: 2 years 11 months ago
Joined: Oct 31 2017 - 01:46
Posts: 8
Thanks for your thoughtful

Thanks for your thoughtful reply TwoPaddle. I remember taking a look at Bill Buckle's Aztek code when I was implementing the DHR grfx for Apple//e. 

For 8bit-Unity, I am using CC65 with which I can mix C and Assembly code. This allows me to write critical routines such as interrupts in Assembly, and avoid excessive slowness. Here are some technical details of the Apple implementation:

  • DHR graphics, with routines for loading pre-converted bitmaps, drawing any point in any colour, and printing 40x25 chars in any paper/ink combination (16 colors each).
  • Software sprites, with automatic background redrawing and collision checking. Raw data cotains positions pre-shifted every 2 pixels. Rendering 4 sprites runs at ~15FPS (needs improving).
  • ElectricDuet music tracks, with output to speaker or mockingboard.
  • Simple SFX such as engine and bump, with output to speaker or mockingboard.
  • Game joysticks and paddles.
  • Uthernet card supports (for online play).
Offline
Last seen: 4 years 6 months ago
Joined: Dec 2 2013 - 16:09
Posts: 44
Interesting!  Major kudos to

Interesting!  Major kudos to you 8BD!  I've heard that CC65 is quicker, but never played with it.  

I'm curious about your DHR and interrupt comments.  I'm not familiar with Apple II systems beyond the standard IIe, but the II, II+, and standard IIe didn't support DHR or hardware interrupts.   Is your system for the GS, or maybe the IIe enhanced?

It sounds like you're doing something sortof similar to what Graphics Magician did for the Apple II series?  I'm sure you're familiar with the package.   The only complication, of course, was that they used pre-shifted bitmaps to keep the speed up.  When I was mucking around preparing for the game jam I also briefly considered using GM, but I didn't like having to use the original Apple II software to draw out the bitmaps.   And I was too lazy to re-write something for the PC.

I am really curious to see what you come up with.

8bit-Dude's picture
Offline
Last seen: 2 years 11 months ago
Joined: Oct 31 2017 - 01:46
Posts: 8
The interrupt comment is only

The interrupt comment is only valid for C64 and Atari at present.

As you know, on the Apple there is no clock and no interrupt, which is a right pain.

I might exploit the Mockingboard or Mouse clock in future, but it is not a priority right now.

For pre-shifting of sprites, this is done with a Python script I wrote, inspired from Bill Buckle's C code. 

Offline
Last seen: 8 hours 42 min ago
Joined: Jul 5 2018 - 09:44
Posts: 2538
Pretty much any card that has

Pretty much any card that has a 6522 on it (like the Mockingboard and many others), the Mouse card and many Clock cards can be programmed to generate an interrupt on a given interval.  Mockingboard clones are still in production, so that may be a good choice.  Unfortunately there are currently no new Mouse cards or Clock cards in production that I know of.  I've thought about what it would take to build a "reboot" clock card, but I don't think there would be enough demand to justify doing it.  For the Mouse card, I've thought about building a card with a 6520 type chip facing the Apple II bus so it looks to software like a real Apple card, but an Arduino Due emulating the 68xx controller on the card.  The advantage of that is the Due can control a USB mouse, incuding wireless mice.  There are already solutions to allow hooking a USB mouse up to an Apple Mouse Controller Card, but the card itself has availability issues, so something that didn't require any vintage hardware would be an advantage.

 

macnoyd's picture
Offline
Last seen: 19 hours 6 min ago
Joined: Oct 15 2012 - 08:59
Posts: 836
Actually, Ian Kim makes a nice Clock card

Actually, Ian Kim makes a nice Clock card for the Apple II, and at a reasonable price ... https://www.ebay.com/itm/282699906198/

Offline
Last seen: 8 hours 42 min ago
Joined: Jul 5 2018 - 09:44
Posts: 2538
macnoyd wrote:Actually, Ian

[quote=macnoyd]

Actually, Ian Kim makes a nice Clock card for the Apple II, and at a reasonable price ... https://www.ebay.com/itm/282699906198/

[/quote]

 

The problem is, that's a "no slot clock", and I'm pretty sure that those do not have a programmable interrupt generator/timer like cards like the CCS 7424, AE Timemaster HO, etc.

 

Log in or register to post comments