PDA

View Full Version : MVS Homebrew Development



FinalAttack
08-07-2014, 04:53 AM
So I was looking to try my hand at making a MVS homebrew. Is the neobitz devkit still available for download? Where is a good place for resources to get a grasp on the basic framework?

Niko
08-07-2014, 08:29 AM
This may help:

https://wiki.neogeodev.org/index.php?title=Development_tools

grendelrt
08-07-2014, 09:27 AM
I noticed Jeff doesnt have his tools posted on NeoBitz anymore, I have a zip of them I found on a website a while back. I wonder if he has any updated version he would be willing to share? If not I can post the ZIP i currently have that he released a while back. I think its the version some other dude used then tried to take credit for :(

Edit: Here is a link, ill leave it up for a bit, https://www.mediafire.com/?yyg2gifij357ny4

FinalAttack
08-07-2014, 10:41 AM
Awesome thanks guys, really sucks people cant just give a guy a shout out.

Pedrobear
08-07-2014, 11:28 AM
The original archive is mirrored on the wiki https://wiki.neogeodev.org/index.php?title=Development_tools (NeoDev001.zip)

There's an additional graphics lib in development you might want to look into http://www.yaronet.com/posts.php?s=161717

ggallegos1
08-07-2014, 12:37 PM
What kind of game were you thinking of making?

aha2940
08-07-2014, 01:21 PM
A new platformer would be great. The Neo is a fine system for platformers (Magician Lord, for instance) but there are not enough of these games for the Neo.

Regards.

cdamm
08-07-2014, 01:58 PM
What kind of money were you thinking of making?

FTFY

SNKorSWM
08-08-2014, 02:59 AM
As long as it's not something like CPHD or TotC...

FinalAttack
08-08-2014, 09:26 AM
Yeah I was thinking something like metal slug with a bit of shmup mixed in.

GadgetUK
08-08-2014, 09:41 AM
I wouldn't mind developing for the neo geo as well. Will check out the links above thanks!

Xian Xi
08-08-2014, 09:20 PM
I noticed Jeff doesnt have his tools posted on NeoBitz anymore, I have a zip of them I found on a website a while back. I wonder if he has any updated version he would be willing to share? If not I can post the ZIP i currently have that he released a while back. I think its the version some other dude used then tried to take credit for :(

Edit: Here is a link, ill leave it up for a bit, https://www.mediafire.com/?yyg2gifij357ny4

He took them off the site because some guy on NGFL tried to claim it as his tools and didn't credit Jeff for all the work he put in to making them. Send Jeff an email on his site Neobitz.com, he might have some new tools to make things even easier.

SpamYouToDeath
08-10-2014, 01:16 AM
Does anyone have a decent hardware setup for booting code on a real MVS/AES? I've been looking at this for a while and have the necessary software / skills, but it looks nightmarish to get a development cart. (It's wonderful programming with something like an EverDrive - faster than starting up an emulator sometimes.)

Pedrobear
08-11-2014, 11:28 PM
There's really no off the shelf solution, testing code usually means burning and fitting a bunch of EPROM.

That's that or designing whole PCB/adapters for other kinds of memory (like PCMCIA flash cards).

In most situations you can debug better on mame anyway, it's pretty accurate and you can watch ram values etc...

NeoTurfMasta
08-12-2014, 12:10 AM
There's really no off the shelf solution, testing code usually means burning and fitting a bunch of EPROM.

That's that or designing whole PCB/adapters for other kinds of memory (like PCMCIA flash cards).

In most situations you can debug better on mame anyway, it's pretty accurate and you can watch ram values etc...

http://www.neo-geo.com/forums/showthread.php?236491-Something-I-ve-been-working-on

This is really the best option for small meg games right now. The USB loader allows MVS roms to be loaded into the CD's memory.

Pedrobear
08-12-2014, 12:22 AM
Yeah, forgot about this. Is the bios available tho or is it still in dev?

SNKorSWM
08-12-2014, 02:17 AM
IIRC Nightmare Tony released a Neo Geo Programmer's Guide. Perhaps that could be of some use.

NeoTurfMasta
08-12-2014, 08:33 AM
Yeah, forgot about this. Is the bios available tho or is it still in dev?

Not released quite yet, but its getting there.

mikew
08-12-2014, 08:46 AM
Not released quite yet, but its getting there.

Minor correction to this - the development bios is stable and has been available for some time. The NGCD Universe Bios release (which also has built in pc2neo/development features) is still under development.

When you purchase a PC2NEO development kit you receive the PC2NEO USB adapter, development bios, PC client code, and one of NeoTurfMasta's Neobiosmasta's for NGCD. Turf, have you finished testing your latest version of the NGCD NBM?

NeoTurfMasta
08-12-2014, 09:50 AM
Minor correction to this - the development bios is stable and has been available for some time. The NGCD Universe Bios release (which also has built in pc2neo/development features) is still under development.

When you purchase a PC2NEO development kit you receive the PC2NEO USB adapter, development bios, PC client code, and one of NeoTurfMasta's Neobiosmasta's for NGCD. Turf, have you finished testing your latest version of the NGCD NBM?

Yeah it works fine. I just need to do a full run, which I plan on doing this week.

Vas
09-25-2015, 06:05 PM
He took them off the site because some guy on NGFL tried to claim it as his tools and didn't credit Jeff for all the work he put in to making them. Send Jeff an email on his site Neobitz.com, he might have some new tools to make things even easier.

Xian xi this really disturbing to read I been a member there for years due to it was mostly uk based back in the day. There is basically only a handful of us who regularly visit thease days :( . Do you mind pm me the users ID if you can remeber it. I hate to have a rat in the rank's.

Xian Xi
09-25-2015, 11:01 PM
Xian xi this really disturbing to read I been a member there for years due to it was mostly uk based back in the day. There is basically only a handful of us who regularly visit thease days :( . Do you mind pm me the users ID if you can remeber it. I hate to have a rat in the rank's.

I outed him on NGFL, I remember his name being Sebastian something. He made his own homebrew shmup type game called thunder something.

HMG
09-25-2015, 11:06 PM
You mean Sebastian Mihai and Neo Thunder?

http://sebastianmihai.com/ccd/

Xian Xi
09-25-2015, 11:14 PM
You mean Sebastian Mihai and Neo Thunder?

http://sebastianmihai.com/ccd/

That's the one.

kuze
09-26-2015, 12:23 AM
That's the one.

Looks like he gives Jeff credit now at least.
http://sebastianmihai.com/main.php?t=22&n=Neo-Geo-development-Neo-Thunder

Xian Xi
09-26-2015, 10:40 PM
Looks like he gives Jeff credit now at least.
http://sebastianmihai.com/main.php?t=22&n=Neo-Geo-development-Neo-Thunder

Ha, at least he says "based" now. I remember him saying that he made some very small "adjustments" and that's when he started to claim it was his.

mikejmoffitt
10-06-2015, 05:30 PM
I've been porting Lyle in Cube Sector to Genesis / Mega Drive in C. Perhaps porting to Neo-Geo after could not be too hard, since it is the same resolution and similar resources. The graphics routines would be totally different and they would load out of ROM, rather than having VRAM, but separating that code from the game logic is not difficult.

Xian Xi
10-06-2015, 09:32 PM
I've been porting Lyle in Cube Sector to Genesis / Mega Drive in C. Perhaps porting to Neo-Geo after could not be too hard, since it is the same resolution and similar resources. The graphics routines would be totally different and they would load out of ROM, rather than having VRAM, but separating that code from the game logic is not difficult.

If possible, a port of Strider on the Neo would be cool.

Fakk2
10-06-2015, 09:42 PM
If possible, a port of Strider on the Neo would be cool.

Hell yeah! I would love to see the Neo do Strider Arcade perfect with added voice samples, cut scenes like on the PCEngine Arcade CD version, and using the Neos color pallete to make the game more vivid and more parallax scrolling would be awesome!

max 330 mega
10-06-2015, 09:58 PM
ive asked it a million times, but how would a port of Doom fair on the neo? every other console/smart appliance/anything with a screen on the planet has a port of Doom. why not neo?

Xian Xi
10-07-2015, 03:22 PM
ive asked it a million times, but how would a port of Doom fair on the neo? every other console/smart appliance/anything with a screen on the planet has a port of Doom. why not neo?

That would be cool. I think it'd be right at home with the Neo's capabilities as far as scaling, number of sprites and size of sprites.

FinalbossNYC
10-07-2015, 09:35 PM
ive asked it a million times, but how would a port of Doom fair on the neo? every other console/smart appliance/anything with a screen on the planet has a port of Doom. why not neo?


That would be cool. I think it'd be right at home with the Neo's capabilities as far as scaling, number of sprites and size of sprites.

Agreed Id love to see a Neo Port !! Like 'Gross Point Blank' in the 7-11 scene
I used to run Doom2 on my MAME cab years ago and loved it.

Fakk2
10-07-2015, 11:46 PM
That would be cool. I think it'd be right at home with the Neo's capabilities as far as scaling, number of sprites and size of sprites.

I used to ask SNK back in the day, more than once I asked why the Super Spy was not more like DOOM, and if the Neo-Geo had the capability to do a game like DOOM. Their answer was typical, "Yes, the Neo-Geo can easily do a game like DOOM, and we were able to show capabilities similar to that using the Super Spy as an example, however, games like DOOM are more suited for the Mouse and Keyboard, and PC games in general are made for that style entertainment, where as even though the Joystick that we use in our Arcade Cabinets are 8 Way, they are not necessarily as fast, nor as accurate as a Mouse is, therefore we tend to stay away from making a game like Doom on the SNK Neo-Geo Arcade system. Also, even if we made a Mouse accessory for the AES system, a game like Doom is just not what you would find in the arcade, so we have no interest in making a game exactly like that." was the answer I got IIRC. Then they basically just told me to stick to using the PC for games such as Doom.

Later down the line, once I bought the Neo Geo CD, I again asked them for a game like Doom that could possibly be a Super Spy sequel, and again I received a similar answer. The Neo-Geo is capable of doing a game like that, but due to the controllers out for the system, it just doesn't feel right nor is it "Arcade Style".

mikejmoffitt
10-08-2015, 03:09 AM
They were pulling things out of their asses. The Neo-Geo has character ROMs only for the graphics system, and no way to DMA data into the graphics bus. As Doom is a software-rendered semi-3D game, the only way to remotely achieve it would be to have a ton of strips of sprites moving about pretending to be walls. You'd hit sprite limits pretty quick if you want to show any sort of detail. To say you can't do it isn't quite correct, but the hardware is a horrible match and any Doom you have working on an MVS or AES is going to be filled with compromise.

Fakk2
10-08-2015, 04:46 AM
They were pulling things out of their asses. The Neo-Geo has character ROMs only for the graphics system, and no way to DMA data into the graphics bus. As Doom is a software-rendered semi-3D game, the only way to remotely achieve it would be to have a ton of strips of sprites moving about pretending to be walls. You'd hit sprite limits pretty quick if you want to show any sort of detail. To say you can't do it isn't quite correct, but the hardware is a horrible match and any Doom you have working on an MVS or AES is going to be filled with compromise.

Well, if the SNES was able to do it, I am quite sure that the Neo-Geo could do it. The Neo-Geo has sprite scaling hardware, and the fact that the Neo-Geo has hardware vastly superior to the SNES, except for something like, perhaps, the "Mode 7 chip", which I am sure the Neo-Geo could have emulated. This is of course just my belief, and all things considered like the fact that Doom uses nothing but 2D sprites rendered in a semi 3-D space, I believe that the Neo should be capable of pulling this off.

You have to remember that cartridge based systems can upgrade the carts themselves to work in combination with the hardware, thus pulling off things that the console was not meant to do in the first place. This is why I always loved cart based systems compared to CD Rom systems, as the CD Roms systems were stuck with whatever the hardware could do on their own, perhaps with some kind of little hardware upgrade if they made use of expansion ports which was rare.

MCF 76
10-08-2015, 06:20 AM
I found this dudes site, he is working on a version of In the Hunt for Neo, very early development now. Has background animation done and very early player sub and enemies sub. The enemies implosion is pretty impressive for an early stage. Also he made an Arkanoid style game called: Hypernoid looks pretty damn cool.

Both of these games are on his youtube channel there is a link on the site.

http://www.neohomebrew.com/

mikejmoffitt
10-09-2015, 04:02 PM
Well, if the SNES was able to do it, I am quite sure that the Neo-Geo could do it. The Neo-Geo has sprite scaling hardware, and the fact that the Neo-Geo has hardware vastly superior to the SNES, except for something like, perhaps, the "Mode 7 chip", which I am sure the Neo-Geo could have emulated. This is of course just my belief, and all things considered like the fact that Doom uses nothing but 2D sprites rendered in a semi 3-D space, I believe that the Neo should be capable of pulling this off.

You have to remember that cartridge based systems can upgrade the carts themselves to work in combination with the hardware, thus pulling off things that the console was not meant to do in the first place. This is why I always loved cart based systems compared to CD Rom systems, as the CD Roms systems were stuck with whatever the hardware could do on their own, perhaps with some kind of little hardware upgrade if they made use of expansion ports which was rare.

The Neo-Geo has sprite shrinking, and the SNES has tile graphics stored in Video RAM, while the Neo-Geo can only pull predefined tiles from its (vast) tile ROM. Doom isn't really 2D sprites in a 3D space; there is actual software rendering to a buffer going on to make it work.

You can upgrade a cartridge system, but there are limits. Having character RAM on the video bus is not impossible, but allowing the CPU to DMA information to it is a bit harder and requires more hardware.

HMG
10-09-2015, 06:07 PM
Well, if the SNES was able to do it, I am quite sure that the Neo-Geo could do it. The Neo-Geo has sprite scaling hardware, and the fact that the Neo-Geo has hardware vastly superior to the SNES, except for something like, perhaps, the "Mode 7 chip", which I am sure the Neo-Geo could have emulated. This is of course just my belief, and all things considered like the fact that Doom uses nothing but 2D sprites rendered in a semi 3-D space, I believe that the Neo should be capable of pulling this off.

You have to remember that cartridge based systems can upgrade the carts themselves to work in combination with the hardware, thus pulling off things that the console was not meant to do in the first place. This is why I always loved cart based systems compared to CD Rom systems, as the CD Roms systems were stuck with whatever the hardware could do on their own, perhaps with some kind of little hardware upgrade if they made use of expansion ports which was rare.

The SNES port of Doom was powered with the SuperFX chip, which was a 3D accelerator capable of generating polygons and otherwise rendering a picture like what mike was saying. The SNES's VRAM, DMA capabilities and SuperFX chip way outperforms the Neo Geo in a Doom-like application.

The SNES "Mode 7 chip" is just one of several video modes built into the S-PPU cores (there are two of them in the original SNES). The Mode 7 "aka Landscape effect" is very limited on stock SNES hardware, the DSP1 co-processor was put in some cartridges to make the Mode 7 functionality more effective.

You could in theory put a fast CPU and some RAM onto the CHA board in a Neo Geo game to pre-render the image for a Doom game, but that wouldn't be particularly amazing. the problem as Mike put it is the Neo Geo is really only good at filling a screen with tons of 2D graphics in a somewhat limited fashion. What it's not good at is software rendering. It's something the Genesis and SNES can do, but not the Neo Geo.

Now what the Neo Geo would be REALLY good at is a point n click adventure game, LucasArts-style.

Fakk2
10-09-2015, 09:12 PM
The SNES port of Doom was powered with the SuperFX chip, which was a 3D accelerator capable of generating polygons and otherwise rendering a picture like what mike was saying. The SNES's VRAM, DMA capabilities and SuperFX chip way outperforms the Neo Geo in a Doom-like application.

The SNES "Mode 7 chip" is just one of several video modes built into the S-PPU cores (there are two of them in the original SNES). The Mode 7 "aka Landscape effect" is very limited on stock SNES hardware, the DSP1 co-processor was put in some cartridges to make the Mode 7 functionality more effective.

You could in theory put a fast CPU and some RAM onto the CHA board in a Neo Geo game to pre-render the image for a Doom game, but that wouldn't be particularly amazing. the problem as Mike put it is the Neo Geo is really only good at filling a screen with tons of 2D graphics in a somewhat limited fashion. What it's not good at is software rendering. It's something the Genesis and SNES can do, but not the Neo Geo.

Now what the Neo Geo would be REALLY good at is a point n click adventure game, LucasArts-style.

Well, I am impressed with your vast knowledge of the Neo Hardware. :) I will totally admit, I know very little about the hardware itself, and how it works, so all I can do is tell you what SNK told me, and just take their word for it, and then hear what you have to say and take your word for it. The only thing I can think of is that the Neo-Geo, having vastly superior cartridge sizes, and having two boards, one for graphics and one for sound, I believe that if people put their imagination and their knowledge of how this stuff works, to work for them, there could be a LOT of things added to the Neo-Geo Cartridges, and even to the motherboards as well, that can add to the already amazing stuff that the Neo-Geo can pull off when done correctly.

For example, I have had in my mind, for years and years, that there could be a Neo-Geo modem attachment made for the system that can go in between the cart and the system, that would add super fast modem capabilities, that would allow the system to connect to the internet so we can then dial in our friends phone numbers after turning the machine on, and if they are playing the same game at the same time using the same device, and in a "now waiting" mode, we can play games two or 4 player like done in Emulators that do something similar for online play. It's just a matter of using your imagination, putting knowledge to work, and making the product. With todays technology and internet speeds it should be feasable, and yet nobody is making such an amazing product, so we are stuck with the crap Emulation and online support of the Neo-Geo Station on PS3.

I think if people put their collective knowledge to work on this amazing system, upgrade boards similar to the "Mode 7" chip can be made for a Neo-Geo in the future, thus adding new technology to this dated machine, and breathing new life into it, and it would make the gaming experience on it unlike anything we have EVER seen in the past. I really think it's not a matter of how, but more of a matter of when and getting people to stop thinking that we "can't do it", and reversing that type of thinking to "we can do it, we just need to find out HOW to do it", and putting that to work. Only then, will we be able to see more amazing stuff on this "King of the Monsters" of a console be optimized.

I might totally be wrong, but, we will never know until we attempt to do it, and that is the problem, is that nobody has even attempted to do it yet on the Neo-Geo. :) The Future Is Now, and the future is ours, if we just try new things that nobody has tried before. Sadly, my lack of how the AES/MVS is what holds me back on making new and innovative products for it, for if I knew how this beast worked, I would be making the best stuff for it that my mind could conceive.

-J

HMG
10-09-2015, 11:48 PM
Well, I am impressed with your vast knowledge of the Neo Hardware. :) I will totally admit, I know very little about the hardware itself, and how it works, so all I can do is tell you what SNK told me, and just take their word for it, and then hear what you have to say and take your word for it. The only thing I can think of is that the Neo-Geo, having vastly superior cartridge sizes, and having two boards, one for graphics and one for sound, I believe that if people put their imagination and their knowledge of how this stuff works, to work for them, there could be a LOT of things added to the Neo-Geo Cartridges, and even to the motherboards as well, that can add to the already amazing stuff that the Neo-Geo can pull off when done correctly.

