Dos for DC?

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.
tom61a
Insane DCEmu
Insane DCEmu
Posts: 248
https://www.artistsworkshop.eu/meble-kuchenne-na-wymiar-warszawa-gdzie-zamowic/
Joined: Thu Mar 28, 2002 3:36 pm
Location: USA
Has thanked: 0
Been thanked: 0

Post by tom61a »

That's why each DC has the Windows CE logo on the front of the machine.
Look closer, it says 'Compatible with Microsoft Windows CE'

Curious, are you just trolling, or do you honestly beleive what you said?
User avatar
Quzar
Dream Coder
Dream Coder
Posts: 7499
Joined: Wed Jul 31, 2002 12:14 am
Location: Miami, FL
Has thanked: 4 times
Been thanked: 10 times
Contact:

Post by Quzar »

processor speed dosnt matter, the DC's 200MHz SH-4 is many times more powerful than a PPC's 400MHZ saber or Xscale processor, as those are ment to run with low power and such.

The Dream Lives On.
"When you post fewer lines of text than your signature, consider not posting at all." - A Wise Man
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 »

They were designed for different things. The DC is great at math, but isn't so great at other stuff, largely because it's memory bus is a bit crap. It's probably the weakest component of the DC's design, in some ways. However, the Arm/Xscale processors are designed to run general programs (which is why the fairly slow processor in the GBA can do 3D rendering), but suck at math. The same way that x86 CPUs are good at integer number crunching on huge data sets spread all over the place, but aren't really that good at math, and can be beaten by a PowerPC chip running at half the clock speed.
Shilar
DCEmu Crazy Poster
DCEmu Crazy Poster
Posts: 27
Joined: Thu May 01, 2003 3:03 pm
Has thanked: 0
Been thanked: 0
Contact:

Post by Shilar »

BlackAura wrote:Shilar - A few problems there.

First, Windows CE is technically a real operating system. It is capable of doing all the requisite resource management, along with running multiple processes, and all that stuff. On PocketPC machines, the OS is actually replacable. For example, people have replaced Windows CE with a version of Linux.

Second - On the Dreamcast, we don't use Windows CE. In fact, the Dreamcast doesn't have Windows CE on it at all. There were two development kits available for commercial use on the Dreamcast. One was made by Sega, and was used by most games. The other was the Windows CE kit, which was mostly used for games that were ported from the PC. The game contained a version of Windows CE that runs on the Dreamcast.

That means that the Dreamcast has no operating system. All it has is a BIOS containing some simple hardware interface functions, and a built-in boot loader, which loads a binary image of the program off the disc, into memory, and then jumps to it. This is pretty much the same as PCs do. That image can contain an OS, such as Windows CE, or it can contain another bootloader, like the one used for Linux, or it can contain the program that's going to be run. Either way, the Dreamcast does not have any operating system preloaded onto it.

As a side note, the Dreamcast itself does not use DirectX. The hardware is nothing like the DirectX abstraction that the Windows CE version of DirectX creates. It's nothing like any PC hardware or abstraction I'm aware of, especially the graphics hardware. It's capable of all kinds of tricks that modern PCs still can't do, such as deferred rendering or modifier volumes.

For homebrew development, we do not use the official kits. Doing so would be illegal, and also much less interesting. We use KallistiOS, which was developed from reverse engineering the Dreamcast's hardware. KallistiOS isn't a real operating system. It's lacking, among other things, full networking support, some hardware support, processes, virtual memory, and all sorts of other stuff which is useful for a general computer, but isn't really that useful for most games. That does make porting programs written for real operating systems somewhat difficult, since there is a lot of functionality missing. However, when writing games or other software for the Dreamcast, it's not an issue.

Porting stuff to WinCE is typically much easier than porting it to the DC, especially if it already has a Windows version. Porting stuff to KOS is usually a big pain in the ass, especially if the program relies on stuff that KOS doesn't have, or if the code has a lot of Unix-isms or Windows-isms. Most software written for Windows or *nix systems falls into this category, so is difficult to port, if it's even possible.

