Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dreamcast Port #7453

Draft
wants to merge 39 commits into
base: master
Choose a base branch
from
Draft

Dreamcast Port #7453

wants to merge 39 commits into from

Conversation

AJenbo
Copy link
Member

@AJenbo AJenbo commented Oct 3, 2024

No description provided.

@julealgon
Copy link
Contributor

Cool stuff. Makes me wonder about potential applications for the Dreamcast controller's screen for this game.

@glebm
Copy link
Collaborator

glebm commented Oct 3, 2024

@azihassan You may get better results with unpacked MPQs (reverting azihassan@d6eb734), it saves a few hundred KiB of RAM. Are you on our Discord? https://discord.gg/devilutionx

@azihassan
Copy link

azihassan commented Oct 4, 2024

@azihassan You may get better results with unpacked MPQs (reverting azihassan@d6eb734), it saves a few hundred KiB of RAM

Thanks I've been going back and forth with the unpacked option. Packed MPQs are easier to deal with for people who want to use their own diabdat.mpq, but I've been meaning to switch back to unpacked to see if it would improve loading times

Are you on our Discord? https://discord.gg/devilutionx

Nice, I'll join it soon 👍

@glebm
Copy link
Collaborator

glebm commented Oct 6, 2024

Packed MPQs are easier to deal with for people who want to use their own diabdat.mpq, but I've been meaning to switch back to unpacked to see if it would improve loading times

Only a little bit easier. The people running Dreamcast homebrew can probably handle running an extra command for data preparation. We also provide pre-built Windows binaries in https://github.com/diasurgical/devilutionx-mpq-tools/releases, and the tool can be run simply by double-clicking it.

azihassan and others added 25 commits October 6, 2024 20:54
It was failing because mkdcdisc added a trailing period to /cd/fonts/fonts/VERSION
making it /cd/fonts/fonts/VERSION.

Looks like it's an ISO9660 thing
to make it easier for users to generate a .cdi with diabdat.mpq
because multiplayer mode only stores player data on the VMU, the rest is stored
in a std::unordered_map<uint8_t, DLevel> DeltaLevels in memory data
structure. I'm hoping that with this approach, player data won't exceed 100 KB
. Replace fs_* calls with regular std::f* calls
. Temporarily disable hero items storage
. Restore hero items saving
The shareware version has worse performance for some reason

. Remove seemingly unecessary palette code
. Enable DMA driver in SetFullscreenMode for good measure
to make it easier for thosre who want to use their own copy of
diabdat.mpq instead of spawn.mpq and fonts.mpq
I forgot to add them after updating .github/workflows/dreamcast.yml
@azihassan
Copy link

We also provide pre-built Windows binaries in https://github.com/diasurgical/devilutionx-mpq-tools/releases, and the tool can be run simply by double-clicking it.

Oh OK, I didn't know these were available. In that case I'm sold!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants