32X

Barone
Posts: 8
Joined: Thu Jan 20, 2022 8:48 pm
Has thanked: 10 times
Been thanked: 5 times

Re: 32X

Unread post by Barone »

Neocaron wrote: Fri Jan 28, 2022 2:25 am 32X was capable of doing 50,000 polygons per second. It should be noted that since the 32X was an add-on for the Genesis, the graphics hardware of the 32X was typically split between the 32-bit VDP (which provided the really fancy stuff. For example: the 3D polygon characters in Virtua Fighter 32X and other 3D elements on screen) and the 16-bit Genesis VDP provided stuff like the backgrounds and some minor stuff (depending on the game)

Saturn was capable of doing 200,000 texture mapped polygons per second OR 500,000 flat shaded polygons per second. Since the Saturn was it's own system (and not an add-on for the Genesis) it had two 32 bit VDPs (one for characters and other main stuff, and the other for backgrounds).
Keep in mind the 32X has no hardware features for 3D graphics, polygons, etc. Nor does it have any dedicated hardware for sprite scaling.
It's all software rendered, unlike the Saturn.

The 32X games can vary a lot in how they setup the hardware usage, but according to people such as Joseph Fenton (a.k.a. Chilly Willy) (Wolf 32X homebrew port, 3D 32X demos, etc.) and Victor Luchitz (Doom 32X Resurrection) the best approach for maximum 3D performance is to do all graphics on the 32X and use the Mega Drive side as an old PC sound card, handling just music and controller input.
To maximize performance you have to optimize both logic and rendering to be split between the two CPUs.
These are quotes from both guys, which are hands down the most knowledgeable ones when it comes to 32X's hardware and development:
One thing you need for best speed on the SH2 side - keep the MD off the bus. Make sure the Z80 is held reset, the 68000 is running in work ram, and the VDP is not doing any DMA. Running the 68000 main() in rom is enough to maybe halve the speed of the 32X side.

Running sh2 functions from sdram makes them cache quicker. The sdram does burst reads - 8 words in 12 cycles. Nothing else burst reads, meaning the cache is much slower to load. Oh, and make sure you have the cache turned on and set to 4 way set associative. If you're not using the cache (have the cache in scratchpad mode) or you're running with the PC set to uncached pointers to functions, you aren't going to cache the code, which means it won't be fast on real hardware.

This also applies to data in the rom - use cache enabled pointers to data in the rom to cache the data. I'm not sure if this really needs to be said, but using a pointer with the caching bits of the pointer set to uncached space means the data will not cache - it will read from the rom every time it is accessed.

There are times when you WANT to read something as non-cached. For example, a variable set by the other cpu. Then you either need to flush the address of the variable before reading it, or to read it as uncached.
http://gendev.spritesmind.net/forum/vie ... =15#p37344
I have a work in progress demo that draws a tilemap and is able to do sprite scaling, flipping and clipping using both CPUs at 60fps, and here what I've learned about doing 2D gfx on the 32X:
1) always keep your drawing code in SDRAM
2) unroll your drawing loops as much as you can, use Duff's device
3) try different optimization settings: generally -Os works better, but also try -O2 to see if that improves performance
4) keep as much of your tile data in SDRAM - drawing from ROM is extremely slow
5) use both CPUs for drawing
6) write longs to VRAM to maximize throughput if you can, otherwise - use word writes, don't ever write single bytes unless you absolutely have to
7) the overwrite area is your friend if you want to do transparency - use it
8 ) use the line table to scroll the screen area both vertically and horizontally
9) use the shift register if you plan to have smooth horizontal scrolling by an odd amount of pixels, but:
10) the shift register is bugged and you can't infinitely scroll the screen by manipulating the line table without running into glitches, in fact you can barely scroll at all
11) unfortunately it's impossible to have free infinite horizontal scrolling on the 32X - you have to periodically re-draw the whole screen to reset the line table due to pt10
12) the 32X is only equipped to do 2 layers of 2D gfx at 50FPS at 320x224 if you use one CPU: 320*224*5*50 = 8.96 M cycles per second is the total amount of cycles it takes to redraw the whole screen on PAL a 32X at 50FPS, which slightly less than a half of the budget of 22.8M cycles you've got. Bare in mind this doesn't even account for cycles spent on reading the tile/sprite data and game logic, so at best you can hope to do only 2 layers even if you use _both_ CPUs
13) save CPU cycles as much as you can: avoid re-drawing between frames and overdrawing within frames as much as possible, don't wait in a hot loop for framebuffers to have completed swapping
14) avoid clearing the whole screen each frame, use the "dirty rectangles" technique to only clear stuff which needs to be cleared
15) don't use the hardware filler, it's useless
16) accessing the MD VRAM from 68k is SLOOOOOW and basically halts the SH-2's for the duration of the access
17) always test of real hardware: typically performance on emulators is 1.5 to 2 times better than on real hw
18) always read your sprite and tile data in forward direction to benefit from burst access to SDRAM
19) modern compilers are pretty good at producing optimized assembly, don't waste your time on hand-optimized code
http://gendev.spritesmind.net/forum/vie ... =15#p37332
The demo he refers too is here: https://github.com/viciious/yatssd

