SBILinux Beta

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
User avatar
burnerO
DC Developer
DC Developer
Posts: 801
https://www.artistsworkshop.eu/meble-kuchenne-na-wymiar-warszawa-gdzie-zamowic/
Joined: Wed Oct 17, 2001 7:44 pm
Has thanked: 0
Been thanked: 0

SBILinux Beta

Post by burnerO »

This may be a tad late, but I've only recently taken to Linux. I was reading a discussion about Selfboot Inducer running under Wine and I thought it worth a shot. I had the best luck getting console apps working, so please gracefully accept this as is.

Be forewarned, this is a bash script and doesn't feature a gui. It is very straightforward to use though and generates nrg images compatible with NeroLINUX. I'm sure most of the Linux snobs will scoff at my not using CDRecord, but it doesn't work in conjunction with my drive under Linux.

Usage:
Install Wine/NeroLINUX
Extract the sbilinux archive
Save SBI files to the sbi directory
Ensure sbilinux is executable
Execute sbilinux and add your roms when prompted

Assuming everything goes as planned, inducer.nrg will be created in the working directory and can be burned using NeroLINUX.

I need to stress the BETA aspect of this. Please submit feedback so that I may improve it.

*Updates:
I managed to get console apps compiled for all functions, including multi-level menus, single-level menus and Sbi2boot. If you'd like to use Sbi2boot, place a single sbi in the sbi2boot folder.

Added dir2boot functionality. Ensure Ip.bin and 1st_read.bin are in the dir2boot folder.

SBILinux
User avatar
Imerion
Mental DCEmu
Mental DCEmu
Posts: 349
Joined: Thu May 27, 2004 4:32 pm
Has thanked: 0
Been thanked: 0

Post by Imerion »