Next - The DC has 16MB of RAM, and only a 200MHz processor, which isn't connected to the memory system very well. The CPU isn't particularly good at executing long pieces of code - it's much better at tight loops. It also doesn't work very well with random memory access, because of the direct mapped cache. Both of these would be crippling disadvantages for anything but games, and in fact can be a pain in the backside. However, the DC has (comparatively) a monster of an FPU, which can do number crunching on blocks of data better than an otherwise comparable CPU which isn't geared toward games and multimedia like the SH-4 is. Great for games and multimedia stuff, but not much else.

Typical PPCs, on the other hand, have 32MB or more of memory, and processors running at 300-400MHz. The processors themselves are typically more general processors than the one in the Dreamcast, and don't suffer the same disadvantages that the Dreamcast does when, for example, you enable the memory mapping hardware, or run programs that use data scattered around main memory.

Basically, they're more powerful than the Dreamcast for general stuff. They suck at games, because they don't have the same kind of floating point vector/matrix math power than the Dreamcast has, and they don't have the same dedicated hardware than the Dreamcast has.

There are prototype hardware interfaces for hard drives, PC network cards, and so on. Two problems - we have no software capable of using them, and there are only two or three prototypes anyway. Also, hardly anyone has a BBA or LAN adapter to use a PC as secondary storage, so there's no point in needing one.
Windows CE is an OS, but it's not AS replacable as you'd think. It is hardcoded into most PPCs (like my Compaq PPC, or my Casio BE-300). Now, DC does have Windows CE, but it's like the BE-300, you don't know it. Why BOTH DC and the BE-300 have that "Windows CE Powered." As stated, you can upgrade the OS firmware (like in some DVD players), but a total OS change would not work (very few PPCs have that option). Now, I do know no one tries to program for DC via WinCE, and use the other boot systems (KOS, Linux), but there has to be a way to use the CE system programmed into it, to run something.

Strange, but the specs on the DC mentioned on many websites (mostly game sites) stated it had a modded WinCE with a directx environment, with a Katana language system (or OS) running beside it. Where is the info you got?

Also according to the game sites: Porting to DC from Windows takes a programmer on average one hour of rewriting, usually less.

And again, if the BE-300 (it has 16 megs memory, and has a slow MIPS chip) can run some of the higher quality PPC games out there, why can't the DC?

BTW: I have a BBA :) They are still for sale too, look around. We do need like a network storage.
Why is it for every game system bulletin board, there's more people bashing the system than those praising it?

Dreamcast: Mankind's last hope for open-ended gaming.
Ian Micheal
Soul Sold for DCEmu
Soul Sold for DCEmu
Posts: 4865
Joined: Fri Jul 11, 2003 9:56 pm
Has thanked: 2 times
Been thanked: 4 times

Post by Ian Micheal »

Wince Dev kit comes with a subset of DirectX version 5. Cant really say any more on it can we no program made with it can be released i might have a perfect this or that but there is no way i would get my self in trouble releasing it.

So Yeah it has directX but not in a complete form like a pc. It does map tot he 3d hardware which means porting games would be easy it outlines that.
Dreamcast forever!!!
CyberMick
Mental DCEmu
Mental DCEmu
Posts: 369
Joined: Sat Apr 20, 2002 10:54 am
Location: London, England, (UK)
Has thanked: 0
Been thanked: 0

Post by CyberMick »

BlackAura wrote:They were designed for different things. The DC is great at math, but isn't so great at other stuff, largely because it's memory bus is a bit crap. It's probably the weakest component of the DC's design, in some ways. However, the Arm/Xscale processors are designed to run general programs (which is why the fairly slow processor in the GBA can do 3D rendering), but suck at math. The same way that x86 CPUs are good at integer number crunching on huge data sets spread all over the place, but aren't really that good at math, and can be beaten by a PowerPC chip running at half the clock speed.
How come Sega only gave the DC 16MB of RAM was this an over-sight or did Sega feel that was all it needed to have seeing as it was suppose to be just a games machine and not really made for apps such as mp3 players etc..

Also was the memory bus problem another over-sight on Sega's part by that i mean how come they didnt make it more efficient? That said is it efficient enough for games and thats why they designed it like that?
Regards.

