Search
lxdream.org :: lxdream/src/bootstrap.h :: diff
lxdream 0.9.1
released Jun 29
Download Now
filename src/bootstrap.h
changeset 1:eea311cfd33e
next26:ad258e3daaa5
author nkeynes
date Sat Mar 13 00:03:32 2004 +0000 (16 years ago)
permissions -rw-r--r--
last change This commit was generated by cvs2svn to compensate for changes in r2,
which included commits to RCS files with non-trunk default branches.
file annotate diff log raw
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/src/bootstrap.h Sat Mar 13 00:03:32 2004 +0000
1.3 @@ -0,0 +1,67 @@
1.4 +/*
1.5 + * IP.BIN related code. Ref: http://mc.pp.se/dc/ip0000.bin.html
1.6 + */
1.7 +#ifndef dc_ipbin_H
1.8 +#define dc_ipbin_H 1
1.9 +
1.10 +#include <sys/types.h>
1.11 +
1.12 +#ifdef __cplusplus
1.13 +extern "C" {
1.14 +#if 0
1.15 +}
1.16 +#endif
1.17 +#endif
1.18 +
1.19 +#define BOOTSTRAP_LOAD_ADDR 0x8C008000
1.20 +#define BOOTSTRAP_SIZE 32768
1.21 +
1.22 +typedef struct dc_bootstrap_head {
1.23 + char hardware_id[16]; /* must be "SEGA SEGAKATANA " */
1.24 + char maker_id[16]; /* ditto, "SEGA ENTERPRISES" */
1.25 + char crc[4];
1.26 + char padding; /* normally ascii space */
1.27 + char gdrom_id[6];
1.28 + char disc_no[5];
1.29 + char regions[8];
1.30 + char peripherals[8];
1.31 + char product_id[10];
1.32 + char product_ver[6];
1.33 + char product_date[16];
1.34 + char boot_file[16];
1.35 + char vendor_id[16];
1.36 + char product_name[128];
1.37 +} *dc_bootstrap_head_t;
1.38 +
1.39 +/* Expansion units */
1.40 +#define DC_PERIPH_WINCE 0x0000001
1.41 +#define DC_PERIPH_VGABOX 0x0000010
1.42 +#define DC_PERIPH_OTHER 0x0000100
1.43 +#define DC_PERIPH_PURUPURU 0x0000200
1.44 +#define DC_PERIPH_MIKE 0x0000400
1.45 +#define DC_PERIPH_MEMCARD 0x0000800
1.46 +/* Basic requirements */
1.47 +#define DC_PERIPH_BASIC 0x0001000 /* Basic controls - start, a, b, arrows */
1.48 +#define DC_PERIPH_C_BUTTON 0x0002000
1.49 +#define DC_PERIPH_D_BUTTON 0x0004000
1.50 +#define DC_PERIPH_X_BUTTON 0x0008000
1.51 +#define DC_PERIPH_Y_BUTTON 0x0010000
1.52 +#define DC_PERIPH_Z_BUTTON 0x0020000
1.53 +#define DC_PERIPH_EXP_DIR 0x0040000 /* Expanded direction buttons */
1.54 +#define DC_PERIPH_ANALOG_R 0x0080000 /* Analog R trigger */
1.55 +#define DC_PERIPH_ANALOG_L 0x0100000 /* Analog L trigger */
1.56 +#define DC_PERIPH_ANALOG_H 0x0200000 /* Analog horizontal controller */
1.57 +#define DC_PERIPH_ANALOG_V 0x0400000 /* Analog vertical controller */
1.58 +#define DC_PERIPH_EXP_AH 0x0800000 /* Expanded analog horizontal (?) */
1.59 +#define DC_PERIPH_EXP_AV 0x1000000 /* Expanded analog vertical (?) */
1.60 +/* Optional peripherals */
1.61 +#define DC_PERIPH_GUN 0x2000000
1.62 +#define DC_PERIPH_KEYBOARD 0x4000000
1.63 +#define DC_PERIPH_MOUSE 0x8000000
1.64 +
1.65 +void parse_ipbin(char *data);
1.66 +
1.67 +#ifdef __cplusplus
1.68 +}
1.69 +#endif
1.70 +#endif
.