Nice one! I just tried it and it seems to work fine. It gave me an image. However, when creating it, I got these messages after "Done. 'image.cdi' is ready to burn as a self-boot."
err:int21:INT21_Ioctl_Char int21: unknown/not implemented parameters:
int21: AX 4401, BX 0000, CX ffc0, DX 00c3, SI dab4, DI 8fb0, DS 0000, ES 0189
fixme:int31:DOSVM_Int31Handler Get Processor Exception Handler Vector (0x00) (And this one repeats, with the last piece increasting (0x01), (0x02) and so on.
User avatar
burnerO
DC Developer
DC Developer
Posts: 801
Joined: Wed Oct 17, 2001 7:44 pm
Has thanked: 0
Been thanked: 0

Post by burnerO »

As did I, but the image is created successfully. Older versions of that (bin2boot) didn't generate anything at all.

Hopefully you're able to forgive some of the ugliness of running non-native applications for the tradeoff of it running under Linux.

Further proof that the image is valid.
User avatar
Imerion
Mental DCEmu
Mental DCEmu
Posts: 349
Joined: Thu May 27, 2004 4:32 pm
Has thanked: 0
Been thanked: 0

Post by Imerion »

Yes, I just tried the image and it works all fine! This will really come in handy.
User avatar
burnerO
DC Developer
DC Developer
Posts: 801
Joined: Wed Oct 17, 2001 7:44 pm
Has thanked: 0
Been thanked: 0

Post by burnerO »

Rockin', thanks for the feedback. :wink:
BlackAura
DC Developer
DC Developer
Posts: 9951
Joined: Sun Dec 30, 2001 9:02 am
Has thanked: 0
Been thanked: 1 time

Re: SBILinux Beta

Post by BlackAura »

burnerO wrote:I'm sure most of the Linux snobs will scoff at my not using CDRecord, but it doesn't work in conjunction with my drive under Linux.
Requiring a commercial app just to burn CDs is a bit irritating, certainly. I had to go and hunt down the demo version of NeroLinux.

It does seem unlikely that your drive just doesn't work with cdrecord though. Does the resulting disc not work in the Dreamcast, or does nothing at all work? If it's the former, then it might simply be a problem with using a newer version of cdrecord that requires different parameters. I have a bash script somewhere (if I can find the thing - I might have lost it) that does a good job at burning a Dreamcast disc using cdrecord, so I can upload that somewhere if you'd like.

The app seems to work alright though. No apparent problems here.
User avatar
burnerO
DC Developer
DC Developer
Posts: 801
Joined: Wed Oct 17, 2001 7:44 pm
Has thanked: 0
Been thanked: 0

Post by burnerO »

Using CDRecord or any of its frontends, Gnomebaker/K3b, constantly result in coasters for me under the latest Ubuntu (I know, not the l33test of distros). It's irritating because I'd rather be using CDRecord, but Nero is the only thing that I can use without fear.

That being said, I believe this might be instrumental in getting the proper Linux commands for CDRecord.
BlackAura
DC Developer
DC Developer
Posts: 9951
Joined: Sun Dec 30, 2001 9:02 am
Has thanked: 0
Been thanked: 1 time

Post by BlackAura »

burnerO wrote:Using CDRecord or any of its frontends, Gnomebaker/K3b, constantly result in coasters for me under the latest Ubuntu (I know, not the l33test of distros). It's irritating because I'd rather be using CDRecord, but Nero is the only thing that I can use without fear.
That's the same distro I'm using at the moment. Weird. Do you mind posting the output from these commands?

Code: Select all

cdrecord dev=ATAPI -scanbus
ls -lh /dev/cdrom
hdparm -d /dev/cdrom
That being said, I believe this might be instrumental in getting the proper Linux commands for CDRecord.
Seems to be a bit out of date. There are two main differences. First, IDE CD burners are can no longer be used with cdrecord's normal SCSI driver. You need to use the ATAPI driver instead, either by adding ATAPI: to the beginning of the device ID, or by giving cdrecord a normal device file (like /dev/cdrom). The second issue is that the -xa1 flag changed meaning starting from cdrecord 2.01, and needs to be replaced with -xa.

The commands I usually use for burning a CD look something like:

Code: Select all

dd if=/dev/zero bs=2352 count=300 | cdrecord dev=/dev/cdrom fs=16m speed=4 -tao -multi -audio -
MSINFO="`cdrecord dev=/dev/cdrom -msinfo`"
TRACK_SIZE="`mkisofs -J -R -l -G ip.bin -C "$MSINFO" -q -print-size data_directory`"
mkisofs -J -R -l -G ip.bin -C "$MSINFO" data_directory | cdrecord dev=/dev/cdrom fs=16m speed=4 tsize="$TRACK_SIZE"s -tao -xa -eject -
That's just from memory and glancing at the cdrecord manual page, but it should work. It burns the disc on the fly, without creating an intermediary ISO image file. The commands to burn from an ISO image should be:

Code: Select all

dd if=/dev/zero bs=2352 count=300 of=audio.raw
cdrecord dev=/dev/cdrom speed=4 -tao -multi -audio audio.raw
MSINFO="`cdrecord dev=/dev/cdrom -msinfo`"
mkisofs -J -R -l -G ip.bin -C "$MSINFO" -o image.iso data_directory
cdrecord dev=/dev/cdrom speed=4 -tao -xa -eject image.iso
User avatar
burnerO
DC Developer
DC Developer
Posts: 801
Joined: Wed Oct 17, 2001 7:44 pm
Has thanked: 0
Been thanked: 0

Post by burnerO »

Code: Select all

kyle@ubuntu:~$ cdrecord dev=ATAPI -scanbus
Cdrecord-Clone 2.01.01a01 (i686-pc-linux-gnu) Copyright (C) 1995-2004 Joerg Schi lling
NOTE: this version of cdrecord is an inofficial (modified) release of cdrecord
      and thus may have bugs that are not present in the original version.
      Please send bug reports and support requests to <cdrtools@packages.debian. org>.
      The original author should not be bothered with problems of this version.

cdrecord: Warning: Running on Linux-2.6.12-10-386
cdrecord: There are unsettled issues with Linux-2.5 and newer.
cdrecord: If you have unexpected problems, please try Linux-2.4 or Solaris.
scsidev: 'ATAPI'
devname: 'ATAPI'
scsibus: -2 target: -2 lun: -2
Warning: Using ATA Packet interface.
Warning: The related Linux kernel interface code seems to be unmaintained.
Warning: There is absolutely NO DMA, operations thus are slow.
Error: Cannot gain SYS_RAWIO capability.Is cdrecord installed SUID root?
: Operation not permitted
Using libscg version 'ubuntu-0.8ubuntu1'.
cdrecord: Warning: using inofficial version of libscg (ubuntu-0.8ubuntu1 '@(#)sc sitransp.c      1.91 04/06/17 Copyright 1988,1995,2000-2004 J. Schilling').
scsibus0:
        0,0,0     0) 'Memorex ' 'DVD+/-RW Dual-X1' '1.05' Removable CD-ROM
        0,1,0     1) 'MT1316B ' 'BDV212B         ' '0.36' Removable CD-ROM
        0,2,0     2) *
        0,3,0     3) *
        0,4,0     4) *
        0,5,0     5) *
        0,6,0     6) *
        0,7,0     7) *

Code: Select all

kyle@ubuntu:~$ ls -lh /dev/cdrom
lrwxrwxrwx  1 root root 3 2006-03-08 09:07 /dev/cdrom -> hdc

Code: Select all

kyle@ubuntu:~$ hdparm -d /dev/cdrom

/dev/cdrom:
 using_dma    =  0 (off)
