Jump to content
Sign in to follow this  
masteries

Metal Slug (Mission 1) for Atari STE - Complete

Recommended Posts

Posted (edited)

 

This is the definitive Metal Slug (Mission 1) port for Atari STE

 


Features:


-Complementary Dithering colour, aprox. 70 colors on screen; requires more than 40 frames per second.

As emulator, Steem in the recommended one, and active the Vsync


-652 KB of digital sampled audio, 3 voices mixed at 12.5 KHz
Music is also based on sampled audio loops at same frequency


-Around 3 MB of graphics data


-50 frames per second gameplay, few slowdowns


-Hardware requirements: Atari STE @ 8 MHz CPU + a hard disk device


https://www.youtube.com/watch?v=gyRBcTnn-5M

 


Download:

 


https://www.gp32spain.com/foros/attachment.php?attachmentid=54610&d=1626102535

 

 

 

Also, if you are interested on a high performance low cost hard disk device for your Atari ST/E,

you can acquire one of my manufactured units from this same Atari Age forum:

 

 


Enjoy it!

 

Edited by masteries
  • Like 11
  • Thanks 1

Share this post


Link to post
Share on other sites

That looks amazing. Never thought I'd see a reasonable port of that game to the STE.

Share this post


Link to post
Share on other sites

This is so great that the STe is getting some well written software that exploits the machines capabilties.

 

BRAVO!

Share this post


Link to post
Share on other sites

Does it work with joystick?

I am able to use keyboard only.

Share this post


Link to post
Share on other sites
10 hours ago, Philsan said:

Does it work with joystick?

I am able to use keyboard only.

 

Joystick is not enabled yet;

I am aware that real STE keyboard is limited to only two keys at a time,

 

  • Thanks 1

Share this post


Link to post
Share on other sites
On 7/16/2021 at 10:07 PM, Paul Westphal said:

This is so great that the STe is getting some well written software that exploits the machines capabilties.

 

BRAVO!

 

Thanks Paul!

 

 

Share this post


Link to post
Share on other sites

Indeed this looks great (lot of colors on screen at once) and is very fast. I tried in Steem, and must say that missed joystick support, and will miss it more on real Atari STE 🙂 

I hope you can find DOCs about IKBD chip mode settings, status packets.  Like IKBD $14 is Set joystick event reporting. Status packet:

header is $FE for joystick 0 (mouse port), $FF for j. 1 (preferred). Then status of buttons - bit 7 fire, bits 0-3 for four directions.

Really not hard.  Keep up good work ..

Share this post


Link to post
Share on other sites
6 hours ago, ParanoidLittleMan said:

Indeed this looks great (lot of colors on screen at once) and is very fast. I tried in Steem, and must say that missed joystick support, and will miss it more on real Atari STE 🙂 

I hope you can find DOCs about IKBD chip mode settings, status packets.  Like IKBD $14 is Set joystick event reporting. Status packet:

header is $FE for joystick 0 (mouse port), $FF for j. 1 (preferred). Then status of buttons - bit 7 fire, bits 0-3 for four directions.

Really not hard.  Keep up good work ..

 

Yes, as you pointed, joystick is very important

 

I have some directions from DML about joystick usage. 

 

As well, button 0 and button 1 are necessary, I planned a third button via read up and down at same time; for grenade usage... and other uses for in development games.

 

The intention is to maintain compatibility with standard ST and do not use extended joystick port on STE and Falcon

 

  • Like 1

Share this post


Link to post
Share on other sites
On 7/18/2021 at 6:21 PM, masteries said:

 

The intention is to maintain compatibility with standard ST and do not use extended joystick port on STE and Falcon

 

Ah ok, that makes sense of course. I just wanted to ask for Jagpad support, as the handling with it's three fire buttons would be much easier. But joystick would be fine, too! 😉

 

Btw. I just did a fullscreen video capture of your masterpiece (with much crappier gameplay than you showed, lol!):

 

https://youtu.be/oKJ7lJ3yC_0

Share this post


Link to post
Share on other sites

What do people think of constructing/modifying a megadrive 3 button controller for 4 button usage on an ST (new games only)?

 

