Jump to content


Photo

Dxbx 0.0.0.9 Christmas release


  • Please log in to reply
13 replies to this topic

#1 Xbox-Scene

Xbox-Scene

    Memba Numero Uno

  • Admin
  • 5,201 posts
  • Location:Yurop
  • Xbox Version:unk
  • 360 version:unknown

Posted 26 December 2008 - 05:14 AM

Dxbx 0.0.0.9 Christmas release
Posted by XanTium | December 25 23:14 EST | News Category: Xbox
 
From shadowtj.org:


Dxbx 0.0.9 [The Cxbx(info) [PC Xbox Emulator] Delphi Port] is out now!
With this special xmas release of Dxbx we want to show anyone who
is still following our progress what has been changed in Dxbx.

Not everyone has the possibility to compile the Dxbx sources from sourceforge, so for your convenience we provide a setup too.

A lot has happened since the 0.0.7 official and the none-official 0.0.8 release. Unlike version 0.0.7, we now provide the necessary DLL files inside the setup. So no more searching for the dll`s on the internet.

DLL`s that are included:
* Cxbxkrnl.dll - this is the original Cxbx DLL
* DxbxKrnl.dll - this is the dxbx delphi ported version of Cxbxkrn.dll

When using the Cxbx.DLL, Dxbx can run up until the movie in Turok
(the main game we're trying to emulate first), but not any further, as controls are not fully implemented yet.

When selecting loading an game's default.xbe file, Dxbx converts it to a windows-native executable; Make sure you save that file in the same folder as where the game's Xbe file was located.
(You could save the exe somewhere else, but this has not been tested.)
Also the DLL`s of Cxbx or Dxbx need to copied to the game folder.

Don't forget : When using Cxbx.DLL, you'll also need to make sure that msvcrtd.dll and cklibver.dll are in your path!

About XDKTracker : A few visual improvements where made and lots of xbox games are added to our collection.

Special thanks to N1ghtjar and Nexxus for making so much xbe dumps!
Thanks to them and others, we now have a significant list of 300+ game
dumps (among other things containing the XDK versions they are linked to).

Xiso has also lots of changes, especially speeding up to extract the Xiso format.


Official Site/Download: shadowtj.org






#2 Altima NEO

Altima NEO

    X-S Freak

  • Members
  • PipPipPipPipPip
  • 1,404 posts
  • Interests:Gaming, XBox, 360, PSP, Dreamcast, 3D Graphics & Animation
  • Xbox Version:v1.4
  • 360 version:v1 (xenon)

Posted 26 December 2008 - 08:14 AM

So maybe this is a dumb question, but why is Turok their target game to emulate? You think theyd try something that challenges the hardware (or is at least a good game) like Riddick, Halo 2, or Jet Set Radio.

#3 obcd

obcd

    X-S Hacker

  • Moderator
  • PipPipPipPipPipPip
  • 2,737 posts
  • Xbox Version:v1.0
  • 360 version:none

Posted 26 December 2008 - 11:43 AM

During development of something so complex as a xbox emulator, it is wise to start with something simple. If that works, you can try the more complex games and see if they use features that are not yet implemented or working as expected. Turok was the first commercial game that came to live on the original xbmc emulator. That's probably why they keep working with that game, to see how they progress compared to the original emulator from Caustic.

regards.

#4 frieko

frieko

    X-S Member

  • Members
  • Pip
  • 141 posts
  • Xbox Version:v1.1

Posted 26 December 2008 - 08:17 PM

Hate to rain on his parade, but in what way does rewriting a pre-alpha C program in Delphi make anything better for anyone?

#5 kungpaomaster

kungpaomaster

    X-S Enthusiast

  • Members
  • 25 posts

Posted 26 December 2008 - 11:05 PM

I think that's a good challenge to make an emulator for the 1st gen xbox.

Just a suggestion to aid others when trying to follow/contribute to the work.

How about setting up a VM image that contains everything you need? In this day and age of Virtualization it makes so much more sense to do that than try to explain what hardware works with what and what files need to found where.

I think it would do more good for the process to isolate the hardware requirements using a VM like setup.

Good idea? Bad idea?

-KPM

#6 obcd

obcd

    X-S Hacker

  • Moderator
  • PipPipPipPipPipPip
  • 2,737 posts
  • Xbox Version:v1.0
  • 360 version:none

Posted 27 December 2008 - 11:02 AM

Rewriting the pre-alpha C in delphi might make it interesting for delphi programmers as well.
You need a full understanding of the original sources before you can rewrite them. During those analyse phase, some bugs might be detected and resolved.

A VM uses a basic hardware setup. Although the latest versions support directx, their speed is Slow compared to real hardware accelerated directx.

VM's are just great for a server setup, since you can do the setup hardware independant. In a big company, they might make it possible to create one pc setup for everybody, no matter what pc they have on their desk.

It will still take a while before we have a fully functional xbox 1 emulator for pc.
Every progress should be supported. Maybe in a couple of years we will all have a Pentium 5 10Ghz with 16 cores on our dektop, that will be able to run the emulator at perfect speed.

regards.



#7 d-range

d-range

    X-S Senior Member

  • Members
  • PipPip
  • 254 posts

Posted 27 December 2008 - 04:37 PM

QUOTE
Rewriting the pre-alpha C in delphi might make it interesting for delphi programmers as well.


Why on earth would you want to make this interesting to Delphi developers?? I don't think the very few Delphi developers that are still around are particularly skilled in writing emulators, as opposed to boring office space applications dragged and dropped on a TForm and glued together with ugly Basic-esque 'code that gets the work done, no more no less'. Delphi is no more than a dead-end language that has no place in this world anymore, now that we have C#, Java, D, scripting languages like Python etc. Putting that aside, for serious emulation work you pretty much have only 1 option, which is C/C++ (or maybe D nowadays, don't know much about that).

I can speak from experience because I've been working as a Delphi software engineer in the past and as a C/C++ and embedded C developer now, and I can assure you: besides familiarity with the language there's really _no argument_ that justifies using a dead, nowadays mostly unsupported, effectively single-platform (yes I know there were bastard versions somewhat working on Linux at some point), proprietary, largely crippled in many ways, not to mention excruciatingly frustrating for any kind of advanced software development kind-of-environment such as Delphi. Did I just forget mentioning the terrific IDE that crashes at least 6 times on an average work day?

Really, I don't see the point of this, just get skilled in C or C++ and work on the original code because this really is a waste of time, unless you do this for personal pleasure, in which case you can disregard anything I just said.

By the way, I don't think you'd actually need a P5 10Ghz to emulate an Xbox 1. In fact, I guess a puny C2D at 2Ghz with a mid-range GPU would already more than suffice if you can do binary translation on the decrypted excutable, to convert the Xbox-specific hardware interfacing code to native DirectX code, which should be easy compared to emulating something like a PS2.

Edited by d-range, 27 December 2008 - 04:41 PM.


#8 obcd

obcd

    X-S Hacker

  • Moderator
  • PipPipPipPipPipPip
  • 2,737 posts
  • Xbox Version:v1.0
  • 360 version:none

Posted 28 December 2008 - 09:09 AM

Delphi is the only non Microsoft solution that is an alternative for Visual Basic. So, don't call it a dead end language. It uses the Pascal syntax instead of the Basic syntax.

If someone is capable of converting a dll written in C to a dll written in delphi, I assume he understands both languages pretty well.

The only thing important is the fact that the work on the pc xbox emulator is moving on.

It is perfectly possible in Delphi to use API calls. This makes it nearly as powerfull as the other languages.

Considering the speed, you should keep in mind that the xbox is running the game application only, while your pc has a large amount of other processes running in the background consuming cpu time.

regards.

#9 mik30

mik30

    X-S Member

  • Members
  • Pip
  • 78 posts

Posted 28 December 2008 - 06:18 PM

QUOTE(obcd @ Dec 28 2008, 10:45 AM) View Post

Considering the speed, you should keep in mind that the xbox is running the game application only, while your pc has a large amount of other processes running in the background consuming cpu time.


That is commonly spreaded but unreflected bullshit.
I advice you to open a CPU monitor or if you do not own such
a piece of software the taskmanager and click the CPU-Time column
to sort the processes according to their consumed CPU-Time.
Then even the dumbest mind will recognize that 99% of the
available CPU time on a Common XP system is consumed
by the IDLE-Process but not the operating system.

BTW:

A regular 3 GHz P4 CPU with a Gforce 8600 GFX Card
is *by far* much faster than the XBOX hardware & Kernel
if the XBE file would be crosslinked rather than interpreted or
even crosscompiled. Since the XBOX-CPU is a simple
Celeron Type and the XBOX Hardware is fully encapsulated
with API calls that should perfectly be possible.
Regarding that the genuine XDK uses a C++ compiler it
makes no sense at all to do this job with delphi or any other
even more uncommon high level language.



#10 d-range

d-range

    X-S Senior Member

  • Members
  • PipPip
  • 254 posts

Posted 28 December 2008 - 11:50 PM

QUOTE(obcd @ Dec 28 2008, 09:45 AM) View Post

Delphi is the only non Microsoft solution that is an alternative for Visual Basic. So, don't call it a dead end language. It uses the Pascal syntax instead of the Basic syntax.


Why is it the only non-Microsoft solution if you can also use C/C++? Aside from that, almost nobody has access to a Delphi environment, so using Delphi you will shut out a lot of potential devs. As for the dead-end language: I don't think Borland is actively working on keeping Delphi up to date anymore, in fact, when I was still developing with it (Delphi 2005) the compiler was still the same as the one from Delphi 5. It *is* a dead-end language that will fade away, there's no particular niche for new development using it anymore. Supporting existing codebases and providing new controls for the Delphi-shops that are still in business is about the only market left for it.

QUOTE
If someone is capable of converting a dll written in C to a dll written in delphi, I assume he understands both languages pretty well.


Probably but not necessarily. But I'm not sure why you should first have to port the code before understanding it.

QUOTE
The only thing important is the fact that the work on the pc xbox emulator is moving on.


True, but my personal view would be that more could be achieved working on the original code, or at least porting it to C++ or another 'open' language that is still used by so many other developers.

QUOTE
It is perfectly possible in Delphi to use API calls. This makes it nearly as powerfull as the other languages.


Oh don't get me wrong, you can do almost anything in Delphi. Some stuff won't come out pretty, but it's as powerful as C++, Java, C# or whatnot. However, that doesn't make it the most obvious choice for writing emulators or sharing the code so other people can work on it.

QUOTE
Considering the speed, you should keep in mind that the xbox is running the game application only, while your pc has a large amount of other processes running in the background consuming cpu time.


Seeing that the Xbox has a 733 Mhz Celeron CPU with a less-than-Geforce 3 GPU, I think you can safely assume a modern PC will more than compensate for the difference ;-)

Edited by d-range, 28 December 2008 - 11:53 PM.


#11 obcd

obcd

    X-S Hacker

  • Moderator
  • PipPipPipPipPipPip
  • 2,737 posts
  • Xbox Version:v1.0
  • 360 version:none

Posted 29 December 2008 - 10:19 AM

It's pretty normal all cpu time goes to the idle process when you look at the taskmanager since the pc is doing nothing. Windows is an event driven operating system. I can assure you that you will need cpu time if you won't to emulate a xbox screen at a rate 50 frames/seconds. If you need to emulate the xbox sound system, that will cost time as well.

If I take dosbox as an example. I have a dos program that runs perfectly on a 486DX4 100MHZ in true dos mode. If I run it on the emulator, some things simply aren't emulated full speed on a P4 1.8Ghz.

Take the microsoft pocket pc emulator they use for windows CE development. It simply runs much slower than a real device with a 300MHZ ARM risc processor. I know arm processors are supposed to run faster because they have a Risc architecture, but still, we are talking about 300MHz which is 10 times slower that what our modern desktop is giving us.

Even a rather simple thing like emulating sound blaster audio with vdmsound in a dos window eats cpu time.

If the xbox d3d api calls could easily be translated to the pc directx interface, I agree that things might possibly work full speed.

I am no fan of delphi either, but if someone feels himself better in that development environment, and he books results in the same amount of man hours as someone else would do in another environment, I see no reason why he should be forced to use another development environment, unless the work is done by a group.

If the fixes and improvements made to the emulator are well documented, they can easily be ported back to the original C and C++ code, if that would run any faster or more stable.

It's easy to criticise somebody's work. It is a lot harder to add a usefull contribution to it.

regards.



#12 malkalm

malkalm

    X-S Enthusiast

  • Members
  • 20 posts

Posted 30 December 2008 - 12:54 AM

does this run any homebrew software like xbmc, i like it better then the windows/linux version

#13 obcd

obcd

    X-S Hacker

  • Moderator
  • PipPipPipPipPipPip
  • 2,737 posts
  • Xbox Version:v1.0
  • 360 version:none

Posted 30 December 2008 - 08:57 AM

It won't run Xbmc for the moment. They haven't reached that stage yet.

regards.

#14 moltres

moltres

    X-S Enthusiast

  • Members
  • 10 posts

Posted 11 May 2010 - 05:48 PM

where i can get the cklibver.dll file?

Edited by moltres, 11 May 2010 - 05:49 PM.





0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users