Gens4All with Z80 Emulation

Place for discussing homebrew games, development, new releases and emulation.

Moderators: pcwzrd13, deluxux, VasiliyRS

User avatar
WedgeStratos
blackout!
Posts: 134
Contact:

Re: Gens4All with Z80 Emulation

Post#181 » Thu Jan 13, 2022 6:21 pm

Ian Micheal wrote:
TapamN wrote:Yeah, it occurred to me a couple minutes ago, even before I read your post, that I disabled it incorrectly. Here's attempt two. I even tested and infinite loop this time.

Actually, it looks like my attempt to disable it only during loads didn't work because I made the same mistake?


fixed now :) working loading from a cdr with this version well done :)


I definitely haven't come across this or any other bugs as described. My set up has been over VGA on an NTSC Dreamcast the entire time, using a 5.20.3 GDemu. That being said, I'm gonna put the bad ROMs into their own project and try this non-WD build, see if it has any effect on the non-booting games. I have to guess any of the ones failing from jailbars or colorscreens are due to a bad dump and improper handling from the core. A shame I don't have a coder's cable on standby to debug this.

My first revision will have to be GDemu-only, since I'm certain even after removing some of the worse games, we'll still be over the 700MB amount. I haven't even TOUCHED any of the QoL romhacks yet, just dealing with the Genesis library and what translations exist.

User avatar
MoeFoh
Uber
Posts: 1051

Re: Gens4All with Z80 Emulation

Post#182 » Thu Jan 13, 2022 6:34 pm

WedgeStratos wrote:
Ian Micheal wrote:
TapamN wrote:Yeah, it occurred to me a couple minutes ago, even before I read your post, that I disabled it incorrectly. Here's attempt two. I even tested and infinite loop this time.

Actually, it looks like my attempt to disable it only during loads didn't work because I made the same mistake?


fixed now :) working loading from a cdr with this version well done :)


I definitely haven't come across this or any other bugs as described. My set up has been over VGA on an NTSC Dreamcast the entire time, using a 5.20.3 GDemu. That being said, I'm gonna put the bad ROMs into their own project and try this non-WD build, see if it has any effect on the non-booting games. I have to guess any of the ones failing from jailbars or colorscreens are due to a bad dump and improper handling from the core. A shame I don't have a coder's cable on standby to debug this.

My first revision will have to be GDemu-only, since I'm certain even after removing some of the worse games, we'll still be over the 700MB amount. I haven't even TOUCHED any of the QoL romhacks yet, just dealing with the Genesis library and what translations exist.


CDI's MDS's created with Bootdreams can be up to 2GB for GDEMU users.

CDR would need a split of 2 cd's.
“The problem with the world is that the intelligent people are full of doubts, while the stupid ones are full of confidence.”
- Charles Bukowski

TapamN
letterbomb
Posts: 149

Re: Gens4All with Z80 Emulation

Post#183 » Thu Jan 13, 2022 6:37 pm

For debugging, I added a feature so that the game exits if it looks like it froze, so I wouldn't have to power down and reboot the Dreamcast whenever that happened. The main loop would signal every time it finished a frame. If the main loop stopped signalling for too long, it would assume that it froze and exit.

For some things that took a long time, like loading stuff, I added a way to pause the automatic exit, but forgot to use it when loading a ROM.

I think the reason GDemu and loading over BBA didn't have problems is that they could load even 4MB ROMs fast enough that the emergency exit was never tripped. Running from a slower CD-R would take long enough that it looked like it froze.

By the way, Gens4All supports loading ZIP'ed and GZ'ed ROMs, just like PC Gens. So you can fit more on a CD, and it might be faster to load compressed ROMs from disc than uncompressed ROMs. I know some bug in newlib causes compressed ROMs to be much slower over BBA, though.

User avatar
WedgeStratos
blackout!
Posts: 134
Contact:

Re: Gens4All with Z80 Emulation

Post#184 » Mon Jan 17, 2022 9:14 pm