Pinout as follows (from http://info-coach.fr/atari/hardware/interfaces.php#ATARI_MOUSE_JOYSTICK_INTERFACE):

db9m.png

db9m.png

Mouse/Joystick - Port 0 Joystick - Port 1
1 - Up / XB 1 - Up
2 - Down / XA 2 - Down
3 - Left / YA 3 - Left
4 - Right / YB 4 - Right
5 - NC 5 - Reserved
6 - Fire / Left Button 6 - Fire Button
7 - +5VDC 7 - +5VDC
8 - Ground 8 - Ground
9 - Joy 1 Fire/Right Button 9 - NC

 

Port0 has two available buttons, as does Port1 if we use the reserved line. The other two buttons would be sensing Down+Up and Left+Right simultaneously.

As such, the megadrive controller shell + a modified board from an atari joystick should work.

Not sure exactly how the ACIA works, hardware or programmatically, but a new joystick standard for new games would open up a lot playability-wise.

 

Btw, amazing work on the game, it's great to see what the framework (and the STE) can do!

 

 

Share this post


Link to post
Share on other sites
39 minutes ago, alexisread said:

What do people think of constructing/modifying a megadrive 3 button controller for 4 button usage on an ST (new games only)?

 

Pinout as follows (from http://info-coach.fr/atari/hardware/interfaces.php#ATARI_MOUSE_JOYSTICK_INTERFACE):

db9m.png

db9m.png

Mouse/Joystick - Port 0 Joystick - Port 1
1 - Up / XB 1 - Up
2 - Down / XA 2 - Down
3 - Left / YA 3 - Left
4 - Right / YB 4 - Right
5 - NC 5 - Reserved
6 - Fire / Left Button 6 - Fire Button
7 - +5VDC 7 - +5VDC
8 - Ground 8 - Ground
9 - Joy 1 Fire/Right Button 9 - NC

 

Port0 has two available buttons, as does Port1 if we use the reserved line. The other two buttons would be sensing Down+Up and Left+Right simultaneously.

As such, the megadrive controller shell + a modified board from an atari joystick should work.

Not sure exactly how the ACIA works, hardware or programmatically, but a new joystick standard for new games would open up a lot playability-wise.

 

Btw, amazing work on the game, it's great to see what the framework (and the STE) can do!

 

 

I don't think so. Port 0 pin 9 is the same as port 1 pin 6. Is reserved pin 5 (port 1) routed to anything on the keyboard controller? 

Share this post


Link to post
Share on other sites

I did always wonder about the 1 joystick fire button thing. How did the Colecovision manage to get all those keypad buttons through a standard Atari joystick pin out. It seems to use a lot of logic gates based on a quick search. Presumably you could get quite a lot of possible results  if you use combinations of the pins rather than have straight left, right fire and so on using something similar on the Atari. Seems odd this was never done. You would need to read the joystick differently, but the keyboard controller is a simple CPU is it not? I suppose most software would break though.

Share this post


Link to post
Share on other sites

@Zogging Hell That's the main idea here- use the D+U and L+R joystick combinations as buttons as they mechanically can't be pressed together.

Looking closer at the schematic on the page (I should have done earlier, but..), yes the right mouse is the same as the joy1 fire, and the reserved pin 5 is connected to pin 6, so only one fire button is available per controller (port2 lines 1 and 2).

From the datasheet (https://pdf1.alldatasheet.com/datasheet-pdf/view/87405/HITACHI/HD6301V1P.html) that's the full 29 parallel lines used over the 4 ports, so there's no room for additional fire buttons.

 

So, maybe a 3 button controller using the fire button, and D+U, L+R combinations? Still better than 1 fire button, and both ports can use it. The pad would still work for every game, just don't use the 2 additional buttons.

Share this post


Link to post
Share on other sites
1 minute ago, alexisread said:

@Zogging Hell That's the main idea here- use the D+U and L+R joystick combinations as buttons as they mechanically can't be pressed together.

Looking closer at the schematic on the page (I should have done earlier, but..), yes the right mouse is the same as the joy1 fire, and the reserved pin 5 is connected to pin 6, so only one fire button is available per controller (port2 lines 1 and 2).

From the datasheet (https://pdf1.alldatasheet.com/datasheet-pdf/view/87405/HITACHI/HD6301V1P.html) that's the full 29 parallel lines used over the 4 ports, so there's no room for additional fire buttons.

 

So, maybe a 3 button controller using the fire button, and D+U, L+R combinations? Still better than 1 fire button, and both ports can use it. The pad would still work for every game, just don't use the 2 additional buttons.

I think I see what you saying, I was thinking rather than have the fire button as fire on its own in the game code, have everything remapped so fire would actually be say fire + up, then fire 2 could be fire + down, fire 3 = fire + right and so on, and then some variations on up + down and left + right and left + right + up etc as the replacements to the directions (my terrible maths suggests 20+ combinations using this method for each of the two joysticks). Obviously the joypad would have to hide this madness from the user by using logic gates to have two or more buttons pressed at once with one button press.  I understood the ikbd reported four values for directions (eight total for two players) and as well as two results for each of the fire buttons for both players (Although they are sent in two packets as far as my limited understanding goes), but hadn't taken into account any limit on the amount of results that could be transferred at once. I had lazily hoped by this method a six button joypad albeit a totally new design, could potentially being used (with the right game code). I'm probably being rather dumb but would love to understand why! :)

Sorry this is a bit off topic!

Share this post


Link to post
Share on other sites

The problem here is that (for partial remappings), say if you're jumping and shooting, then you can't tell some of the button presses - in this case, joypad U+R+fire means you couldn't tell the fire button from the U+fire and R+fire buttons.

 

The two combos I mentioned are Up+Down together, and Left+Right together which clearly you can't do in a game as that's semantically the same as standing still. From the keyboard controller though, U+D is different from not pressing a direction, so we can safely have 2 extra buttons (on each joystick) which you can press unambiguously.

 

It's not a full remapping across the 10 available input lines, just a hack so that the pad would work with normal games as well as new ones.

Share this post


Link to post
Share on other sites

Ah ok so this method would retain compatibility, makes sense really.

 

I guess with the full remapping you would have to be very careful with the use of the fire button and directions and loose all compatibility.

Share this post


Link to post
Share on other sites

As said previously, you have a very solid port that could easily be one of the ST's best games. Are there plans to include the extras from the CD-Rom versions?

Share this post


Link to post
Share on other sites

Looking at that schematic, it seems that a three-button controller for the ST is doable. However, something tells me that NC means not connected.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...