Could Bootdreams do this?

This forum is for discussion pertaining to homebrew and indie software for the Dreamcast, such as homebrew games, emulators/interpreters, and other homebrew software/applications. Porting requests and developmental ideas are not to be made here; you can make those here. If you need any help burning discs for homebrew software, this is the place to ask as well.
Post Reply
Stryfe
Psychotic DCEmu
Psychotic DCEmu
Posts: 577
https://www.artistsworkshop.eu/meble-kuchenne-na-wymiar-warszawa-gdzie-zamowic/
Joined: Mon Aug 11, 2008 9:34 am
Location: Nowhere U.S.A.
Has thanked: 0
Been thanked: 0

Could Bootdreams do this?

Post by Stryfe »

Recently I tried using an old selfboot methods for creating a Dreamcast disc. The reason for this was to try to optimize the disc LBA structure, so it would place one particularly large file to a "possible" optimal read sector.

So I downloaded an old set of tools, including the "cdrecord" and "mkisofs" from 2000.

I created a list.txt with this structure; The higher the number the closer to the center of the disc.

Code: Select all

data/000DUMMY.DAT 30000
data/IP.BIN 29990
data/LANG/ENGLISH.DL1 29810
data/LANG/ENGLISH.TXT 29800
data/OGG/BGM_124_MID.OGG 29790
data/OGG/BGM_1_MID.OGG 29780
data/OGG/BGM_2_MID.OGG 29770
data/OGG/BGM_3_MID.OGG 29760
data/OGG/BGM_4_MID.OGG 29750
data/OGG/BGM_5_MID.OGG 29740
data/OGG/BGM_6_MID.OGG 29730
data/OGG/BGM_7_MID.OGG 29720
data/OGG/BGM_8_MID.OGG 29710
data/OGG/BGM_9_MID.OGG 29700
data/OGG/OUTSIDE_MID.OGG 29690
data/OGG/INSIDE_MID.OGG 29680
data/OGG/OPENING_MID.OGG 29670
data/SG.DL1 29660
data/WV.DL1 29650
data/1ST_READ.BIN 29640
The WV.DL1 is a large audio file, and I wanted it placed where it would get the most read per drive revolution.

I then ran this code from the command line.

Code: Select all

mkisofs -C 0,11702 -V TITLE -sort list.txt -l -o data.iso data
It pulls the LBA information from the list I made. If you look at the disc structure after iso creation, the LBA is reversed, with smallest number(Dummy.dat) being closer to the center of the disc.

So the question is...

Would it be possible to create a function for Bootdreams to allow people to do this?

Structure the disc contents, allowing for optimization of certain emu/apps/games...well at least let them to attempt to optimize it with trial and error.
ImageImageImageImage
Stryfe
Psychotic DCEmu
Psychotic DCEmu
Posts: 577
Joined: Mon Aug 11, 2008 9:34 am
Location: Nowhere U.S.A.
Has thanked: 0
Been thanked: 0

Re: Could Bootdreams do this?

Post by Stryfe »

After manually messing around with Bootdreams at the cmd.exe prompt, I was able to get the disc built with the desired LBA structure.

My directory was "C:\BootDreams\Tools\Data". I placed the 1ST_READ.BIN and all needed game/emulator files in the DATA folder. Remember to put your LBA order text in the "Tools" directory, I named mine "list.txt", but you could use whatever name you deem fit.

1.)
I ran this code at the command prompt from the "Tools" directory:

Code: Select all

mkisofs.exe -C 0,11702 -V GAME -G IP.BIN -joliet-long -rock -sort list.txt -l -o data.iso data
2.)
After the "data.iso" was created, I then ran this:

Code: Select all

CDI4DC data.iso GAME.cdi
Use a program like ISObuster to check the LBA, and ignore the sub-folder LBA number, expand the list to check the file's numbers. The smaller the LBA; The closer to the center of the disc.

Generalized code examples from above:
Run "lbacalc audio.raw" for numerical variable = Blue.
User defined variables = Red.

1.)
mkisofs -C 0,11702 -V <IMAGE NAME> -G IP.BIN -joliet-long -rock -sort <LBA_order.txt> -l -o <ISO_NAME.ISO> <DATA FOLDER>

2.)
CDI4DC <ISO_NAME_YOU_CHOSE_ABOVE.ISO> <GAME_NAME.CDI>
-------------------------------------------------------------------------------------------------

My first couple of tries worked in making a disc that loaded, but the BGM was missing. After adding the "-joliet-long" command it worked.

Well anyways, I'd like to thank DcBasic for making a great app. ;)
ImageImageImageImage
User avatar
emptythought
DC Developer
DC Developer
Posts: 2015
Joined: Wed Jan 30, 2002 9:14 am
Location: UNITED STATES NRN
Has thanked: 0
Been thanked: 0
Contact:

Re: Could Bootdreams do this?

Post by emptythought »

I worked on it about a year and a half ago but cdrecord or mkisofs wouldn't accept my sort file. I think it had something to do with cdrecord compiled in Cygwin (it's been a long time). I'll look into it the next time I update BootDreams. I wanted to get mkisofs and cdrecord piping finished anyway.
Stryfe
Psychotic DCEmu
Psychotic DCEmu
Posts: 577
Joined: Mon Aug 11, 2008 9:34 am
Location: Nowhere U.S.A.
Has thanked: 0
Been thanked: 0

Re: Could Bootdreams do this?

Post by Stryfe »

Really..?

That'd be awesome sauce if you did. :bow:
ImageImageImageImage
Post Reply