CyberMick.
User avatar
Quzar
Dream Coder
Dream Coder
Posts: 7499
Joined: Wed Jul 31, 2002 12:14 am
Location: Miami, FL
Has thanked: 4 times
Been thanked: 10 times
Contact:

Post by Quzar »

it was most likely a decision between 'this is already more than anything else' and 'if we put any more it will be more expensive'.
"When you post fewer lines of text than your signature, consider not posting at all." - A Wise Man
Rigor Mortis
Insane DCEmu
Insane DCEmu
Posts: 148
Joined: Wed Nov 05, 2003 9:39 pm
Has thanked: 0
Been thanked: 0

Post by Rigor Mortis »

I have nothing to say on the technical side of things, but I would bear the children of anyone who got 286 or 386-level DOS running on a DC. Considering the amount of surgery that would take for a male like me, I think that shows how much I would love DOS on DC.


P.S. I'm kidding, it's an expression.
Win95, noun: A 32 bit patch for a 16 bit GUI for an 8 bit OS running on a 4 bit processor, written by a 2 bit company that can't stand 1 bit of competition.
tom61a
Insane DCEmu
Insane DCEmu
Posts: 248
Joined: Thu Mar 28, 2002 3:36 pm
Location: USA
Has thanked: 0
Been thanked: 0

Post by tom61a »

Windows CE is an OS, but it's not AS replacable as you'd think. It is hardcoded into most PPCs (like my Compaq PPC, or my Casio BE-300).
On both of those PDA's, the OS is in Flash ROM and you can erase Flash ROM and write to it. If you've ever run one of Compaq's updates for the iPaq, you have actually erased and rewriten the OS on the iPaq. (which is why the patches are so large)

Now if you had an old Aero, you'd be right, for the most part, as the OS is stored in ROM, which, unlike Flash ROM, can't written to or erased.
Strange, but the specs on the DC mentioned on many websites (mostly game sites) stated it had a modded WinCE with a directx environment, with a Katana language system (or OS) running beside it. Where is the info you got?
On programming sites by people who know what they're talking about. Saying that it runs Windows CE was a bit of hype done by Sega.
Why BOTH DC and the BE-300 have that "Windows CE Powered."
GET UP CLOSE AND READ IT! It is not "Windows CE Powered" it is "Compatible with Microsoft Windows CE" that is written on the Dreamcast's faceplate. Big difference!
tom61a
Insane DCEmu
Insane DCEmu
Posts: 248
Joined: Thu Mar 28, 2002 3:36 pm
Location: USA
Has thanked: 0
Been thanked: 0

Post by tom61a »

I have nothing to say on the technical side of things, but I would bear the children of anyone who got 286 or 386-level DOS running on a DC.
Good news, you won't be needing that sex change any time soon. Pending anyone adopted the project, they'd have to write a dynarec core to get 286 and higher level games to run at a decent speed. XT level games should be playable though, based on tests I did on 200MHz Pentium. (Scorch!)
User avatar
Quzar
Dream Coder
Dream Coder
Posts: 7499
Joined: Wed Jul 31, 2002 12:14 am
Location: Miami, FL
Has thanked: 4 times
Been thanked: 10 times
Contact:

Post by Quzar »

why do people always think that if something will run on a 200MHz pentium that it will run on a DC? it makes me question whether anyone is absorbing the fact that clock speed dosnt mean very much when you are talking about processors made specifically for a certain function.
"When you post fewer lines of text than your signature, consider not posting at all." - A Wise Man
Ian Micheal
Soul Sold for DCEmu
Soul Sold for DCEmu
Posts: 4865
Joined: Fri Jul 11, 2003 9:56 pm
Has thanked: 2 times
Been thanked: 4 times

Post by Ian Micheal »

quzar wrote:why do people always think that if something will run on a 200MHz pentium that it will run on a DC? it makes me question whether anyone is absorbing the fact that clock speed dosnt mean very much when you are talking about processors made specifically for a certain function.