Someone mentioned the 32X being finnicky and I totally agree. It's not uncommon to be using it and then the slightest touch on the Mega Drive can make your game freeze.
The fact that it sits on the cart slot and most of its weight is up top certainly doesn't help. Having it on MiSTer FPGA would be far more practical.
This was discussed earlier in the thread, and elsewhere, but the general assumption is that srg320 will move on to the 32x after finishing Saturn and doing some needed improvements to the Mega Drive core. The Saturn core and Mega Drive fixes pave the way for the 32x. There is a reasonable chance we could have it by the end of the year.
That would be awesome!
Thanks for the input.
KremlingKuthroat19
Posts: 237
Joined: Sat Aug 22, 2020 3:08 am
Has thanked: 27 times
Been thanked: 49 times

Re: 32X

Unread post by KremlingKuthroat19 »

I'm not going to play armchair developer, but it's reasonable to assume about 20% of the 32X core will have been already completed with the completion of the Saturn core. Still, it'd be much more logical to go straight to getting all the ST-V arcade games in working order after the Saturn core is complete since the Saturn and ST-V are essentially identical except the ST-V uses a cartridge port and has other very minimal differences.

The natural progression should be:
1. Saturn
2. ST-V
3. Genesis core clean up
4. 32X

I'd say the ETA on that is completely dependent on the Saturn core's release window, and all the polishing that's going to be required once said core is complete.
throAU
Posts: 181
Joined: Fri Sep 11, 2020 1:06 am
Has thanked: 229 times
Been thanked: 27 times

Re: 32X

Unread post by throAU »

Again not a dev but if Saturn will fit the 32x should.

Saturn has more chips in it than the 32x plus megadrive if I’m not mistaken (I mean it has a 68000, plus a hard core dsp just for sound, an sh1 cd controller, etc.)

The limiting factor will likely be developer interest I suspect. It’s a very niche system with small library.
rhester72
Top Contributor
Posts: 1107
Joined: Thu Jun 11, 2020 2:31 am
Has thanked: 13 times
Been thanked: 169 times

Re: 32X

Unread post by rhester72 »

Wait'll we get 32X and then people bitch there's no CD support *LOL*
User avatar
TwoShedsWilson
Posts: 2
Joined: Wed Nov 10, 2021 2:43 pm
Has thanked: 2 times

Re: 32X

Unread post by TwoShedsWilson »

If we can get enough interest for 32X to happen at all, I'll find a way to live without those 3 or 4 32X-CD games. I'll manage with the standard CD versions. I would hope a 32X core would maybe spark the homebrew community to start looking at the platform and see what magic they could work with it.
User avatar
Wave
Posts: 129
Joined: Tue Jan 04, 2022 6:57 pm
Has thanked: 86 times
Been thanked: 40 times

Re: 32X

Unread post by Wave »

TwoShedsWilson wrote: Tue Feb 01, 2022 8:04 pm I would hope a 32X core would maybe spark the homebrew community to start looking at the platform and see what magic they could work with it.
The 32X has a somewhat active homebrew scene actually, my friend has been telling me about it.

Follow this person for a start. They're working on a 3D engine for it.

It has been shocking to hear just how limited the 32X hardware was. Apparently all rendering is done in software! If you want, say, sprites or scrolling, you gotta code it yourself apparently, or rely on the built-in functions of the MD hardware (with all their limitations).

I asked my friend, "Is the 32X ultimately a good capable machine to make games on OR a misbegotten pile of bad decisions?"

"Why not both," they replied.
she/her
thorr
Top Contributor
Posts: 1101
Joined: Mon Jul 06, 2020 9:37 pm
Has thanked: 537 times
Been thanked: 252 times