TapamN wrote:By the way, Gens4All supports loading ZIP'ed and GZ'ed ROMs, just like PC Gens. So you can fit more on a CD, and it might be faster to load compressed ROMs from disc than uncompressed ROMs. I know some bug in newlib causes compressed ROMs to be much slower over BBA, though.

This was an important note. Shrunk the catalog to 530MB zipping them all up. And great timing...

viewtopic.php?f=5&t=15226

Gens4Dreams salvo RC1 is now available.

TapamN
letterbomb
Posts: 149

Re: Gens4All with Z80 Emulation

Post#185 » Mon Jan 24, 2022 5:03 am

After seeing some of what was going on in the Gens4Dreams thread, I ended up making another small update. Here are the changes:
  • Non-interlaced 240p mode added. I think that on NTSC, ideally, the Dreamcast's interlace mode would match the Genesis's (with an option to force interlaced for displays that don't handle non-interlaced well), but that's more work than I want to do now. I looked at what the 240p Test Suite did when setting the video mode, and tried to replicate it. I haven't actually tested this out on a real TV, so it's off by default. To enable 240p, press Y on the title screen before pressing Start. Interlacing is still enabled in the loader.
  • Button map display. Press Y on the controls menu to show the button mappings for the highlighted layout.

The rest of the chances are improvments to the game list feature:

  • Precompiled Windows game list compiler included in src/glparse. I don't use Windows, but I was able to cross-compile with MinGW.
  • Larger game lists are supported. The maximum size of a game list file was originally 100 KB bytes, with 1000 entries. These limits have been raised by 75%.
  • Better handling of non-game entries. Pressing A on an entry with no ROM files specified before would cause the loader to try to load a non existent game (which would cause the screen to flicker). Now entries without a ROM file do nothing when A is pressed. So you can add messages to a list like this:

    Code: Select all

    Game: This is a message
    Game: Nothing happens if you press A
    Game:
    Game: You can add blank lines
    Game:
    Game: Altered Beast (This actually loads a game)
    Rom: abeast.bin
  • Links that allow switching between game lists have been added, so it's possible to separate official games, hacks, and homebrew titles or stuff like that. You can add a link with a entry using this format:

    Code: Select all

    Game: [[Go to hacks]]
    Rom: hackgamelist.bin
    Switcher

    The brackets in the "game" title aren't necessary, but currently the loader doesn't do anything to make the link stand out on it's own, so you'll have to make it clear that it does something. There's no way to automatically go back a list, you'll have to add a link that goes back.
  • Added support for a "!" section to the game list index when using the "Letter:" command. It's intended to be used to jump to links to other game lists.
  • It's possible to specify line scroll emulation with "Scroll:" entries. Possible settings are line (default), line_a4, line_b4, cell, cell_a4, cell_b4. They match up to the settings in the in-game video menu.
  • It's possible to disable shadow emulation with the option "Shadows: off"
The template generator of the game list compiler doesn't support ZIP files. That's more work than I wanted to do, so you'd have to have it run on the BIN files, compress the BIN files into ZIP files with the same name, then do a search and replace on the game list source file to replace .bin with .zip.

Also, the "data" directory in the 7z file doesn't need to be included on a disc, it's only used when compiling Gens4All. The stuff in there gets inserted directly into the 1ST_READ.
Attachments
gens4all_v4_3.7z
(997.8 KiB) Downloaded 334 times


User avatar
WedgeStratos
blackout!
Posts: 134
Contact:

Re: Gens4All with Z80 Emulation

Post#187 » Thu Jan 27, 2022 11:25 pm

Oh. Excellent.

User avatar
azel
fire
Posts: 83

Re: Gens4All with Z80 Emulation

Post#188 » Fri Jan 28, 2022 1:50 am

Ian Micheal wrote:Bump for the 240p kids

:lol:

User avatar
WedgeStratos
blackout!
Posts: 134
Contact:

Re: Gens4All with Z80 Emulation

Post#189 » Fri Jan 28, 2022 2:14 am

TapamN wrote:
  • Precompiled Windows game list compiler included in src/glparse. I don't use Windows, but I was able to cross-compile with MinGW.
  • Larger game lists are supported. The maximum size of a game list file was originally 100 KB bytes, with 1000 entries. These limits have been raised by 75%.
The template generator of the game list compiler doesn't support ZIP files. That's more work than I wanted to do, so you'd have to have it run on the BIN files, compress the BIN files into ZIP files with the same name, then do a search and replace on the game list source file to replace .bin with .zip.

Also, the "data" directory in the 7z file doesn't need to be included on a disc, it's only used when compiling Gens4All. The stuff in there gets inserted directly into the 1ST_READ.

The data part is good to know. I'm curious though, considering what I'm trying to do with glc, how would one go about sending several ROMs into glc for an output all at once? I'm testing the waters but not getting good results. I've tried command redirection by generating a list using "dir > list.txt" and then trying to use the contents of list.txt with "glc -g OUTPUT.TXT < list.txt" but it simply operates without results, and generates the mostly empty OUTPUT.TXT file. It doesn't appear to take just a DIR for the data, and I'm not too well versed in using Windows command prompts It'd probably be streamlined if I was on Linux, but all my Dreamcast work has been on Windows thus far. Obviously passing list.txt on its own doesn't work because it is looking for header data from the ROM itself, but glc doesn't appear to accept the method I'm using for redirection.

I've been overcomplicating it. I simply made a shortcut, added "-g output.txt" to target, and then drag-and-drop works fine on the shortcut.

Also, I see you've added control for scroll and shadow in the gamelist, but what about vblank? A few games actually do exhibit issues that are dependent on vblank start vs end.
Last edited by WedgeStratos on Sat Jan 29, 2022 2:18 am, edited 1 time in total.

User avatar
aldair
Metallic
Posts: 802

Re: Gens4All with Z80 Emulation

Post#190 » Fri Jan 28, 2022 2:06 pm

WedgeStratos wrote:
TapamN wrote:
  • Precompiled Windows game list compiler included in src/glparse. I don't use Windows, but I was able to cross-compile with MinGW.
  • Larger game lists are supported. The maximum size of a game list file was originally 100 KB bytes, with 1000 entries. These limits have been raised by 75%.
The template generator of the game list compiler doesn't support ZIP files. That's more work than I wanted to do, so you'd have to have it run on the BIN files, compress the BIN files into ZIP files with the same name, then do a search and replace on the game list source file to replace .bin with .zip.

Also, the "data" directory in the 7z file doesn't need to be included on a disc, it's only used when compiling Gens4All. The stuff in there gets inserted directly into the 1ST_READ.

The data part is good to know. I'm curious though, considering what I'm trying to do with glc, how would one go about sending several ROMs into glc for an output all at once? I'm testing the waters but not getting good results. I've tried command redirection by generating a list using "dir > list.txt" and then trying to use the contents of list.txt with "glc -g OUTPUT.TXT < list.txt" but it simply operates without results, and generates the mostly empty OUTPUT.TXT file. It doesn't appear to take just a DIR for the data, and I'm not too well versed in using Windows command prompts It'd probably be streamlined if I was on Linux, but all my Dreamcast work has been on Windows thus far. Obviously passing list.txt on its own doesn't work because it is looking for header data from the ROM itself, but glc doesn't appear to accept the method I'm using for redirection.

I've been overcomplicating it. I simply made a shortcut, added "-g output.txt" to target, and then drag-and-drop works fine on the shortcut.

To make iso to dreamshell: run Create_katana_ISO.bat
ISO Make pack 2010:
iso_make.7z
(957.46 KiB) Downloaded 187 times

  • Similar Topics
    Replies
    Views
    Last post

Return to “New Releases/Homebrew/Emulation”

Who is online

Users browsing this forum: No registered users