HITACHI SH-4 CPU Vs PENTIUM II 450 MHZ
Specifically developed for Sega for use in the Dreamcast console, the SH-4 is a superscalar CPU that can execute multiple tasks in the same clock cycle. Highly proficient in Floating Point calculations (the calculations necessary for fast 3D), the Dreamcast can produce 7 Floating point operations per cycle, for a total performance of 1400 Million Floating point operations per second (FLOPS). In comparison with a Pentium II 450 CPU, which can generate 450 Million FLOPS, the SH-4 is over 3 times more powerful

Very true its not a 200mhz intel chip it is many times more powerfull then that. it would very much be do-able. Really people put down and bash it with out knowing how (power-full) it really is.


Further more

WINDOWS CE OPERATING SYSTEM

Dreamcast utilises an enhanced version of Microsoft's Windows CE Operating system. Furthermore, the Dreamcast's operating system supports the Direct X and Open Gl graphics libraries, which enables quick conversions of PC games and software to Dreamcast where graphical improvements and enhancements can be made to take advantage of the Dreamcast's superior hardware.


Dreamcast is well under rated.

Also

It is the first graphics chip to deliver full-scene anti aliasing, Power VRDC truly represents the next step in home videogame graphics. Was at the time the only video game console that could do that. Still has features that new video cards cant do.
Dreamcast forever!!!
Shilar
DCEmu Crazy Poster
DCEmu Crazy Poster
Posts: 27
Joined: Thu May 01, 2003 3:03 pm
Has thanked: 0
Been thanked: 0
Contact:

Post by Shilar »

Ian Micheal wrote:
quzar wrote:why do people always think that if something will run on a 200MHz pentium that it will run on a DC? it makes me question whether anyone is absorbing the fact that clock speed dosnt mean very much when you are talking about processors made specifically for a certain function.
WINDOWS CE OPERATING SYSTEM

Dreamcast utilises an enhanced version of Microsoft's Windows CE Operating system. Furthermore, the Dreamcast's operating system supports the Direct X and Open Gl graphics libraries, which enables quick conversions of PC games and software to Dreamcast where graphical improvements and enhancements can be made to take advantage of the Dreamcast's superior hardware.


Dreamcast is well under rated.
Thanks for pointing it out. "Powered by Win CE" and "Compatible with Win CE" is actually two different ways of saying the same thing. BE-300 has the Win CE DLLs, but is NOT a Win CE OS, and you CANNOT get rid of those DLLs (hardcoded onto a firmware device).
Why is it for every game system bulletin board, there's more people bashing the system than those praising it?

Dreamcast: Mankind's last hope for open-ended gaming.
User avatar
Quzar
Dream Coder
Dream Coder
Posts: 7499
Joined: Wed Jul 31, 2002 12:14 am
Location: Miami, FL
Has thanked: 4 times
Been thanked: 10 times
Contact:

Post by Quzar »

actually no, powered by wince implies that it uses win ce, compatible with implies it isnt wince but can use some of the same stuffs.
"When you post fewer lines of text than your signature, consider not posting at all." - A Wise Man
CyberMick
Mental DCEmu
Mental DCEmu
Posts: 369
Joined: Sat Apr 20, 2002 10:54 am
Location: London, England, (UK)
Has thanked: 0
Been thanked: 0

Post by CyberMick »

quzar wrote:it was most likely a decision between 'this is already more than anything else' and 'if we put any more it will be more expensive'.
Two very good points there that makes perfect sense thanks quzar. :)
Regards.

CyberMick.
Shilar
DCEmu Crazy Poster
DCEmu Crazy Poster
Posts: 27
Joined: Thu May 01, 2003 3:03 pm
Has thanked: 0
Been thanked: 0
Contact:

Post by Shilar »

