Port-dreamcast archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: dhcp/tftp boot cd?



martin%duskware.de@localhost wrote:

> Hmm, I wonder if we should create "options NFS_CHAINBOOT", use the 
> nfs_mountroot code and if that option and kloader are present, instead
> of exec'ing init do a "reboot $path-received-from-dhcp" (w/o ever going to
> userland).

IMHO, such hacked features should be handled in userland.

> Yes, works for me too. The way there was a bit bumpy though: my gdrom drive
> seems to be "ageing" and does not like all CDs I burned.

I have the similar trouble on recent boot.

It looks GD-ROM drive doesn't like CD-R burned on modern DVD-R drives.
CD-Rs burned on an old "true" CD-R/RW only drive work fine on my DC.

> Not having ever
> created a working CD before, I was a bit unsure I followed the documented
> process correctly, but after a few tries (different CDR drives) and using
> cdrecord speed=1 I finally got a working ipupload client CD.

Just FYI...
---
#

KERNEL_BIN?=netbsd-GENERIC_MD.bin
FTP_HOST?=ftp.NetBSD.org
#FTP_PATH=pub/NetBSD/NetBSD-4.0
#FTP_PATH=pub/NetBSD/NetBSD-5.0
#FTP_PATH?=pub/NetBSD-daily/netbsd-5/200904120000Z
FTP_PATH?=pub/NetBSD-daily/HEAD/200904140000Z

SCRAMBLE_C_URL?=http://mc.pp.se/dc/files/scramble.c
MAKEIP_TAR_GZ_URL?=http://mc.pp.se/dc/files/makeip.tar.gz

FTP?=   ftp
#FTP=   tnftp


CDRDEV?= /dev/rcd0d
#CDRDEV= /dev/rcd1d
#CDRDEV= /dev/rcd0c
CDRSPEED?= 16

CDRECORD?= cdrecord
CDRECORD_OPT?= -dev=${CDRDEV}:@ -speed=${CDRSPEED} driveropts=burnfree
MKISOFS?= mkisofs

all:    bootcd

bootcd: data.raw audio.raw
        ${CDRECORD} ${CDRECORD_OPT} -multi -audio audio.raw
        ${CDRECORD} ${CDRECORD_OPT} -multi -xa data.raw

audio.raw:
        dd if=/dev/zero bs=2352 count=300 of=${.TARGET}

data.raw: IP.BIN data.iso
        ( cat IP.BIN ; dd if=data.iso bs=2048 skip=16 ) > ${.TARGET}

data.iso: 1ST_READ.BIN
        ${MKISOFS} -l -C 0,11702 -o ${.TARGET} 1ST_READ.BIN

1ST_READ.BIN: scramble ${KERNEL_BIN}
        ./scramble ${KERNEL_BIN} ${.TARGET}

${KERNEL_BIN}: ${KERNEL_BIN}.gz
        zcat ${KERNEL_BIN}.gz > ${KERNEL_BIN}

${KERNEL_BIN}.gz:
        ${FTP} ftp://${FTP_HOST}/${FTP_PATH}/dreamcast/binary/kernel/${.TARGET}

scramble: scramble.c
        cc -O -o ${.TARGET} scramble.c

scramble.c:
        ${FTP} ${SCRAMBLE_C_URL}

IP.BIN: makeip
        ./makeip ip.txt IP.BIN

makeip: makeip.tar.gz
        tar -zxf makeip.tar.gz
        cc -O -o makeip makeip.c

makeip.tar.gz:
        ${FTP} ${MAKEIP_TAR_GZ_URL}

clean:
        rm -f data.raw data.iso audio.raw 1ST_READ.BIN

cleandir:
        ${MAKE} clean
        rm -f ${KERNEL_BIN}
        rm -f IP.BIN
        rm -f makeip scramble
        rm -f IP.TMPL ip.txt makeip.c

---
Izumi Tsutsui


Home | Main Index | Thread Index | Old Index