English Amiga Board


Go Back   English Amiga Board > Coders > Coders. General

 
 
Thread Tools
Old 10 November 2017, 14:50   #21
Shatterhand
Warhasneverbeensomuchfun

Shatterhand's Avatar
 
Join Date: Jun 2001
Location: Rio de Janeiro / Brazil
Age: 34
Posts: 2,646
First, trachu, you can't believe redrawing the graphics for 16 colors is halfway the work you need to make this... this is, like Britelite said, like 1% of all the work for doing something like this.

Second, yeah, you can't do a 1:1 port of Metal Slug by just watering down colors. You don't have enough ram for all graphics and even if you had it the amount of stuff moving on screen (and the parallax etc) would make the game run at like 2 frames per second.

BUT... if you cut it correctly, you could have a very close port gameplay-wise. That Gameboy color version is completely doable on an A500 with 1mb of ram (Maybe you'd have to load stuff on levels, like the PS1 version, because of the amount of BG graphics)... and that BGC version is surprisignly faithful to the arcade on in terms of level design. Something like that on Amiga without flicker and with better framerate (which I really think it's doable) would be a very good Amiga game IMO.


if I recall correctly, Metal Slug never scrolls backwards... and only scrolls vertically at level 3 (but then it has no horizontal scroll up until you reach the top of the mountain, then it goes back to only horizontal scroll), so you could use a simple scrolling routine.

And double buffer would probably be enough.


But the amount of work here is insanely huge to tackle off as a hobby job on your free time. Good luck with that, it would really be impressive to see it .
Shatterhand is offline  
AdSense AdSense  
Old 10 November 2017, 15:24   #22
coder76
Registered User

 
Join Date: Dec 2016
Location: Finland
Posts: 30
One way to get more action on screen is to use also CPU to draw on screen. Calculate how many MB/sec can you transfer to screen with DMA (sprites, blitter) and with CPU slots. I think a 68030 is needed at least to be able to output graphics to chip ram fast enough to use the max speed (about 7 MB/sec), as there is also other work that needs to be done in fast ram before graphics can be copied into chip.

Background is easy to handle cheaply with amiga even with several layers, but alot of moving objects pose problems.. maybe make an engine that is able to allocate either sprites, bobs and cpu objects, and multiplex sprites where possible, to get more reused sprite objects. On AGA sprites can't be multiplexed in xdirection with 32/64 pixel width, and due to their size, they should not be wasted for small objects. Blitter setup time means also that blitter shouldn't be used for smallest objects. Maybe smallest objects should be drawn with CPU.
coder76 is offline  
Old 10 November 2017, 15:38   #23
Megol
Registered User

Megol's Avatar
 
Join Date: May 2014
Location: inside the emulator
Posts: 246
Quote:
Originally Posted by Trachu View Post
Did you notice i already converted the graphics. You can eat half of your shorts already ;-)
You really are crazy and not in a positive way if you think converting the graphics to a lower color space is 1/2 the work. It's not 1/100 or ever 1/1000 of the work required.

Metal slug was designed for the special graphics architecture of the Neo Geo. Sprites. Lot of sprites. Lot of HUGE sprites.
Megol is offline  
Old 10 November 2017, 15:43   #24
OmegaMax
Sonic Boom

OmegaMax's Avatar
 
Join Date: Feb 2016
Location: Canada
Posts: 58
Quote:
Originally Posted by nobody View Post
LoL even Neo Geo has slow downs and it's a 2D powerhouse. If you can do that then maybe start porting Sega Saturn games too.
The Neo Geo is a power house I agree,everything onscreen is sprites.Your most likely aware of this but others might not be,the objects,backgrounds are all made of sprites.The only thing that isn't sprites is the HUD as that uses the Neo Geo fixed layer.

Last edited by OmegaMax; 10 November 2017 at 15:56.
OmegaMax is offline  
Old 10 November 2017, 18:15   #25
Trachu
Registered User
 
Join Date: Dec 2015
Location: Poland
Posts: 172
Quote:
Originally Posted by Shatterhand View Post
First, trachu, you can't believe redrawing the graphics for 16 colors is halfway the work you need to make this... this is, like Britelite said, like 1% of all the work for doing something like this.

Second, yeah, you can't do a 1:1 port of Metal Slug by just watering down colors. You don't have enough ram for all graphics and even if you had it the amount of stuff moving on screen (and the parallax etc) would make the game run at like 2 frames per second.

BUT... if you cut it correctly, you could have a very close port gameplay-wise. That Gameboy color version is completely doable on an A500 with 1mb of ram (Maybe you'd have to load stuff on levels, like the PS1 version, because of the amount of BG graphics)... and that BGC version is surprisignly faithful to the arcade on in terms of level design. Something like that on Amiga without flicker and with better framerate (which I really think it's doable) would be a very good Amiga game IMO.


if I recall correctly, Metal Slug never scrolls backwards... and only scrolls vertically at level 3 (but then it has no horizontal scroll up until you reach the top of the mountain, then it goes back to only horizontal scroll), so you could use a simple scrolling routine.