quzar wrote:actually no, powered by wince implies that it uses win ce, compatible with implies it isnt wince but can use some of the same stuffs.
But, the BE-300 has the 'powered by windows ce' logo, and has no Win CE OS on it. It has an OS modded to be a day planner, which uses Win CE specific codes. It can run a few Win CE games/apps, but the core is not Win CE. DC is also a modded Win CE core, but uses its own OS. Both have different sayings, but both are exactly the same in that respect (Both can use some win ce apps/games/etc, but it's not Win CE).
Why is it for every game system bulletin board, there's more people bashing the system than those praising it?

Dreamcast: Mankind's last hope for open-ended gaming.
User avatar
Quzar
Dream Coder
Dream Coder
Posts: 7499
Joined: Wed Jul 31, 2002 12:14 am
Location: Miami, FL
Has thanked: 4 times
Been thanked: 10 times
Contact:

Post by Quzar »

but one says that it is actually using wince to power it, the BE-300 is probably using a version of wince to power it, that has been modified to its own uses, whereas the DC has its own os that is independant of wince, but can run some modded wince programs.

either that or it is just some shift in the way microsoft labeled things from when one product was made to another that now they say compatible with whereas before powered by or visa versa.

The Dream Lives On.
"When you post fewer lines of text than your signature, consider not posting at all." - A Wise Man
Sanchez
DCEmu Ex-Admin
DCEmu Ex-Admin
Posts: 1098
Joined: Wed Oct 17, 2001 7:44 pm
Has thanked: 0
Been thanked: 0

Post by Sanchez »

Shilar wrote:
quzar wrote:actually no, powered by wince implies that it uses win ce, compatible with implies it isnt wince but can use some of the same stuffs.
But, the BE-300 has the 'powered by windows ce' logo, and has no Win CE OS on it. It has an OS modded to be a day planner, which uses Win CE specific codes. It can run a few Win CE games/apps, but the core is not Win CE. DC is also a modded Win CE core, but uses its own OS. Both have different sayings, but both are exactly the same in that respect (Both can use some win ce apps/games/etc, but it's not Win CE).
Look, this is quite simple. If WinCE was embedded into the Dreamcast, then we could write programs for it without worrying about the distribution of the library files as they'd already be there. In other words, it would be the same general idea as writing/distributing a program for standard Windows or any of the Pocket PCs.

The Dreamcast *can* load a version of WinCE from a disk, if it's present. It's how Sega / MS handled the licensing. If WinCE was present (obviously to speed a port of an app) then the publisher of that game had to pay royalties to MS (and likely in addition to Sega). Otherwise, if you used Sega's, you only paid for the standard royalties.

The only thing present *on* the DC is the BIOS and its utilities.... which are not WinCE. Otherwise, don't you think that little "Made with WinCE" logo would show up on the boot screen ALL the time as opposed to only with games that actually load WinCE?

Not to mention... my Philips Nino from years ago had an 8MB flash. It barely fit. The one in the DC was a 2MB boot rom and 256K flash. Do you really think WinCE 2.0 WITH DirectX would fit in 2MB? And don't you think they're would be updates to the "OS" down the line? How would you handle distribution? I never remember my DC acting like my XBox saying "Please wait while we update your system" which would have to happen if the bios flash was rewritten...

This a moot point regardless. I'm not sure how this switched from being a DOS for dreamcast suggestion to whether or not the DC has WINDOWS embedded into it... (and if anyone comes back with "but windows runs on top of DOS, so then we can run DOS on the DC..."... don't tempt me...)
Last edited by Sanchez on Sun Dec 21, 2003 3:23 pm, edited 1 time in total.
"This is worse than when the Raccoon got in the copier!"
User avatar
Quzar
Dream Coder
Dream Coder
Posts: 7499
Joined: Wed Jul 31, 2002 12:14 am
Location: Miami, FL
Has thanked: 4 times
Been thanked: 10 times
Contact:

Post by Quzar »

good way of putting it, yes games that do use wince tech have hte little 'powered by wince' logo on boot, as opposed to others that dont.
"When you post fewer lines of text than your signature, consider not posting at all." - A Wise Man
Sanchez
DCEmu Ex-Admin
DCEmu Ex-Admin
Posts: 1098
Joined: Wed Oct 17, 2001 7:44 pm
Has thanked: 0
Been thanked: 0

Post by Sanchez »

Another side note... read this:

Dan Potter's NAVI

This project replaced the BIOS with his own...
"This is worse than when the Raccoon got in the copier!"
Post Reply