The Wayback Machine - http://web.archive.org/web/20060714130044/http://www.m17n.org:80/linux-sh/dreamcast/ecos

eCos/RedBoot on Dreamcast

[Japanese] [English] [Back]

Introduction

SEGA Dreamcast ���� eCos/RedBoot for Linux/SH �������Υڡ����Ǥ���

Memory map

Address Contents Description
0x8c000000 Dreamcast BIOS
work area
This region contains parameter blocks for kernel. Set by exec just before kernel booting.
Boot parameter block at 0x8c001000.
Command line string at 0x8c001100.
0x8c010000 1ST_READ.BIN
eCos+RedBoot
Loaded from CD-ROM by Dreamcast firmware.
0x8c0?????

Free area
0x8c210000 Linux compressed kernel
zImage
Compressed kernel (arch/sh/boot/zImage) is usually located here by the linker.
0x8c2?????

Free area
0x8c400000 Initial ramdisk image If your initrd image is to be loaded at this region, following boot parameters should be set by exec.
INITRD_START: 0x00400000
INITRD_SIZE: 0x00400000
0x8c800000




0x8d000000
Free area

Linux Kernel Booting HOWTO

�����Ǥ� eCos/RedBoot on Dreamcast �� Linux kernel ��ư���뤿��μ������Ū���������ޤ��� �����˻���Ȥ��Ǥ���褦�ˡ� Dreamcast bootable CD-R ���뤿��� eCos/RedBoot �Х��ʥ�ȡ� ���̤��줿 Linux kernel �� ELF �����Х��ʥꡢzImage ���Ѱդ��Ƥ��ޤ� (vmlinux �� zImage �Ϥɤ��餫����������Ф褤�Ǥ�)��

1ST_READ.BIN ���̾�μ��� CD-R ���᡼�����äƾƤ��Ƥ���������

eCos/RedBoot �Υͥåȥ����ǽ��Ȥ����� �ޤ������Фν����򤹤�ɬ�פ�����ޤ��� �ʲ��Υ����Ф�Ʊ���ޥ����ư�����Ƥ��������� ������ TFTP �� Linux kernel �����������ɤǤ���褦�ˤ��Ƥ����Ƥ���������

Dreamcast �� eCos/RedBoot ��ư���ޤ��� ������ BOOTP �����Ф��� IP ���ɥ쥹������Ǥ������ϡ� �ӥǥ��ȥ��ꥢ��ݡ��Ȥ˼��Τ褦�ʵ�ư��å������� RedBoot prompt �����Ϥ���ޤ���

IP: 192.168.0.248, Default server: 192.168.0.254

RedBoot(tm) bootstrap and debug environment - built 04:32:39, May  9 2001

Copyright (C) 2000, 2001, Red Hat, Inc.

RAM: 0x8c000000-0x8d000000, 0x8c03bab8-0x8d000000 available
RedBoot> 

RedBoot �ϥ��ꥢ��ݡ��Ȥʤ��� TCP ��³(telnet dreamcast 9000)�� ���뤳�Ȥ��Ǥ��ޤ��� ��ǰ�ʤ��� Dreamcast �����ܡ��ɤ䥳��ȥ�����ˤ�����Ϥޤ��Ǥ��ޤ��� help ���ޥ�ɤǡ����Ѳ�ǽ�ʥ��ޥ�ɤδ�ñ��������ɽ������ޤ��� �ܤ��������ˡ�� RedBoot �ޥ˥奢�� �򻲾Ȥ��Ƥ���������

% telnet dreamcast 9000
Trying 192.168.0.248...
Connected to dreamcast.ta.keshi.org.
Escape character is '^]'.
RedBoot> 
RedBoot> help
Manage machine caches
   cache [ON | OFF]
Compute a 32bit checksum [POSIX algorithm] for a range of memory
   cksum -b <location> -l <length>
Display (hex dump) a range of memory
   dump -b <location> [-l <length>]
Execute an image
   exec [-b <parameter block addr>]
        [-m <mount rdonly flags>]
        [-f <ramdisk flags>]
        [-r <root device>]
        [-l <loader type>]
        [-i <initrd start addr>]
        [-j <initrd size>]
        [-c "kernel command line"]
        [<entry point>]
Execute code at a location
   go [-w <timeout>] [entry]
Help about help?
   help [<topic>]
Load a file
   load [-r] [-v] [-d] [-h <host>] [-m {TFTP | xyzMODEM}]
        [-b <base_address>] <file_name>
Network connectivity test
   ping [-v] [-n <count>] [-l <length>] [-t <timeout>] [-r <rate>]
        [-i <IP_addr>] -h <IP_addr>
Reset the system
   reset 
Display RedBoot version information
   version 
RedBoot>

load ���ޥ�ɤ�Ȥäơ� �����Ф��鰵�̤��줿 Linux kernel �� Dreamcast �Υ����ž�����ޤ��� ž���ץ��ȥ���ˤ� TFTP �� XMODEM, YMODEM ���Ȥ��ޤ���

RedBoot> load vmlinux
   Type     Offset   VirtAddr PhysAddr FileSiz  MemSiz   Flags    Align
00 00000001 00010000 8c210000 8c210000 000adde2 000ba420 00000007 00010000
Entry point is 0x8c210000
RedBoot> 
ELF �� SREC �Ǥʤ��ե����������Υ�����֤�ľ��ž���������Ȥ��ϡ� load ���ޥ�ɤ� -r, -b ���ץ������ɲä��Ƥ���������
RedBoot> load -r -b 0x8c210000 zImage
Raw file loaded 0x8c210000-0x8c2bdde2
RedBoot> 

�Ǹ�� exec ���ޥ�ɤ�Ȥä� Linux kernel ��¹Ԥ��ޤ���

RedBoot> exec
Now booting linux kernel (entry 0x8c210000)
MOUNT_RDONLY  : 0x00000000
RAMDISK_FLAGS : 0x00000000
ORIG_ROOT_DEV : 0x00000000
LOADER_TYPE   : 0x00000000
INITRD_START  : 0x00000000
INITRD_SIZE   : 0x00000000
COMMAND LINE  : mem=16M console=ttySC1,115200 console=tty0

$Id: ecos.ja.html,v 1.7 2001/06/03 14:50:28 yaegashi Exp $
Written by Ȭ�ų� ��� <t@keshi.org> <takeshi@yaegashi.jp>