Re: 32X

Unread post by thorr »

Star Wars is the reason I want the 32X. If one game is worth it, then it should be enough reason to make it. Arcade cores are one game (ok, you can usually get a few games from one core, but it is the same difference). Hopefully we will see the 32X one of these days.
KremlingKuthroat19
Posts: 237
Joined: Sat Aug 22, 2020 3:08 am
Has thanked: 27 times
Been thanked: 49 times

Re: 32X

Unread post by KremlingKuthroat19 »

Star Wars has exclusive levels on the 32X so that's a big reason for a core. Virtua Racing Deluxe is the best version according to many. Plus, it's a Sega console so that alone is reason to justify it. There are about 10 games worth playing on the 32X. That's more than some consoles that already have cores like the Channel F. Knuckles Chaotix is also never getting ported from that console either.
User avatar
16Bittt
Posts: 88
Joined: Fri Oct 22, 2021 9:23 pm
Has thanked: 8 times
Been thanked: 7 times

Re: 32X

Unread post by 16Bittt »

I remember playing 32X games on emulator years ago (on PC) can't remember which emulator since I moved away from all emulators long ago but I remeber it could run them fine.

32X has some cool games and some of the better/best versions of certain titles of that era.

Pitfall Mayan Adventure,
Mortal Kombat 1 & 2,
Primal Rage,
NBA JAM
these had best home ports on 32X,much superior to both SNES and Genesis version.

also
Tempo,
Kolibri,
Blacktorne,
Kuckles Chaotix

all very cool games.
I'm definitely interested in a 32X core..

and Saturn had so many great 2D games in it's library specially Japanese exclusives that now cost a fortune to buy.can't wait for the saturn core.
KremlingKuthroat19
Posts: 237
Joined: Sat Aug 22, 2020 3:08 am
Has thanked: 27 times
Been thanked: 49 times

Re: 32X

Unread post by KremlingKuthroat19 »

Im sorry if I sound like a broken record, but that’s one of the unique selling propositions that the MiSTer can have over its already stellar value. If we could have a perfect recreation of less popular consoles like the 32X, Atari Jaguar (especially the CD, which has no emulator) and the 3DO, it’d make MiSTer even more appealing!
drgruney
Posts: 28
Joined: Sat Sep 19, 2020 6:03 pm
Has thanked: 48 times
Been thanked: 4 times

Re: 32X

Unread post by drgruney »

KremlingKuthroat19 wrote: Wed Feb 09, 2022 7:26 pm Im sorry if I sound like a broken record, but that’s one of the unique selling propositions that the MiSTer can have over its already stellar value. If we could have a perfect recreation of less popular consoles like the 32X, Atari Jaguar (especially the CD, which has no emulator) and the 3DO, it’d make MiSTer even more appealing!
You don't seem to get that MiSTer isn't a business trying to move units.
KremlingKuthroat19
Posts: 237
Joined: Sat Aug 22, 2020 3:08 am
Has thanked: 27 times
Been thanked: 49 times

Re: 32X

Unread post by KremlingKuthroat19 »

More units sold means more people involved in the project which means more users which means more people donating to Patreon accounts which means more development costs being reduced. More people also means more potential developers.

The DE-10 is a product so the more appealing it can be, the more users will take the plunge and buy a MiSTer. Sure it’s an open-source project but getting more people interested in the project only means good things for the future. Btw, this is the 32X thread. Let’s stay on topic, even if I got off topic a bit.

To get back on topic would love to get Sega CD + 32X support so I can play the definitive version of Slam City lol
FoxbatStargazer
Top Contributor
Posts: 994
Joined: Thu Dec 10, 2020 5:44 pm
Has thanked: 309 times
Been thanked: 228 times

Re: 32X

Unread post by FoxbatStargazer »

32X Pitfall ran at 30 FPS, it's got to be the worst console port. I support a 32X core but that's not one of the stand out titles...
rhester72
Top Contributor
Posts: 1107
Joined: Thu Jun 11, 2020 2:31 am
Has thanked: 13 times
Been thanked: 169 times

Re: 32X

Unread post by rhester72 »

There's Star Wars 32X and there's...oh, wait. No, just Star Wars. :P
Beeble
Posts: 99
Joined: Sun May 24, 2020 9:04 pm
Has thanked: 16 times
Been thanked: 12 times

Re: 32X

Unread post by Beeble »

