maybe it's time to make an additional topic to start discussing the multisession cue (or something xml-based) questions?

The only logical solution I can think of is to keep the track checksums only in db and implement the REM LEAD-IN/REM LEAD-OUT commands similar to PREGAP/POSTGAP ones.

Like:

REM LEAD-OUT 00:03:55
REM SESSION 02
REM LEAD-IN 00:02:00

(so the virtual drive or some converter could generate the proper amount of empty sectors there).

iR0b0t wrote:

Including the first session leadin and last session leadout, right?! (on multi sessional discs only)

the first session lead-in and last session lead-out would be too hard to measure.

The first session lead-out and the second session lead-in and first pregap are measureable (and their sizes are surely needed to at least convert such a stripped image into the "proper" iso-cue pair in IsoBuster format).

iR0b0t wrote:

I mean, REM LEAD-IN, REM LEAD-OUT, for those, without time values. But they have to be present.

What's the point? You need to add an empty PREGAP after the first LEAD-IN, then, since the first track always has some omitted pregap after the lead-in. Lead-in and lead-out always exist, it's an axiom, you don't need any additional commands to show that.

I have seen some foreign multisessional cuesheet styles and they don't look correct to me.

To my understanding it should be as follows:

REM SESSION 01
REM LEAD-IN
FILE "Himitsu - Original Sound Track (Japan) (Track 01).bin" BINARY
  TRACK 01 AUDIO
    ISRC JPWP09906010
    INDEX 01 00:00:00
FILE "Himitsu - Original Sound Track (Japan) (Track 02).bin" BINARY
  TRACK 02 AUDIO
    ISRC JPWP09906020
    INDEX 01 00:00:00
REM LEAD-OUT
REM SESSION 02
REM LEAD-IN
FILE "Himitsu - Original Sound Track (Japan) (Track 03).bin" BINARY
  TRACK 03 AUDIO
    ISRC JPWP09906030
    INDEX 01 00:00:00
REM LEAD-OUT

// one of the submissions: http://forum.redump.org/topic/18053/

PX-760A (+30), PX-W4824TA (+98), GSA-H42L (+667), GDR-8164B (+102), SH-D162D (+6), SOHD-167T (+12)

6 (edited by sarami 2019-04-10 09:24:25)

http://forum.redump.org/post/69075/#p69075

iR0b0t wrote:

@sarami, do you have some thoughts?