And double buffer would probably be enough.


But the amount of work here is insanely huge to tackle off as a hobby job on your free time. Good luck with that, it would really be impressive to see it .
ehh, 1000 miles journey starts with the first step and it is fun to see someone eats 1/1000th of its shorts also ;-)

Being serious, the next step would be to calculate how to fit into RAM.
This is beyond my knowledge, but this would also tell us what is doable with OCS. For example i calculated 10 frames of 80x64 sprite as using only 25kB, now i see i need additional bitplane for mask, which mean we need 33kB.
What i mean is first we run out of memory untill we run out of blitter sprite draw power...
The main character can be perfectly draw as sprite together with its bullets. We can assign 4 sprites for character and additional 4 for its 4 bullets.

HUD drawn also as sprites.

No dual playfield for sure.

The playfield area is one constant bitmap, so i guess it would have to fit all into chip memory, no???

Generally we should focus on small problemms and try to resolve them in the best way, untill we can say what is or what isnt possible on amiga.
Trachu is offline  
Old 10 November 2017, 18:52   #26
OmegaMax
Sonic Boom

OmegaMax's Avatar
 
Join Date: Feb 2016
Location: Canada
Posts: 58
Quote:
Originally Posted by Trachu View Post
ehh, 1000 miles journey starts with the first step and it is fun to see someone eats 1/1000th of its shorts also ;-)
OmegaMax is offline  
Old 10 November 2017, 18:57   #27
Shatterhand
Warhasneverbeensomuchfun

Shatterhand's Avatar
 
Join Date: Jun 2001
Location: Rio de Janeiro / Brazil
Age: 34
Posts: 2,646
Have you ever coded anything for Amiga at all? If you have no experience you should start with something waaay simpler than that.

You won't be able to store the whole level on a single bitmap (not with just 1 mb), you'd need to have a bitmap a little wider than the main screen and build it as new background enters the screen. You can blit tiles very fast and because the game only scrolls at one direction, it's very easy to do it.

If you really serious about this..... you really should, before *anything* else, build a little prototype. Make the main char walk, jump, shoot and throw grenades, for example. Then make the scroll routine. Then add one or two enemies, code their behaviour, code all needed collision detection. Then something that resembles a level design (how enemies are placed on level ?).

AFTER you are able to do all this, you should begin worrying about graphics and how much ram you'll need it... with it you should begin also coding loading gfx/sfx routines .

If you are *really* serious about this, you are really approaching it in a completely wrong way.
Shatterhand is offline  
Old 10 November 2017, 19:55   #28
saimon69
Bedroom musician

 
Join Date: Apr 2014
Location: los angeles,ca
Posts: 689
About moving a bunch of stuff is possible, look at Powder on Amiga, but you need to go the custom assembly code route and is NOT easy for experienced devs;
saimon69 is offline  
Old 10 November 2017, 20:01   #29
Shatterhand
Warhasneverbeensomuchfun

Shatterhand's Avatar
 
Join Date: Jun 2001
Location: Rio de Janeiro / Brazil
Age: 34
Posts: 2,646
Powder moves a lot of ... small things. And its not running at 50 fps It looks more like a PC Engine game than a Neo Geo one. Still impressive and, like you said, not easy to do.
Shatterhand is offline  
Old 10 November 2017, 20:20   #30
saimon69
Bedroom musician

 
Join Date: Apr 2014
Location: los angeles,ca
Posts: 689
I honestly think you want something like Metal slug then you gotta forget the 50FPS; by the way the arcade game itself did not felt full frame*, so will not make a perceptive difference.


(Among friends we said that a 50FPS was a "one frame" update, while a 25FPS a "two frames" a 12.5 a "three frames" and so on; was our jargon)
saimon69 is offline  
Old 10 November 2017, 20:30   #31
Shatterhand
Warhasneverbeensomuchfun

Shatterhand's Avatar
 
Join Date: Jun 2001
Location: Rio de Janeiro / Brazil
Age: 34
Posts: 2,646
I think Metal Slug has some stuff running at full frame while some others aren't... those blue shots from the 1st boss certainly are moving at a more slugish pace.
Shatterhand is offline  
Old 10 November 2017, 20:36   #32
coder76
Registered User

 
Join Date: Dec 2016
Location: Finland
Posts: 30
Isn't anybody here coding in asm and hacking the hardware? I thought that was always the most fun part with Amiga, and that you cant easily do with other machines.
coder76 is offline  
Old 10 November 2017, 20:48   #33
Retro1234
5150

Retro1234's Avatar
 
Join Date: Jun 2006
Location: Sycophantazia
Posts: 3,755
Metal Slug emulated on an Atari Falcon 030 (16 MHz, 14 MB RAM)
by
http://eab.abime.net/member.php?u=41716
[ Show youtube player ]
Retro1234 is offline  
Old 10 November 2017, 22:10   #34
rare_j
Zone Friend

rare_j's Avatar
 