Space Harrier, Afterburner, Virtua Fighter and Virtua Racing shall not be overlooked.
softtest9
Posts: 158
Joined: Thu May 28, 2020 7:13 pm
Has thanked: 3 times
Been thanked: 21 times

Re: 32X

Unread post by softtest9 »

Beeble wrote: Sun Feb 13, 2022 4:06 pm Space Harrier, Afterburner, Virtua Fighter and Virtua Racing shall not be overlooked.
I'm pretty sure all of them have equal or better versions on other consoles/arcades/computers.
User avatar
Chris23235
Top Contributor
Posts: 842
Joined: Sun May 24, 2020 8:45 pm
Has thanked: 106 times
Been thanked: 167 times

Re: 32X

Unread post by Chris23235 »

softtest9 wrote: Sun Feb 13, 2022 6:55 pm
Beeble wrote: Sun Feb 13, 2022 4:06 pm Space Harrier, Afterburner, Virtua Fighter and Virtua Racing shall not be overlooked.
I'm pretty sure all of them have equal or better versions on other consoles/arcades/computers.
None of these games is actually supported in its Arcade counter part on the MiSTer and all of them look better on the 32X than in the arcade version. Additionally Virtua Racing has more tracks than the arcade version, tracks that were made exclusively for the 32X version.
H6rdc0re
Posts: 52
Joined: Sat Feb 06, 2021 11:35 pm
Has thanked: 1 time
Been thanked: 9 times

Re: 32X

Unread post by H6rdc0re »

Chris23235 wrote: Sun Feb 13, 2022 10:31 pm
softtest9 wrote: Sun Feb 13, 2022 6:55 pm
Beeble wrote: Sun Feb 13, 2022 4:06 pm Space Harrier, Afterburner, Virtua Fighter and Virtua Racing shall not be overlooked.
I'm pretty sure all of them have equal or better versions on other consoles/arcades/computers.
None of these games is actually supported in its Arcade counter part on the MiSTer and all of them look better on the 32X than in the arcade version. Additionally Virtua Racing has more tracks than the arcade version, tracks that were made exclusively for the 32X version.
Wow wow hold on there. Are you saying the 32X versions are better than the arcade versions? If so that's incorrect. Space Harrier runs 30fps on the 32X but 60fps on the arcade and same thing with Afterburner. Virtua Fighter and Virtua Racing both run and look nothing like their arcade counterparts. Even the Saturn versions are nowhere close to the arcade versions. The arcade versions are lightyears beyond. Both games run at higher framerates, at higher resolutions and much better graphics.
User avatar
Chris23235
Top Contributor
Posts: 842
Joined: Sun May 24, 2020 8:45 pm
Has thanked: 106 times
Been thanked: 167 times

Re: 32X

Unread post by Chris23235 »

H6rdc0re wrote: Mon Feb 14, 2022 12:24 am
Chris23235 wrote: Sun Feb 13, 2022 10:31 pm
softtest9 wrote: Sun Feb 13, 2022 6:55 pm

I'm pretty sure all of them have equal or better versions on other consoles/arcades/computers.
None of these games is actually supported in its Arcade counter part on the MiSTer and all of them look better on the 32X than in the arcade version. Additionally Virtua Racing has more tracks than the arcade version, tracks that were made exclusively for the 32X version.
Wow wow hold on there. Are you saying the 32X versions are better than the arcade versions? If so that's incorrect. Space Harrier runs 30fps on the 32X but 60fps on the arcade and same thing with Afterburner. Virtua Fighter and Virtua Racing both run and look nothing like their arcade counterparts. Even the Saturn versions are nowhere close to the arcade versions. The arcade versions are lightyears beyond. Both games run at higher framerates, at higher resolutions and much better graphics.
After Burne and Space Harrier run with variable framerates on the 32X, they are not running with 30 FPS but with 30-60 FPS this is true. But on the other hand I always found the sound much better (higher quality sounds, better samples, in general the sound in the arcade version sounds a little bit muffled) and to my untrained eye the sprite enlargement is more fluid on the 32X then it was in the arcade version.
User avatar
darksakul
Posts: 352
Joined: Mon May 25, 2020 4:34 pm
Has thanked: 397 times
Been thanked: 73 times

Re: 32X

Unread post by darksakul »

The tricky part of a 32X core would be that the 32X Unit has to take the Analog video input of the Genesis, overlay it's own graphics on top and then output the combined analog video.