I think 'REM LEAD-IN' and 'REM LEAD-OUT' don't need in multi-session's cue of multi-track (redump'org) format.
1. Because multi-session's cue of multi-track format doesn't have lead-in area and lead-out area.

2. Because Dreamcast's cue doesn't have 'REM LEAD-IN' and 'REM LEAD-OUT'. (Admin and mod defined only REM SINGLE-DENSITY AREA and REM HIGH-DENSITY AREA. Actually, GD-ROM has lead-out after the last track of single-density area and lead-in before first track of high-density area.)

3. With only 'REM SESSION 01' and 'REM SESSION 02', IsoBuster can recognize that multi-session's cue of multi-track is multi-session.

But IsoBuster needs 'REM LEAD-OUT' because IsoBuster's bin has the lead-out area of 1st session and lead-in area of 2nd session.

sarami wrote:

I think 'REM LEAD-IN' and 'REM LEAD-OUT' don't need in multi-session's cue of multi-track (redump'org) format.
1. Because multi-session's cue of multi-track format doesn't have lead-in area and lead-out area.

We need our own variants of these to show the amount of Lead-In and Lead-Out sectors to generate (similar to PREGAP and POSTGAP commands) - http://forum.redump.org/post/67312/#p67312

F1ReB4LL wrote:

We need our own variants of these to show the amount of Lead-In and Lead-Out sectors to generate (similar to PREGAP and POSTGAP commands) - http://forum.redump.org/post/67312/#p67312

I see, then should we add 'REM LEAD-IN' and 'REM LEAD-OUT' and 'REM SEGA-LOGO' etc in dreamcast's cue?

No, dreamcast is a special case, it's not a multisessional disc, it's a disc with 3 independent areas and 3 independent TOCs (SD area, logo area, HD area). They don't need to be connected because the SD area's leadout always ends exactly at 24600, the ring area always starts at 24941 and ends at 38690 and the HD area always starts at 49850. These values cannot be changed, so you don't need the multisessional TOC with the sessions addresses in it. And you don't need to define the sessions, mirror zones and other stuff in cue, because these values should be precoded in the emulator.

And for the multisessional discs you always have the 'main' TOC where all the sessions are listed, so you need to fill the lead-out and lead-in gaps somehow to not to ruin the addressing.

This is how we've been dealing with multisession discs so far:

http://redump.org/disc/39048/
http://redump.org/disc/10299/
http://redump.org/disc/48363/

So what's wrong with using the IsoBuster "standard"? it contains all the relevant information for a functional image? It seems overkill to define lead-out etc, when all other dumps have them excluded.

How are you going to get the correct LBAs if you exclude the lead-out/lead-in sectors?

12 (edited by Jackal 2019-04-11 05:33:56)

Oops yeah, so IsoBuster seems to use:

REM SESSION 01
(cuesheet for session 1)
REM LEAD-OUT [MSF]
REM SESSION 02
(cuesheet for session 2)

Would this be sufficient for our purposes? I would leave out the REM LEAD-IN because it's not part of the IsoBuster standard and the only purpose anyway is to bridge the gap, which is what LEAD-OUT does also.

IIRC, after the REM SESSION 02 there goes REM LEAD-IN [MSF]. Because after the last sector of the 1st section there are a number of Lead-out sectors and after them there are Lead-in sectors of the 2nd session. You need to generate both to have the correct LBAs for the 2nd session tracks.

Do we have a consensus on what's needed?

15 (edited by Jackal 2019-04-12 06:32:04)

I'd say go with the IsoBuster standard. If it has REM LEAD-IN [MSF] and REM LEAD-OUT [MSF] then fine. Adding custom stuff isn't going to help us in any way.

Jackal wrote:

I'd say go with the IsoBuster standard. If it has REM LEAD-IN [MSF] and REM LEAD-OUT [MSF] then fine. Adding custom stuff isn't going to help us in any way.

Erm. IsoBuster allows to map the sessions with their lead-ins/lead-outs only inside a single bin+cue image, it doesn't support split tracks. We need to do the custom stuff in any case. And my idea stated above is to show the amount of inserted generated sectors. Like the PREGAP 00:02:00 and POSTGAP 00:05:00 commands => REM LEAD-OUT 00:03:00 and REM LEAD-IN 00:02:00 (or something similar to not to conflict with native IsoBuster commands).

17 (edited by Jackal 2019-04-12 09:39:32)

https://github.com/libyal/libodraw/blob … t.asciidoc
Looking there and also at other example cuesheets, IsoBuster seems to use only REM LEAD-OUT and REM RUN-OUT. With separate files for each track it would look like this:

REM SESSION 01
FILE "Track 01.bin" BINARY
  TRACK 01 MODE1/2352
    INDEX 01 00:00:00
REM RUN-OUT [MSF]
REM LEAD-OUT [MSF]
REM SESSION 02
FILE "Track 02.bin" BINARY
  TRACK 02 MODE2/2352
    INDEX 01 00:00:00
FILE "Track 03.bin" BINARY
  TRACK 03 AUDIO
    INDEX 00 00:00:00
    INDEX 01 00:01:74
FILE "Track 04.bin" BINARY
  TRACK 04 AUDIO
    INDEX 00 00:00:00
    INDEX 01 00:01:74

The run-out data is considered not to be stored in the file specified by the FILE command if the FILE command was specified after the REM SESSION command.

Jackal wrote:

Looking there and also at other example cuesheets, IsoBuster seems to use only REM LEAD-OUT and REM RUN-OUT.

Yeah. It basically shows where the last session of the first track ends with the REM LEAD-OUT command. And the next track entry shows where the first track of the next session begins. The actual lead-out sectors of the first session/lead-in sectors of the second session/pregap are 'just there' undescribed.

But if we want these to be split to tracks, we need to describe how many lead-out sectors to generate and how many lead-in sectors to generate.

19 (edited by Jackal 2019-04-14 20:31:51)

Having trouble understanding your post and the need for having a REM LEAD-IN.
The REM LEAD-OUT is part of a standard and can be used to define a gap between the splitted track files in order for mounted/burned images to get the correct sector addressing.
What does adding REM LEAD-IN do to improve on this?
Once the standard is broken, we might as well abandon REM LEAD-OUT and REM RUN-OUT and use 'REM GAP' or something instead?

The current REM LEAD-OUT "standard" is used to define the address in the bin _image_ (not track), where the last track of the session ends. And, since we don't use the single bin images, we need 2 new commands to show the CD emulator/burner/whatever_other_tool to insert the needed amount of lead-out and lead-in sectors to fill the gap between tracks.

21 (edited by user7 2019-04-30 01:24:41)

Where are we at with this guys? Redump going offline kind of stuttered this conversation.

22 (edited by Jackal 2019-05-02 06:06:09)

I'd like to know if the TOC/subchannels of multisession discs (and/or rainbow books) really have a "RUN-OUT", "LEAD-OUT" and "LEAD-IN" marked between sessions. If they do, then I wonder why IsoBuster omitted the LEAD-IN.

Can somebody dump any multisessional disc either with cdtoimg_d8 (if it even supports multisessional dumps?) or with swapping + isobuster? And the subchannels separately, since the additional TOC, if it's there, is stored in them.

Leadout sectors are surely there. I think, it is possible the 2nd session starts straight with the pregap sectors of the 1st track without any additional lead-in UNLESS it's a multisessional CD-R. Isobuster ignores the pregaps, so its cues aren't clear enough. Anyway, DIC needs to show not only where the leadout begins, but also where it ends (or its length), otherwise, since the tracks aren't merged into a single image, the address of the 2nd session is unclear.

F1ReB4LL wrote:

DIC needs to show not only where the leadout begins, but also where it ends (or its length)

Uploaded test version
- added: Lead-out length of 1st session in _disc.txt (needs /ms flag)
- fixed: incorrect 'REM SESSION' position.

Logs
http://www.mediafire.com/file/33yj4wjky … og.7z/file

Jackal wrote:

"RUN-OUT"

It seems old isobuster supports it. https://forum.daemon-tools.cc/showthread.php?t=6281
But latest version doesn't output it.

FILE "CD.iso" BINARY

REM ORIGINAL MEDIA-TYPE: CD
CATALOG 4943674011599

  REM SESSION 01        (*)
    TRACK 01 AUDIO
      ISRC JPWP09906010
      INDEX 01 00:00:00
         REM LBA: 0
    TRACK 02 AUDIO
      ISRC JPWP09906020
      INDEX 01 03:35:47
         REM LBA: 16172
    TRACK 03 AUDIO
      ISRC JPWP09906030
      INDEX 01 06:42:30
         REM LBA: 30180
    TRACK 04 AUDIO
      ISRC JPWP09906040
      INDEX 01 08:41:55
         REM LBA: 39130
    TRACK 05 AUDIO
      ISRC JPWP09906050
      INDEX 01 11:28:17
         REM LBA: 51617
    TRACK 06 AUDIO
      ISRC JPWP09906060
      INDEX 01 14:15:62
         REM LBA: 64187
    TRACK 07 AUDIO
      ISRC JPWP09906070
      INDEX 01 17:23:67
         REM LBA: 78292
    TRACK 08 AUDIO
      ISRC JPWP09906080
      INDEX 01 22:08:10
         REM LBA: 99610
    TRACK 09 AUDIO
      ISRC JPWP09906090
      INDEX 01 24:38:62
         REM LBA: 110912
    TRACK 10 AUDIO
      ISRC JPWP09906100
      INDEX 01 27:34:52
         REM LBA: 124102
    TRACK 11 AUDIO
      ISRC JPWP09906110
      INDEX 01 29:52:25
         REM LBA: 134425
    TRACK 12 AUDIO
      ISRC JPWP09906120
      INDEX 01 32:10:72
         REM LBA: 144822
    TRACK 13 AUDIO
      ISRC JPWP09906130
      INDEX 01 34:32:62
         REM LBA: 155462
    TRACK 14 AUDIO
      ISRC JPWP09906140
      INDEX 01 37:32:67
         REM LBA: 168967

  REM LEAD-OUT 41:01:67 (*)
  REM SESSION 02        (*)
    TRACK 15 MODE2/2352
      INDEX 01 43:33:67
         REM LBA: 196042

REM (*) SESSION commands are not supported by all applications

REM Generated by IsoBuster 4.3.0.00 (https://www.isobuster.com)

25 (edited by user7 2019-05-05 04:11:41)

Tried doing a test. Super slow around Creating .scm (LBA) 118540/299510 of my dump. Had to cancel. It is a Audio tracks then data track at end.

https://drive.google.com/file/d/18XpsFO … sp=sharing