BlackAura
DC Developer
DC Developer
Posts: 9951
Joined: Sun Dec 30, 2001 9:02 am
Has thanked: 0
Been thanked: 1 time

Post by BlackAura »

The only thing that looks wrong is that DMA is disabled for your CD drive. That'd only cause slower burns - it shouldn't make them fail unless burnfree is disabled.
User avatar
curt_grymala
Theme Inducer
Theme Inducer
Posts: 4274
Joined: Fri May 30, 2003 12:14 pm
Location: Wherever I'm Needed
Has thanked: 0
Been thanked: 0
Contact:

Post by curt_grymala »

Sorry to take this topic slightly OT, but what does the DMA warning mean? I got the same exact warning. Is it something that's easy to enable?
Also, when I tried your third command, I got "bash: hdparm: command not found".
DCHelp - A Newbie's Best Friend
DC Evolution - Disc Images
DreamZone Forums

I Refuse To Help Anyone That Says They've Tried Everything.
BlackAura
DC Developer
DC Developer
Posts: 9951
Joined: Sun Dec 30, 2001 9:02 am
Has thanked: 0
Been thanked: 1 time

Post by BlackAura »

This DMA warning?

Code: Select all

 Warning: Using ATA Packet interface. 
 Warning: The related Linux kernel interface code seems to be unmaintained. 
 Warning: There is absolutely NO DMA, operations thus are slow. 
Doesn't really mean a thing. It's basically Joerg Schilling (the author of cdrecord) being an ass, and complaining (as he often does) that some component of Linux doesn't work exactly as it does on Solaris. Note the complaint a little further up suggesting you revert to Linux 2.4, or Solaris?

The guys who wrote Nero don't seem to have had any problems with it. Same deal with growisofs. Same deal with cdrdao (which uses the same SCSI libraries that cdrecord does).

Anyway, the hdparm program is in /sbin, which might not be on your path. Try:

Code: Select all

sudo /sbin/hdparm /dev/cdrom
No Name
DCEmu Ultra Poster
DCEmu Ultra Poster
Posts: 1837
Joined: Sat May 04, 2002 10:40 am
Location: Avon, Conn. Posts: Yes
Has thanked: 0
Been thanked: 0
Contact:

Post by No Name »

My experience with the newest Ubuntu on my laptop is that when DMA is enabled, all burns fail. The previous version of Ubuntu worked fine with DMA enabled though. Haven't cared enough to track down the issue though, I rarely burn CDs.
Image
mmm.... n00b blood
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:

Post by emptythought »

Figured I'd say something since I mentioned I'd maybe do BootDreams linux. If I were to do anything for linux, the most I would do is a CDI burner by using cdirip and CDrecord and that's if I can get HBasic to run without crashing.
User avatar
curt_grymala
Theme Inducer
Theme Inducer
Posts: 4274
Joined: Fri May 30, 2003 12:14 pm
Location: Wherever I'm Needed
Has thanked: 0
Been thanked: 0
Contact:

Post by curt_grymala »

Hey - I just noticed that there are proggies called cdi2iso and nrg2iso for Linux. Would these do us any good, or are they going to generate mal-formed ISO's because of the multi-session thing?
DCHelp - A Newbie's Best Friend
DC Evolution - Disc Images
DreamZone Forums

I Refuse To Help Anyone That Says They've Tried Everything.
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:

Post by emptythought »

Last time I tried the win32 build of nrg2iso it created a mal-formated ISO because of the multisession thing. I never seen cdi2iso but I assume the same goes for it as nrg2iso.
User avatar
Christuserloeser
Moderator
Moderator
Posts: 5948
Joined: Thu Aug 28, 2003 12:16 am
Location: DCEvolution.net
Has thanked: 10 times
Been thanked: 0
Contact:

Post by Christuserloeser »

Could what's acchieved with CDI4DC Linux be helpful for SBILinux ?
http://www.dcemulation.org/phpBB/viewtopic.php?t=84107
Insane homebrew collector.
miracleman
DCEmu Junior
DCEmu Junior
Posts: 40
Joined: Sun Dec 29, 2002 1:46 pm
Has thanked: 0
Been thanked: 0

Getting Sbilinux to generate a cdi image

Post by miracleman »

I've been using SBILinux to create a .cdi file by removing the line cdi2nero and removing the rm image.cdi line. I've then been burning the image with milksheik's burndc-cdi.
Also sbibuilder works perfectly under WINE
User avatar
Darksaviour69
Mental DCEmu
Mental DCEmu
Posts: 382
Joined: Thu Jul 01, 2004 6:58 pm
Location: Ireland
Has thanked: 0
Been thanked: 0
Contact:

Post by Darksaviour69 »

does anyone have SBILinux as burnerO link is dead

edit: its ok i found it
Post Reply