DC-SWAT Forum
DreamShell 4.0 Beta 4 - Версия для печати

+- DC-SWAT Forum (http://www.dc-swat.ru/forum)
+-- Форум: DreamShell (/forum-3.html)
+--- Форум: General Discussion (/forum-27.html)
+--- Тема: DreamShell 4.0 Beta 4 (/thread-1370.html)

Страниц: 1 2 3 4 5 6 7 8 9


RE: DreamShell 4.0 Beta 4 - kof888 - 16.05.2012 19:08

(16.04.2011 11:18)SWAT писал(а):  ISO loader does not intersect with the address of the Flash ROM syscalls.
The current version of the loader is located at 0x8c004000.
In the new version, I moved the loader to the end of memory, but it has given nothing, except more space for loader and the ability to run ip.bin
While I have not found a reason for not running some games.


Hello, the SWAT, the current version (DreamShell 4.0 Beta 4) program to read the iso file in the sd card will whether ip.bin read into memory 0x8c008000 address?Also whether the program will be a memory-resident, there is no way to be able to game the memory 8c00000-8cffffff extracted directory to the sd card?Wink


RE: DreamShell 4.0 Beta 4 - SWAT - 17.05.2012 20:57

Hello!
The current version is DreamShell 4.0 RC 1, and this version can load ip.bin file and boot from it. Beta 4 cannot.
For now, no able to save memory from game to sd...


RE: DreamShell 4.0 Beta 4 - kof888 - 17.05.2012 22:08

HI~~
I program is written in the memory 8c008110 and 8c00b830 of these places, the game can not load properly go into the other 8c010000-8cffffff will be able to load properly, the program iso_loader read 1st_read.bin and run lateriso_loader this program is still in memory effect?Always felt that some game can not be sd run iso_loader as well as some other programs are using to 8c000000-8c010000 which address my thoughts iso_loader read run 1st, written in the 1st inside program 8c0000-8c010000 thissegment in some parts of occupied memory initialization time, may be able to solve or perhaps more than just my guess ^ - ^


RE: DreamShell 4.0 Beta 4 - SWAT - 19.05.2012 09:52

Yes, the loader is always in memory, and yes, some games write in this place... If it happen, the loader (0.3.1) show error message and start to load DS core.
In the latest version of the DS, loaders in 2 versions, for low and high memory.


RE: DreamShell 4.0 Beta 4 - kof888 - 19.05.2012 11:02

Looked at the information, 8C00B800 before the memory can not be changed?Very strange, burn the CD-ROM to run, before modifications to the ip file, the game to load the ip will not be any problem, my program is also effective, but the loader seems to not read? ? ?
swat is, 8c008000 - 8c00D820 that have the loader process occupies to this memory?
Thank you for your reply ~


RE: DreamShell 4.0 Beta 4 - SWAT - 19.05.2012 20:23

The loader can be found at 8c004000. The size of the loaders is ~30 kb. So I say yes, the loader occupies this memory.
But you can try to use loaders for high memory, it's located at 0x8cfc0000.


RE: DreamShell 4.0 Beta 4 - kof888 - 21.05.2012 10:54

HI,SWAT~

I tested a game, UNDER_DEFEAT this game in the CD-ROM boot, you can enter to see the lower left corner of the reading of the NOW LOADING screen, but the free disk boot on less than stuck in the following screen
loading boot.bin .....
Executing .....

But the modify 1st_read.bin address 0x2F586 one byte can see NOW LOADING loading screen,
84 0C mov.b @ (h'C, r0), r0;
Modified 30 E0 mov # h'30, r0
And you could see NOW LOADING loading screen

The 2F586 this program is to determine the host version, changed to 30 to force the Japanese version of the machine

R0 a simulator debugging is r0 == 0X8c000068, 0X8c000068 +0 xc = 0X8c000074
The second r0 normal circumstances should == 30 or 31 or 32 or 33

I hope to give you a little help to improve this program ~


RE: DreamShell 4.0 Beta 4 - SWAT - 21.05.2012 11:38

Interesting information, but I think it is rather the exception. Most of games gets info from flashrom, not from DC ID.
At 8c000068 - 8c00006f is a DC identifier, the first value on my DC is 34.
This identifier is displayed in console when running DS (RC1), immediately after the version. What is ID on your DC?


RE: DreamShell 4.0 Beta 4 - kof888 - 21.05.2012 12:30

I do not know how to determine which version is my modified bios, there are ways to extract a memory loader program, select the game interface, 8c000000-8c010000 this period

[Изображение: 92_12451_96ff78780bf0574.jpg]

dreamshell_boot_loader.bios





NOW LOADING screen appears, then stuck in this place

Also in this place, two place stuck in the address 1st_read.bin the 0x21B2A

0x21B2A 0B 41 jsr @ r1 r1 = 0X8c0315f0

ROM:8C031B24         mov.l   @r14, r3                ;
ROM:8C031B26         mov.l   @(h'C,r3), r2           ;
ROM:8C031B28        mov.l   @(h'1C,r2), r1          ;
ROM:8C031B2A         jsr     @r1                     ; r1 = 0X8c0315f0
ROM:8C031B2C         nop

ROM: 8C0315F0 sts.l pr, @-r15
ROM: 8C0315F2 mov.l @ (h'140, pc), r3; [8C031734] = sub_8C03DCA4
ROM: 8C0315F4, mov # 0, r5;
ROM: 8C0315F6 jsr @ r3; sub_8C03DCA4
ROM: 8C0315F8 mov # h'18, r4
ROM: 8C0315FA lds.l @ r15 +, pr;
ROM: 8C0315FC rts
ROM: 8C0315FE nop



ROM: 8C03DCA4, mov # 0, r6
ROM: 8C03DCA6 mov.l @ (8, pc), r7; [8C03DCB0] = 0
ROM: 8C03DCA8 mov.l @ (8, pc), r0; [8C03DCB4] = h'8C0000BC
ROM: 8C03DCAA mov.l @ r0, r0;
ROM: 8C03DCAC jmp @ r0 r0 = 0X 8c001000
ROM: 8C03DCAE nop


RE: DreamShell 4.0 Beta 4 - SWAT - 21.05.2012 16:46

You are using the dreamshell_boot_loader.bios to run the games?
Well, then everything is clear, with this BIOS the games does not work.
To normal start the games, you need to use the dreamshell_loader_with.bios (or in best case original bios), this bios having all needed syscalls and params, including the DC ID.
But you need (for dreamshell_loader_with.bios) to boot from ip.bin and high memory loader (select this params in iso laoder).

P.S. To show console in DS GUI (if you not have keyboard), press START button on joystick and then press A button. If you have keyboard, just press Esc.


RE: DreamShell 4.0 Beta 4 - SWAT - 21.05.2012 16:59

I finded flashrom region code in memory, my value = 00110 (30 30 31 31 30)


RE: DreamShell 4.0 Beta 4 - kof888 - 22.05.2012 04:59

HI, SWAT ~
my host is running processes, using the original bios boot, and then switch to dreamshell_boot_loader.bios this relationship, a number of other games can still run, I just want to see those who can not rungame in the end the problem where ~~
You say, I try ~
Thank you reply ~


RE: DreamShell 4.0 Beta 4 - mych - 22.05.2012 07:29

Hi,SWAT, Do you have a DEBUG tool, it could dump memory to sd card, or show memory information on screen?
If it works ,could help us to analyse the reason of Game boot failure.


RE: DreamShell 4.0 Beta 4 - SWAT - 22.05.2012 08:39

Unfortunately no. I debugged it on the emulator using the cd loader (load images from the CD), and only final tests on DC (without debug).
Some games that do not run, do so because the loader overwritten in memory.
Once the game that wants to rewrite the loader memory location, the loader (3.0.1) stops this process and starts to load DS core. Maybe at this point can to cancel memory rewrite, but i don't know how to.
Basically at this point would be to save memory (and reg state) on the SD, but the loader does not support writing, because memory is not enough.
I think that you can track it on an emulator with cd loader (probably better on lxdream).


RE: DreamShell 4.0 Beta 4 - kof888 - 08.09.2013 14:38

Hello swat, if I want to move this program to the memory loader somewhere ( eg 8c800000), which files need to be modified , altered where there were many, I want to test


RE: DreamShell 4.0 Beta 4 - SWAT - 09.09.2013 11:10

It can not be changed, it must be recompiled.


RE: DreamShell 4.0 Beta 4 - kof888 - 11.09.2013 05:03

Hello, swat, can you help me compile a memory address is 0x8c000000 the loader files? I have modified binaries experience, I want to test to see if there is no effect, thank you


RE: DreamShell 4.0 Beta 4 - SWAT - 11.09.2013 08:31

(11.09.2013 05:03)kof888 писал(а):  Hello, swat, can you help me compile a memory address is 0x8c000000 the loader files? I have modified binaries experience, I want to test to see if there is no effect, thank you

I compiled low and high memory sd loaders for executing at 0x8c000000 (and changed addresses in isoldr.klf), because low/high types differ not only in the load address.

However, there is only one thing. I compiled them on newer compilers and is not sure that the loaders will work the same as before, but the chance of success more than failure Wink

Take it from attachments and using both types for your tests.


RE: DreamShell 4.0 Beta 4 - kof888 - 11.09.2013 15:36

thank you ~

hohohoho


RE: DreamShell 4.0 Beta 4 - kof888 - 12.09.2013 05:03

HI,swat,There are some problems~

New compiler can be used normally do?

Oh, in front of me wrong, it should not be compiled at 0x8c000000's

Sorry, SWAT, to re-build 3 servings you help me?

1 compiled version of a normal memory address is 0x8c004000 in order to test whether the normal compiled program have a role to play the game correctly read


2 Compile a memory address in 0x8c100000, this address in the game 1st_read.bin interior, its role is a read error game game pictures here can guarantee this address does not change, in order to test the loaded 1st_read . bin is normal effective


3 Compile a memory address 0x8ce00000, this address memory back in the game, I had to modify the game program so that the game does not use it, so that I can test whether the game can be read normally use

Thank you very much