The Wayback Machine - https://web.archive.org/web/20100315053029/http://krypt.dyndns.org:81/dreamcast/browsers/
DC Browser Reverse Engineering Project
Back to Index
[ The Browsers | Browser Versions | A little history | Special VMS Features | x-avefront commands | Needed Tools | PlanetWeb IRC | String Dumps | DreamKey 1.0 Hidden Movie | PlanetWeb GINSU | Links ]
Note
THIS DOCUMENT IS NOT COMPLETE, AND IS A WORK IN PROGRESS.
IF YOU KNOW SOMETHING I DONT ABOUT A BROWSER THEN E-MAIL kRYPT (krypt@mountaincable.net)
[2/19/04] Wow, I never thought this page would get another
update. But since Yoann from France has decided to provide me with more
information, I figured it should be posted here. DreamKey info
updated.
[1/11/02] Updated DreamKey 3 Info (thanks Karsten). Updated
Known Browser Flavors (added a shitload). Added DreamPassport 3.15
(anyone know anything?) to browser list.
[8/14/02] Updated DreamPassport 3 JAP x-avefront commands again
(thanks curtis), updated tools section, added navigation bars above, and
updated links section.
[7/5/02] More info should be coming to this page soon. Updated
with some links, DreamKey 3.0 info, and more navigation commands (if
somsone has DP3 Jap, please confirm them).
[4/13/02] Updated known browser flavors with new browsers from access logs to this site.
[4/9/02] Minor updates.
[4/8/02] Long time no update. I got donated a copy of DreamKey v1, and I'll be running some more tests on it later.
About
Ahh... the DreamCast Web Browser. This application has made the
dreamcast attractive to not only gamers, but those wishing a low-cost
web-browsing and e-mail platform. However, I have a different future in
mind for it...I want to be able to create customized browser CDs with
my own content.. Images, MP3s, even Emulators or Homebrew DC games.
The Browsers
Now, lets get a bit more technical here, as to how exactly I plan to
accomplish this perticular marvelous feat of wizardry.
To begin with, here is a chart of available browsers, and to my
knowledge their features. Click on the version number to download an
image:
If you know of any information here that is wrong, or have any additional information (* signifies unconfirmed data), e-mail me.
Manufacturer |
Version |
Region/Language |
BBA |
JavaScript |
Flash |
Java |
MP3 |
VMU |
SFD |
VoIP |
GINSU |
IRC |
PlanetWeb | v1.0 |
English/US | NO | v1.2 * | NO | NO | NO | YES | NO | NO | NO * | YES |
v2.004 | English/US | NO | v1.2 * | YES | NO | YES | YES * | YES | YES | YES | YES |
v2.606 (2) | English/US | NO | v2.0 * | YES | NO | YES | YES * | YES | YES | YES | YES |
v3.0 | Recent Comercial Release. Order Here, Or Here. |
English/US | YES | v2.0 * | YES | YES | YES | YES | YES | YES | YES | YES |
DreamPassport |
v1.0 |
Nothing is known. Know something? E-mail me. |
v2.0 | English/US | YES | v1.2 * | YES | YES | NO | YES | YES | NO | NO | YES * |
v3.0 (PSO) (2) | JAP | YES * | v2.0 | YES | YES | NO | YES | YES | NO | NO | YES |
v3.16 (CT2) | JAP | YES | v2.0 * | YES | YES | NO | YES | YES | NO | NO | YES |
v3.15 | Started appearing in my logs, seems to be in US version of PSOv2. I know nothing. |
v3.2 | aka Premium. I know nothing, if you do, tell me. |
DreamKey |
v1.0 | Europe | NO | 1.2 | YES (v?) | NO | NO | YES | NO * | NO | NO | NO |
v1.5 | Europe | NO | YES (1.2?) | YES (v?) | NO | NO | YES * | NO * | NO | NO | NO |
v2.0 | Europe | NO | YES (1.2?) | YES (v?) | NO | YES | YES | YES * | NO | NO | NO |
v3.0 | Available free to current users. Website (click on Press) |
Europe | NO | 2.0 * | YES (v3) | NO | NO | YES | YES | NO | NO | NO |
Known (verified) Browser Flavors:
DreamPassport
Mozilla/3.0 (DreamPassport/2.1; SEGA/BROADBANDPASSPORT)
Mozilla/3.0 (DreamPassport/3.0)
Mozilla/3.0 (DreamPassport/3.0; SEGA/QUIZ_MEGAMI)
Mozilla/3.0 (DreamPassport/3.0; CAPCOM/Spawn)
Mozilla/3.0 (DreamPassport/3.0; CAPCOM/CAPCOMVSSNK2)
Mozilla/3.0 (DreamPassport/3.0; CAPCOM/CAPCOMVSSNKPRO)
Mozilla/3.0 (DreamPassport/3.0; CAPCOM/SPF2XM)
Mozilla/3.0 (DreamPassport/3.0; CAPCOM/heavymetal
Mozilla/3.0 (DreamPassport/3.0; SONICTEAM/PSO)
Mozilla/3.0 (DreamPassport/3.0; CRI/AEROI)
Mozilla/3.0 (DreamPassport/3.0; BANDAI/GUNDAMBATTLEONLINE)
Mozilla/3.0 (DreamPassport/3.0; CRAZYGAMES/ILLBLEED)
Mozilla/3.0 (DreamPassport/3.0; Hitmaker/CrazyTaxi2)
Mozilla/3.0 (DreamPassport/3.0; isao/MyDiGiDiGi)
Mozilla/3.0 (DreamPassport/3.0; isao/MyDiGiRabi)
Mozilla/3.0 (DreamPassport/3.0; isao/MyDiGiPyo)
Mozilla/3.0 (DreamPassport/3.0; isao/MyDiGiPeti)
Mozilla/3.0 (DreamPassport/3.15; MediaFactory/Culdcept2)
Mozilla/3.0 (DreamPassport/3.15; SONICTEAM/PSOV2)
Mozilla/3.0 (DreamPassport/3.15; xdp3/dp3 custom)
Mozilla/3.0 (DreamPassport/3.2)
Planetweb
Mozilla/3.0 (compatible; Planetweb/1.125 JS SSL US Gold; Dreamcast US)
Mozilla/3.0 (Planetweb/DPF 1.00a RUSHHOUR; Dreamcast US)
Mozilla/3.0 (Planetweb/1.219 JS SSL US; Dreamcast US)
Mozilla/3.0 (Planetweb/2.004 JS SSL US; Dreamcast US)
Mozilla/3.0 (Planetweb/2.100 JS SSL US; Dreamcast US)
Mozilla/3.0 (Planetweb/2.606 JS SSL VoIP US; Dreamcast US)
Mozilla/3.0 (Planetweb/2.609 JS US; Dreamcast US)
Mozilla/3.0 (Planetweb/2.613 JS SSL VoIP US; Dreamcast US)
Mozilla/3.0 (Planetweb/3.0d JS SSL pJava US; Dreamcast US)
DreamKey
Mozilla/3.0 (DreamKey/1.0)
Mozilla/3.0 (DreamKey/1.0; SEGA)
Mozilla/3.0 (DreamKey/1.0; SEGA/Custom)
Mozilla/3.0 (DreamKey/1.0; SEGA/SegaGTSOE)
Mozilla/3.0 (DreamKey/1.0; SEGA/SegaGTSOA)
Mozilla/3.0 (DreamKey/1.0; SEGA/ChuChu)
Mozilla/3.0 (DreamKey/1.0; SEGA/JETSETRADIO)
Mozilla/3.0 (DreamKey/1.0; SONICTEAM/PSOUS)
Mozilla/3.0 (DreamKey/1.0; BIZARRECREATIONS/MetropolisStreetRacer)
Mozilla/3.0 (DreamKey/1.0; Hitmaker/CrazyTaxi2)
Mozilla/3.0 (DreamKey/2.0)
Mozilla/3.0 (DreamKey/3.0; SONICTEAM/PSOV2EU)
TODO: More Info about browser version strings on this page and this page.
History
Lets start at the beginning... The very first dreamcast web browser was
created by PlanetWeb for Sega. I don't know if v1 ever existed, and if
it did, I have never been able to get a hold of it to analyze. However,
v2.0 and v2.6 are both available out in the wild (and 2.6 was given out
for free by sega, but no more).
This browser wasn't the most packed with features or anything, it was a
bit slow, but it has one very attractive characteristic. It supports GINSU
and so will allow us to launch programs (using a special URL) from
right inside the web browser! This PlanetWeb v2.6 browser is a very
attractive choice for a menu platform, even if it can't show that much
content (but it will play MP3s, although they must be smaller then 6MB).
It doesn't use any .PVR files for the US, everything is either .GIF or
.JPG .. so there are tons of small files, and if they're not put onto
the cd in the proper order it would slowly destroy your poor dreamcast.
It was also lacking support for Java.
While all this is going on, Sega released a different web browser to
europe called DreamKey. To sum it up, it sucked. It wouldn't let you
use your own ISP, only the Sega one, had support for almost nothing (I'm
not sure exactly what it did support as I've never been able to track
down a copy). Basically, it's uninteresting, as it doesn't do much but
browse the web (and sometimes not even that, if you're using a version
that's built into a game). If you have one of these in-game DreamKeys
and want to try to browse the web with it, Read This
The DreamPassport browser is one that that's interesting. It supports
almost everything you could want, even Java, is stable, and has BBA
support. It however, doesn appear support GINSU so can't be used to
launch other programs. The UI is contained inside .PVR files, which are
much more efficient, but more difficult to customize. The string
settings however (and general browser settings) are stored inside
/DP3.INI (or /DP2.INI) and /DPETC/MESSAGES.INI in the browser CD. Using
messages.ini it should be theoretically possible to translate at least
parts of 3.0+ into English. It's interesting to note that v3.0 has been
ripped from Phantasy Start Online, and that v3.16 came from Crazy Taxi
2.
Later versions of PlanetWeb and DreamPassport supported dreamcast
extensions to web pages, mainly the ability to make the controller shake
(if that addon was installed), as well as show images on the VMS (as
well as download games, trade saves, and lots of other cool stuff).
I've collected some of the necessary HTML code and tools for these VMS
features below. But first, lets go into more techincal detail on the
browsers.
VMS Features of DreamPassport and PlanetWeb
There are 3 special tags that can be used in a page to dreamcast-enhance
it. One will allow you to display animation on the LCD, another allow
an easy way to scroll a message across the LCD, and the last will make
the controller vibrate.
Vibrating
To cause the DC Rumble Pack to vibrate, you have to insert the following
(or similar) EMBED tag into your code (explanation follows).
type | Tells the DC to shake it up |
name | A name assigned to this particular vibrate configuration |
loop | How many times to loop before stopping |
freq | Vibration Frequency |
power | How hard to shake (1-9) |
on | Time to shake for |
off | Time not to shake for |
hidden | Should be true |
autostart | Set to true if you want to start shaking when page loads, otherwise false |
Using JavaScript, we are able to manipulate one or more vibrate
configurations, and turn them on or off as we please. If the below
JavaScript code is placed onto a page:
function vib1_on() {
if(navigator.userAgent.indexOf("DreamPassport") != -1 ) {
document.embeds["vib1"].vibrate=1;
}
}
function vib1_off() {
if(navigator.userAgent.indexOf("DreamPassport") != -1 ) {
document.embeds["vib1"].vibrate=0;
}
}
Then if the target of a link, for example, were to read
"javascript:vib1_on()" then once the link was clicked, the shaking would
start.
You can define more then 1 vibrating configuration per page, just make
sure you give them unique names, and only one can be set to autostart.
Scrolling a message on the LCD
Use the below code to make your page scroll a message across the LCD of
the VMU when a DreamCast browser is used to access it (explanation
follows):
type | Tells the DC to shake it up |
name | A name assigned to this particular scroller configuration |
loop | How many times to loop before stopping (or infinite) |
scrolldelay | How long to wait |
scrollammount | How much to scroll by |
text | The text that will be scrolled |
hidden | Should be true |
direction | Which way to scroll (left, or right) |
behavior | scroll, slide, or alternate |
font | Font size |
Using JavaScript, we are able to turn the scroller on and off. If the below JavaScript code is placed onto a page:
function tick1_toggle() {
if(navigator.userAgent.indexOf("DreamPassport") != -1 ) {
(document.embeds["tick1"].display == 0) ?
document.embeds["tick1"].display = 1
: document.embeds["tick1"].display = 0;
}
}
Then a link to it will toggle the scroller (read above for more info). A
modified version of the above _on and _off procedudes would also work
fine.
Showing an Image on the LCD
If you create your image and save it as an .LCD file (using Dream Animator or using a command-line conversion tool) then you can make it display on your visitor's VMUs using the below code:
I think it's fairly straightforward and requires little explanation,
other then to note that port and slot are optional. The JavaScript code
above will work for this embed as well.
Special URLs
There are a number of special urls supported by recent PW and DP
browsers, and here's a list of the ones I'm aware of. This list was
based upon this list and this list. Please note that this is NOT a complete list, the only way to get one is to look at the String Dumps below.
Navigation commands:
x-avefront://---.dream/util/visit
x-avefront://a--.avefront/navigation/backward
x-avefront://a--.avefront/navigation/forward
x-avefront://a--.avefront/navigation/reload
Menu options:
x-avefront://---.dream/proc/menu/bookmark
x-avefront://---.dream/proc/menu/jump
x-avefront://---.dream/proc/menu/mail
x-avefront://---.dream/proc/menu/chat
x-avefront://---.dream/proc/menu/help
x-avefront://---.dream/proc/menu/option
x-avefront://---.dream/proc/menu/connect
x-avefront://---.dream/proc/menu/disconnect
x-avefront://---.dream/proc/menu/exit
x-avefront://---.dream/proc/menu/back
x-avefront://---.dream/proc/menu/forward
x-avefront://---.dream/proc/menu/reload
x-avefront://---.dream/proc/menu/zoom
x-avefront://---.dream/proc/menu/file
x-avefront://---.dream/proc/menu/sntp
x-avefront://---.dream/proc/menu/urlchat
x-avefront://---.dream/proc/menu/pmsg_list
x-avefront://---.dream/proc/menu/home
x-avefront://---.dream/proc/menu/accountinfo
x-avefront://---.dream/proc/menu/provider
x-avefront://---.dream/proc/menu/modem
DreamPassport 3 JAP Specific (thanks curtis for details!):
Note: All except number two and nine are genesis/megadrive jap version games.
(game, Onsen) x-avefront://---.dream/proc/menu/launch/1
(Dream Flyer, a DC e-mail program) x-avefront://---.dream/proc/menu/launch/2
(game, Columns) x-avefront://---.dream/proc/menu/launch/3
(game, Ghouls and Ghosts) x-avefront://---.dream/proc/menu/launch/4
(game, Flicky) x-avefront://---.dream/proc/menu/launch/5
(game, Pengo) x-avefront://---.dream/proc/menu/launch/6
(game, Puyo) x-avefront://---.dream/proc/menu/launch/7
(game, unknown title) x-avefront://---.dream/proc/menu/launch/8
(browser, Dream Passport 2.1) x-avefront://---.dream/proc/menu/launch/9
x-avefront://---.dream/proc/help/enter=file:/dpwww/help/helptop/index.html
x-avefront://a--.avefront/navigation/backward
x-avefront://a--.avefront/navigation/forward
(send ch@btalk) x-avefront://---.dream/proc/pri_msg/?id=(ID)&name;=(NAME)
x-avefront://---.dream/proc/menu/file
x-avefront://---.dream/proc/help/exit
Multi-Media Playback (append path to file being played at the end):
x-avefront://---.dream/proc/play/mpeg/
x-avefront://---.dream/proc/play/adx/
Execute other programs (as per \GINSU.INI), PlanetWeb only! Replace **ginsuname** with section name from ginsu.ini.
x-avefront://---.dream/exec/**ginsuname**
Built-in program: Debugger (PlanetWeb v1 - v2.004) - thanks Curtis:
x-avefront://---.dream/exec/teapot
VMS (will load a web page from VMU):
x-avefront://---.dream/vms/load/**pagename**
Tools
Can't do this empty handed.. You're likely to need a few things. This
section is still incomplete, but better then it used to be.
CD Image Manipulation/Extraction
CDMage
ISOBuster
bin2boot
cdirip 0.6.2
cdi2nero 0.9.9
CD Recording
CDRecord & MKISOFS (you WILL need this one, even if your burner won't support it)
DiscJuggler
DiscJuggler Jinxter Driver (if your CDR isn't supported)
CDR-WIN
Nero
PlanetWeb IRC
All versions of the planetweb browsers apparently supported IRC, but only one room at a time, and using a special url:
pwchat://chat.freedomchat.net:6667/#chatzone
That should be pretty self-explanitory.
(thanks nbvampman for the info)
String Dumps
I've analyzed the binaries of the below browsers and extracted all the
strings. If you're curious, take a look at what's contained in the
browser. This includes a *complete* list of special URLs, however, some
of them may not work, others may work in unexpected ways. A list of
common special URLs with descriptions and syntax comes later.
Generated with strings -o -n 10 1st_.read.bin
Crap has been cleaned out for your enjoyment.
(Do NOT view in a web browser. Save to HD and use Wordpad)
PlanetWeb v2.6
DreamPassport v3.0
DreamKey v1.0 (possibly others?) Hidden Movie
Open the URL bar, delete what is there, and enter 'about:' without the quotes to view the hidden movie (thanks nbvampman)
GINSU Information (PlanetWeb only)
The PlanetWeb Browser, up to v2.6 (and possibly 3, although this has not
been confirmed) had support for launching external applications. The
method by which it did this is called GINSU. Basically, you provide
information about each application you want to launch in a file called
GINSU.INI, in the root folder of your PlanetWeb CD.
The layout is fairly simple.. the file starts with a [GINSU] section,
you should leave it alone. What follows that, are the sections that
describe an app, lets see an example section:
[DP]
Ginsu.Path = \
Ginsu.Command = \2_DP.BIN
Ginsu.FirstGDDA = 4
I have not tried taking out FirstGDDA, so I don't really know if it's
needed, but I've always left it in there. I think it's pretty self
explanitory... More Information about GINSU is available on Front-End Comparison page.
SFD/SFA Information (Native DC Audio/Video Formats)
PVR Information (used in DP GUI)
DPS Information (used in DP GUI)
These sections are not yet complete.
Links
Useful information...
GameWinner's DC Web Browser Page - Gives a few secrets relating to the PlanetWeb v2.0 and v2.6 browsers.
DCBG Homepage - Many good FAQs and Information
The Founders Site - A large collection of tools for DC web browsers.
DC Bookmarklet Lab - Browser tools written in JS, used from within bookmarks.
VMU Uploader - Lots of tools to use with PlanetWeb browsers.
DCEmulation Forums - Got questions? The answers likely lay here.
Afterward
This page is not done.
This page contains innacurate or incomplete information.
This page is out of order.
This page should likely not be all one page.
However, I am but one man, and I'm slowly putting up all my research. E-mail me if you have something you'd like to contribute.