Join Date: Apr 2005
Location: London
Posts: 752
Why not try and port it to an a1200 with 4mb fast ram?
This wasn't an unrealistic spec back in the day, and you would have some chance of creating a half decent port.
rare_j is offline  
Old 10 November 2017, 22:34   #35
Amigajay
醉拳
Amigajay's Avatar
 
Join Date: Jan 2010
Location: UK
Posts: 1,506
Quote:
Originally Posted by rare_j View Post
Why not try and port it to an a1200 with 4mb fast ram?
This wasn't an unrealistic spec back in the day, and you would have some chance of creating a half decent port.
Well for non big commercial developers sure, but then by the time devs left the stock machines with games around 95/96 they jumped straight to 030+ with fastram rather than just a stock A1200 with fastram, so may as well go 030 8mb.

Plus looking at that Falcon emulation, tbh that’s not playable at that speed, it’s like SSF2T on the A1200!
Amigajay is offline  
Old 10 November 2017, 23:01   #36
Retro1234
5150

Retro1234's Avatar
 
Join Date: Jun 2006
Location: Sycophantazia
Posts: 3,755
I dont know whats possible I think the Falcon can display more colours and more sprites (and a MMU is needed) - but a reduced colour depth might help

in this thread AnimaInCorpore gives more detail - maybe he can give us some info.
http://eab.abime.net/showthread.php?t=74095
Retro1234 is offline  
Old 11 November 2017, 02:04   #37
Old_Bob
BiO-sanitation Battalion

Old_Bob's Avatar
 
Join Date: Jun 2017
Location: Scotland
Posts: 27
Quote:
Originally Posted by Shatterhand View Post
I think Metal Slug has some stuff running at full frame while some others aren't... those blue shots from the 1st boss certainly are moving at a more slugish pace.
Playing in MAME today for a bit, it's definitely not managing everything every frame and it really chugs during the busy bits. The upside of that is that any Amiga version could maybe get away with bogging down, occasionally

B
Old_Bob is offline  
Old 11 November 2017, 09:43   #38
frank_b
Registered User
 
Join Date: Jun 2008
Location: Boston USA
Posts: 329
Quote:
Originally Posted by Trachu View Post
Gameboy Advance is still more powerful than Amiga but within its reach.
If you look at specs you could see that it has even less memory than Amiga but that is not quite correct.
MEtal Slug for this console limits sprite data which can be seen that the variety of sprites visible in single scene is reduced. Memory constrains it, but it can load dynamically more graphics data from cartridge.
Amiga 500 has only its memory which need to contain all and access for more can be done only throught slow floppy drive. That makes the task difficult.
The GBA completely outclasses the Amiga as a 2d machine. it can put 128 sprites on screen, 16 or 256 colours for each sprite with 16 palettes in 16 colour mode. 4 scrolling backgrounds with wrapping. 2 of those backgrounds can be scaled. Backgrounds can be 16 colours with 16 palettes selectable per tile or 256 colour with a different palette bank from the sprites. There are 32 rotation and scaling presets which can be assigned to any sprite. A game which pushes the GBA would be very difficult to convert to the Amiga.
frank_b is offline  
Old 11 November 2017, 12:52   #39
ross
Omnia fert aetas

ross's Avatar
 
Join Date: Mar 2017
Location: Crossing the Rubicon
Age: 47
Posts: 520
GBA, in many respects, is much more powerful than Amiga
I remember when at the time I saw the specifications (we had an NDA with Big N so I had hardware manual and how to program it) I was really surprised at what could be done with that little console. Also aided by his low resolution, you can move tons of colorful objects on the screen (with some basic modes for scaling and rotation). Anyway i only have faded memories so take with a pinch of salt

But, but.. only Amiga makes it possible, freedom and anarchy are is dogma.

An AGA machine with 030/fastmem can be a good starting point.
16 colors gfx is good for 16+16+(4/16) layers (field1+field2+sprite), with restricted screen.

Say this, I think that Britelite was optimistic

Last edited by ross; 14 November 2017 at 23:57.
ross is offline  
Old 11 November 2017, 12:55   #40
s2325
Zone Friend

s2325's Avatar
 
Join Date: Jun 2006
Location: Gargore
Age: 37
Posts: 17,748
If someone want some sprites the easiest way to rip is from JAVA mobile games as there are few versions and they are stored as .png or .gif files
s2325 is offline  
AdSense AdSense  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
Amiga 500 Rev.6A VS Amiga 500 Plus with 2MB chip and ACA 500 turrican9 support.Hardware 0 24 December 2016 03:16
Amiga 500 + slow to chip conversion green screen Nekoniaow support.Hardware 8 06 February 2015 07:04
NOT AMIGA (but 68k!) Art of Fighting Source Code for Neogeo [044] jimmy2x2x Coders. Asm / Hardware 1 24 January 2014 16:34
EAB Multi Platform League - Round 10 - Metal Slug (NeoGeo) TCD EAB's competition 33 26 July 2009 21:57
Steg the slug HOL error dlfrsilver HOL data problems 8 12 February 2008 07:41

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 06:10.


Powered by vBulletin® Version 3.8.8 Beta 1
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Page generated in 0.41574 seconds with 14 queries