The PROG board stores 68k code (CPU) and YM2612 code (music & sound effects). The CHA board stores the sprites (almost entire visual display), the fix layer data (the other 5% of a Neo game's graphics) and the Z80 code (driver for the YM2612 chip). Felt compelled to correct you on your slightly inaccurate generalization of the Neo Geo cartridge composition.

I get what you mean, but the problem is you're asking the Neo Geo to do something it's not designed to do, even with additional hardware. I don't know how else to explain it in simpler terms.

Basically, the Neo Geo is really just a graphics streamer. The reason why it is capable of such amazing graphics even with a slightly meager 68000 as its main CPU is because the Neo Geo is highly specialized. The 68000 CPU is not what makes the Neo Geo amazing, it's the graphics chipset, which is designed specifically to draw tons of graphics tiles onto a TV screen. Unlike typical game consoles which have the video, sound and game engine functions somewhat mixed together, the Neo Geo has everything separated.

The 68000 has no access to the C ROM data bus. This means you cannot copy graphics into the main system RAM to render something on-the-fly, then send off to the graphics chipset RAM for video output. You can however do that with a Sega Genesis, which is why it can render polygons or run Wolfenstein 3D (homebrew) with only the CPU as the software render tool. Besides, the Neo Geo has very little RAM to speak of, for either the CPU or the graphics chipset. The reason why is because normally speaking, graphics are simply streamed from the CHA data bus right through the graphics chipset, to a framebuffer and finally TV output. The 68000 only has to process the game engine, all the things that glue the video and sound together to make a game.

wyndcrosser
10-12-2015, 08:46 PM
Agreed Id love to see a Neo Port !! Like 'Gross Point Blank' in the 7-11 scene
I used to run Doom2 on my MAME cab years ago and loved it.

fucking love that movie... classic.

Gummy Bear
10-14-2015, 07:13 AM
I found this dudes site, he is working on a version of In the Hunt for Neo, very early development now. Has background animation done and very early player sub and enemies sub. The enemies implosion is pretty impressive for an early stage. Also he made an Arkanoid style game called: Hypernoid looks pretty damn cool.

Both of these games are on his youtube channel there is a link on the site.

http://www.neohomebrew.com/

Oh man I had no idea this was happening!
In The Hunt is an epic game. I'd eat that shit up.

MCF 76
10-18-2015, 08:43 AM
Oh man I had no idea this was happening!
In The Hunt is an epic game. I'd eat that shit up.

I know right, what he has done so far looks really damn cool. Did you see the Arkanoid type game called Hypernoid he made? I'm not sure if its finished or not yet though.

GadgetUK
10-18-2015, 10:00 AM
I think its possible to build a cart that would allow the CPU to render C data though. ie. CPU would write specific commands to P address space in order to switch part of the P bus into an SRAM which could be later switched back to the C bus (connecting the C bus to the SRAM). How practical that would be and what sort of performance you would get remains to be seen. The MVS is as HeavyMachineGun wrote - a specialist at throwing tiles around. Trying to achieve Doom or something similar with tiles would likely not look great. If the MVS had the ability to skew and stretch individual tiles (like the Atari Lynx did) it could be made to kind of work using tiles, but I don't think the hardware supports skewing (I might be wrong).

Xian Xi
10-18-2015, 05:08 PM
The PGM has a processor in the cart itself as well. Makes me wonder what the Neo could do if the same was done. HNG64 ports?

BEY
03-08-2016, 10:35 AM
Interesting thread. Here's my little project NGDSGA (NEOGEO CD SINGLE GAME ARCADE):

NEOPHOENIX (Phoenix emulator for NeoGeo W.I.P.)

https://www.youtube.com/watch?v=zvP9ax_TDIc

Blog Dev: http://www.iocero.com/eventdetail.aspx?idEvent=27312

It's still work in progress just for fun, nothing special. I want only know how access to NG hardware and emulate some '80 Arcade classics on it.

Ciao
BEY

kuze
03-08-2016, 10:57 AM
That's pretty cool! Nice work.

max 330 mega
03-08-2016, 10:38 PM
awesome dude, i hope you can find all the info you need, the neo needs more solid homebrew!

Razoola
03-09-2016, 08:58 AM
Very nice stuff there. What kind of information are you looking for?

BEY
03-09-2016, 11:53 AM
Thanks all !

@Razoola:
the NGCD Phoenix emulator is now full working with sound but still some glitches to fix and not 100% full speed, it's basically an experiment, just for fun.
My goal is to have a 100% full speed Z80 emulator into 68K 12Mhz NeoGeo and release some '80 Arcade classics for this system.

Now 12Mhz isn't good enough for an arcade game emulator but I think it's possible with ASM and some NeoGeo based hardware tricks (pre-rendered tiles, sampled audio and some still unknown to me...)

Actually I'm rewriting the C Z80 emulator in asm 68K for speed up the performance but I'm still a newbie in the 68K assembler, still a lot work to do.

Grazie
Ciao
BEY

Razoola
03-09-2016, 12:02 PM
Have you thought about actually using the NGCD Z80 and then passing the information over to the 68k for the rendering of graphics etc?

What you are doing is something I have though about myself but I would not have gone for Z80 games and instead done a 68K based game and not used emulation but instead reworked/rewrite the graphical/musical parts to work on the NeoGeo.

BEY
03-10-2016, 04:53 AM
Have you thought about actually using the NGCD Z80 and then passing the information over to the 68k for the rendering of graphics etc?

What you are doing is something I have though about myself but I would not have gone for Z80 games and instead done a 68K based game and not used emulation but instead reworked/rewrite the graphical/musical parts to work on the NeoGeo.


In NEOPHOENIX (or NGCDSGA concept) it's impossible rendering gfx "on the fly" like in MAME because 12Mhz isn't enough, so the tricks are:
1.Estract GFX and palette from game.rom to C-array
2.Load tile from C-array to NG RAM
3.Convert sample game sound WAV to APDCM-A and fit files into M1, V1 NG music/sound file
4.Write the emulator (MAME source code gave a lot of help!)
5.Cry a lot when you realize to rewrite all code from C to asm 68K (some volunteer??!)


Ciao
BEY

Razoola
03-10-2016, 05:52 AM
Yes I get that totally, it still does not stop you potentially using the Z80 on the NGCD to do Z80 emulation work for you.

Raz

BEY
03-10-2016, 06:02 AM
.....using the Z80 on the NGCD to do Z80 emulation work for you.
Raz

It sounds like a dream but it's impossible because NG Z80 can't write into RAM but only manage sound stream from V1/M1 ROM to YM2610.
I don't think it's possible do anything else with this 8Bit CPU into NeoGeo's architecture.

Ciao
BEY

Razoola
03-10-2016, 06:23 AM
It sounds like a dream but it's impossible because NG Z80 can't write into RAM but only manage sound stream from V1/M1 ROM to YM2610.
I don't think it's possible do anything else with this 8Bit CPU into NeoGeo's architecture.

Ciao
BEY

On the CD system the Z80 can write to ram (it can even self modily its own code if it wanted, so you have 64kb) The 68k can see that ram when it is opened for writing (like when z80 M ROM is loaded from CD). The issue is I don't think its possible to have the z80 running and the 68k being able to see the RAM at the same time. The z80 would have to do slices of work and then stop with the 68k then looking at the results and then updating graphics as needed. Sound might be a problem but you could have a situation with the z80 doing slices of work while the 68k is converting the results of the previous slices work (because it copied the z80 workram into the 68k workspace).

Raz

BEY
03-10-2016, 07:55 AM
On the CD system the Z80 can write to ram (it can even self modily its own code if it wanted, so you have 64kb) The 68k can see that ram when it is opened for writing (like when z80 M ROM is loaded from CD). The issue is I don't think its possible to have the z80 running and the 68k being able to see the RAM at the same time. The z80 would have to do slices of work and then stop with the 68k then looking at the results and then updating graphics as needed. Sound might be a problem but you could have a situation with the z80 doing slices of work while the 68k is converting the results of the previous slices work (because it copied the z80 workram into the 68k workspace).

Raz

Really interesting,
Phoenix ROM is about 16Kb (only game with no gfx) so we can fit in Z80 64Kb ram + reserved area for Phoenix PCB stats:
0000-3fff 16Kb Program ROM
4000-43ff 1Kb Video RAM Charset A (4340-43ff variables)
4400-47ff 1Kb Work RAM
4800-4bff 1Kb Video RAM Charset B (4840-4bff variables)
4c00-4fff 1Kb Work RAM
5000-53ff 1Kb Video Control write-only (mirrored)
5400-47ff 1Kb Work RAM
5800-5bff 1Kb Video Scroll Register (mirrored)
5c00-5fff 1Kb Work RAM
6000-63ff 1Kb Sound Control A (mirrored)
6400-67ff 1Kb Work RAM
6800-6bff 1Kb Sound Control B (mirrored)
6c00-6fff 1Kb Work RAM
7000-73ff 1Kb 8bit Game Control read-only (mirrored)
7400-77ff 1Kb Work RAM
7800-7bff 1Kb 8bit Dip Switch read-only (mirrored)
7c00-7fff 1Kb Work RAM

Now the 68K SW interface can handle this area:

void Z80_WRMEM(dword A,byte V)
{
// $0000-$3800($3FFF) ROM
if (A < 0x4000)
return;
else
// $4000-$4FFF RAM/VRAM
if (A < 0x5000)
{
*0x3c0000 = Phoenix_Tile_addr;
*0x3c0002 = Palette;
.....code...code.....a lot of code.....
}

..and substitute real Phoenix PCB location Ex. 0x4000 in Z80 68K RAM area equivalent.
As you say I don't know if it can work (z80 slices work and sound managment), your analysis it's good, surely not easy to do.


Ciao
BEY

Razoola
03-10-2016, 08:36 AM
Yes it would not be easy to do and there would be issues to overcome, I was just putting the idea out there for you to think about.

Given the game code is only 16kb you say another option would be to write a tool (for PC) that would read each Z80 opcode and rebuild the game ROM using 68kopcodes. Again this is not easy and the tool would need to understand what is an opcode and what is data in the ROM. The rewards using this method would be great however as you could use it on other games. You would need a very good understanding of both Z80 and 68K asm to pull it off. If you do not have that knowledge creating such a tool would be a great way to learn both processors.

BEY
03-25-2016, 01:36 PM
NeoPhoenix Rel.0.10 W.I.P.
I've started to code some functions from C to ASM 68K, this is better than the first release (100% full C).
Thanks Raz.

https://www.youtube.com/watch?v=4qXakc11p1k

Grazie
Ciao
BEY
www.IoCero.com

Razoola
03-25-2016, 02:29 PM
No problem.

Razoola
03-30-2016, 02:05 PM
blaster just gave me a link to a real sweet NeoGeo CD demo he recently completed. Great to know pc2neo was helpful in the creation of this demo.

I give you 'DIFF' by Citavia, 3D anyone?

S7TQf3qICrc

NeoTurfMasta
03-30-2016, 02:11 PM
That's awesome! Very impressive

Razoola
03-30-2016, 02:16 PM
Yup, its very good, you can download it from http://www.pouet.net/prod.php?which=67110

xsq
03-31-2016, 04:57 AM
wow, nice demo. didn't know the NGCD could do that!

lachlan
03-31-2016, 05:58 AM
I like watching those C64 demo videos, very cool to see similar stuff on the glorious Neo!

JMKurtz
03-31-2016, 08:11 AM
That's amazing work!

kuze
03-31-2016, 09:06 AM
Very cool indeed! Awesome to see folks continuing to push the boundaries of the Neo in 2016.