New game: Speccies 2 - for arcade hardware.

Sokurah · 9846

Offline Sokurah

  • RBP Member
  • Cray-1 Super Computer
  • *****
    • Posts: 724
    • Tardis Remakes
on: October 12, 2015, 12:30:58 pm
I've been very quiet for a long time - releases (annoyingly) aren't coming as fast as I'd like...but 've just managed to finish my first project this year - a version of Speccies 2 (which I originally made for the Spectrum 2 years ago) but this time for arcade hardware.

Specifically this will run Taito's L System arcade hardware - which is JAMMA standard - which again means that if you have the right motherboard and an EPROM burner you can have it running in a real arcade cabinet in no time. The rest of us - me included - will just have to run the game through MAME. :)

I've wanted to write something for arcade hardware for a LONG time, and this Taito board ticks all the right boxes: mainly being powerful and using a Z80 processor. ;) :) It came out pretty late in the day - just as the 16-bit arcade systems were becoming the standard, so it's pretty powerful compared to other Z80 based systems.

I chose to remake this game because it's so simple...I thought it would be a good little project to learn the new hardware, before taking on a larger project. And I do have plans for more action-y arcade games...but I have a couple of other WIPs I want to finish before I go all in. :)

The page with downloads: http://tardis.dk/wordpress/?page_id=1359

...and a couple of pictures;








Offline spacefractal

  • RBP Team Member
  • Blue Gene Super Computer
  • *****
    • Posts: 4138
Reply #1 on: October 12, 2015, 08:02:18 pm
A port from spectrum to arcade :-). Since its a arcade board, a credit function could been fun to add.... Hehe.

Of course its seen Taito L System was not random choiced, which is pretty much similar to Spectrum, so im thinks its was easier to code for (even the graphics of course is a bit different).





« Last Edit: October 12, 2015, 08:51:52 pm by spacefractal »

The Musician for the RetroBytes Portal Projects.


Offline spacefractal

  • RBP Team Member
  • Blue Gene Super Computer
  • *****
    • Posts: 4138
Reply #2 on: October 12, 2015, 08:55:34 pm
just seen the video, not played yet. Really Great music.
« Last Edit: October 12, 2015, 09:02:44 pm by spacefractal »

The Musician for the RetroBytes Portal Projects.


Offline Sokurah

  • RBP Member
  • Cray-1 Super Computer
  • *****
    • Posts: 724
    • Tardis Remakes
Reply #3 on: October 13, 2015, 11:19:29 am
A port from spectrum to arcade :-). Since its a arcade board, a credit function could been fun to add.... Hehe.

Of course its seen Taito L System was not random choiced, which is pretty much similar to Spectrum, so im thinks its was easier to code for (even the graphics of course is a bit different).

I've forgotten to write it in the documentation, but the "insert credit" function is actually used as "quit and return to menu". ;D

Yes, this system wasn't chosen completely randomly. One of the reasons is that it's using the Z80 processor - and that's what I can code.

But with hardware sprites and scrolling it is used very differently from a Spectrum. One very different thing - you don't have direct access to the screen area...you can't just draw random dots or a line or whatever. Only sprites and tiles can be drawn - nothing else, so you have to do things differently.

And the hardware has some weird peculiarities, like you can't use indexed adressing in banked RAM...and you can't write 16-bit values to banked RAM either, so if you want to draw a sprite you have to write the Xcoord as two separate 8-bit values. Weird.

Fun though.  :)



Offline headkaze

  • Administrator
  • Blue Gene Super Computer
  • **********
    • Posts: 7838
Reply #4 on: October 15, 2015, 07:13:41 am
Awesome Sokky  8)

And the hardware has some weird peculiarities, like you can't use indexed adressing in banked RAM...and you can't write 16-bit values to banked RAM either, so if you want to draw a sprite you have to write the Xcoord as two separate 8-bit values. Weird.

The GBA and NDS require 16 bit writes to its VRAM.
« Last Edit: October 15, 2015, 07:14:33 am by headkaze »



Offline flash

  • Administrator
  • Blue Gene Super Computer
  • **********
    • Posts: 13180
Reply #5 on: October 19, 2015, 01:11:01 pm
Awesome work Sokky me old mucka.

Great idea to rework for arcade hardware, it is always a boon to face new challenges and am really impressed how nicely you have pulled it off.

:)

Coding for the love of it!


Offline Sokurah

  • RBP Member
  • Cray-1 Super Computer
  • *****
    • Posts: 724
    • Tardis Remakes
Reply #6 on: October 19, 2015, 01:29:25 pm
Awesome work Sokky me old mucka.

Great idea to rework for arcade hardware, it is always a boon to face new challenges and am really impressed how nicely you have pulled it off.

:)

Thanks, it was a fun little project - but rather simple at the end of the day. The challenge certainly wasn't the game itself but the new hardware.

And even though I wrote "...but I have a couple of other WIPs I want to finish before I go all in" I have to confess that I've already started writing the editor to be used for a MUCH larger game on the same hardware. So big in fact that I'm not even sure I can fit it onto the hardware. But this editor will allow me to gauge how much space graphics and data will take up, so even if I don't start to actually code it anytime soon it's still important research. And if I decide to go "all in" with this it probably won't be finished for another year. I think I need a life. :) :)



Offline flash

  • Administrator
  • Blue Gene Super Computer
  • **********
    • Posts: 13180
Reply #7 on: October 19, 2015, 02:37:13 pm
I can imagine that the hardware is where the learning curve is. The same was the issue for coding on the Vectrex (and DS). Learning the foibles of the language is pretty much the easy part, once you have a grip on assembler, other variations are pretty easy to code with. But getting to know the hardware and what it is and isn't capable of - thats the learning experience.

p.s. You need a life ;)

Coding for the love of it!


Offline headkaze

  • Administrator
  • Blue Gene Super Computer
  • **********
    • Posts: 7838
Reply #8 on: October 20, 2015, 09:56:39 am
I can imagine that the hardware is where the learning curve is. The same was the issue for coding on the Vectrex (and DS). Learning the foibles of the language is pretty much the easy part, once you have a grip on assembler, other variations are pretty easy to code with. But getting to know the hardware and what it is and isn't capable of - thats the learning experience.

Remember dealing with VRAM on the DS? It was one of the most painful parts of coding for the DS (which we did in ARM ASM for a few games). But even coding in C++ the VRAM management on the DS can be a bit of a nightmare. Also getting streaming audio on the ARM 7 was problematic.

One thing I've never tried is coding the Z80. It just sounds like fun to me.
« Last Edit: October 20, 2015, 09:57:27 am by headkaze »



Offline sverx

  • RBP Member
  • IBM PC
  • *****
    • Posts: 516
  • "Ow!!! What's that ?!?!"
    • My NDS folder
Reply #9 on: December 23, 2015, 12:53:20 pm
One thing I've never tried is coding the Z80. It just sounds like fun to me.

It just depends on your definition of 'fun'. :D :D