Reason the 32X works with the Mega SG is that you have to use the Analogue DAC to get Analogue video output, in which the 32X requires.
The Mega SG isn't doing any 32X Emulation.

FPGA is notoriously bad at handling analog circuitry. I not saying it can't be done, but someone has to Reverse Engineer how the 32X overlays it's own graphics over the Genesis Graphics while keeping everything digital.
It is my great regret that we live in an age that is proud of machines that think and suspicious of people who try to.
User avatar
Hectic
Posts: 47
Joined: Tue Jun 09, 2020 3:23 am
Been thanked: 10 times

Re: 32X

Unread post by Hectic »

at this point I cannot differentiate a serious comment from a troll one. but there are a couple of things that have been commented on in this thread that I don't entirely agree with.

32x is not one of the most important home systems in history. Perhaps not the most irrelevant of sidenotes in the history of failed systems, but not among one of the most importants.

As you've mentioned, I'm also not entirely sure that the best version of any game released at 32x is the 32x version.

I don't think there are many people waiting for the release of the 32x core to buy the MiSTerFPGA. They usually mention the lack of stock or the recent price increase, but nothing about the absence of a 32x core.

Other than that, yes, I think a world with a 32x core for free will be better than a world with no 32x core for free.

I hope its not misunderstood. English is not my main language. Greatings
KremlingKuthroat19
Posts: 237
Joined: Sat Aug 22, 2020 3:08 am
Has thanked: 27 times
Been thanked: 49 times

Re: 32X

Unread post by KremlingKuthroat19 »

Yeah I'm not the biggest 32X fan in the world, but at the end of the day it still is a Sega console. That alone puts it ahead of many other consoles like the Watara Supervision or the Mega Duck or even stuff like the PC-FX. The 32X is similar to the Virtual Boy imo being that they're both consoles with very limited libraries, but the fact that they are Sega and Nintendo consoles, makes them worth playing.
hyp36rmax
Posts: 24
Joined: Sat Jun 20, 2020 7:36 pm
Has thanked: 26 times
Been thanked: 12 times

Re: 32X

Unread post by hyp36rmax »

SRG320 just released a SEGA 32X Core!

viewtopic.php?p=49453#p49453
thorr
Top Contributor
Posts: 1101
Joined: Mon Jul 06, 2020 9:37 pm
Has thanked: 537 times
Been thanked: 252 times

Re: 32X

Unread post by thorr »

Wow, what an awesome surprise!!!
User avatar
Waifu4Life
Posts: 232
Joined: Fri Jun 19, 2020 5:30 am
Has thanked: 19 times
Been thanked: 36 times

Re: 32X

Unread post by Waifu4Life »

hyp36rmax wrote: Wed Apr 20, 2022 8:21 pm SRG320 just released a SEGA 32X Core!

viewtopic.php?p=49453#p49453
I know, crazy right!
Also, looks like no BIOS is needed.
mic_
Posts: 33
Joined: Thu May 28, 2020 8:45 am
Has thanked: 1 time
Been thanked: 5 times

Re: 32X

Unread post by mic_ »

This is really cool. I know it's an early version, but I decided to try some of my old tech demos, and they all worked, except that the PWM audio playback was too fast. The pitch sounded correct, but it's updating too fast, so I don't know if the audio DMA interrupt is triggering too frequently or what's going on.

See for example the attached ROM, and compare the result to this recording from a real 32X.
Attachments
SHYMMER.7z
(292.41 KiB) Downloaded 135 times
futurepr0n
Posts: 10
Joined: Sun Mar 06, 2022 8:32 pm
Been thanked: 1 time

Re: 32X

Unread post by futurepr0n »

Yeah this is awesome! A lot of games/roms that have issues for me on real hardware like freezing and stuff work flawless at quick play tests. Really can’t wait to spend some time with the core! Amazing!! Even Doom Resurrection works! And pinnocio which is finicky on actual hardware. Wow.. this is actually incredible
User avatar
barfood
Posts: 95
Joined: Thu Jun 18, 2020 6:55 pm
Location: new user: felleg
Has thanked: 87 times
Been thanked: 18 times
Contact:

Re: 32X

Unread post by barfood »

Yoooooooooooooooooooooooo
seastalker
Posts: 208
Joined: Tue Jun 02, 2020 6:49 pm
Has thanked: 4 times
Been thanked: 47 times

Re: 32X

Unread post by seastalker »

This is so unexpected and soooo COOL!!

THANK YOU!!!
Post Reply