MD Developer Studio 2005 released

Talk about development tools here

Moderator: BigEvilCorporation

Pascal
Very interested
Posts: 200
Joined: Wed Nov 29, 2006 11:29 am
Location: Belgium
Contact:

MD Developer Studio 2005 released

Post by Pascal » Sun Jan 27, 2008 4:09 pm

Hello all,

Since, this was lying on my computer for almost 1 year, i decided to release it to the public. This is a megadrive asm debugger dedicated mostly to SNasm68k. it's possible to :
- trace asm code
- do and add breakpoint (click in the margins) or write 0 to vdp reg $1d (like kmod)
- load snasm68k symbols and memory spies file (extension need to be .map and the same name than your bin)
- watch vdp status, logs , cram
- got a vdp reg calculator aswell as a vdp read/write command generator
- dump memory

the only drawback is that you can not load rom bigger than 128k, i did that to prevent commercial use of it. But if you're a scene coder (with at least 1 demo released), just drop me a private msg and i'll forward you the unlocked debugger.

screenshot:
http://www.pascalorama.info/brol/mdstudio.png

binary
http://www.pascalorama.info/brol/mdstudiodemo.zip

if you want to have the symbol loading feature, you need to use snasm68k
and define 2 sections in a main.lnk file:

Code: Select all

Cart group obj $0 
section M68Kcode,Cart 

68kBss group obj $00ff0000 
section Vars,68kBss 

include myrom.cof 
and compile like this

snasm68k /l -o v+ -o c+ -o m+ myrom.asm,myrom,myrom,myrom
snasm68k /p -o v+ -o c+ -o m+ main.lnk,myrom.bin

Be sure to use the section 'M68KCode' (for the code) and 'Vars' for the ram
Last edited by Pascal on Mon Mar 10, 2008 9:25 pm, edited 3 times in total.

Jorge Nuno
Very interested
Posts: 374
Joined: Mon Jun 11, 2007 3:09 am
Location: Azeitão, PT

Post by Jorge Nuno » Sun Jan 27, 2008 10:47 pm

Ummm it showed an error about this missing DLL: MSVCR71D.dll

I just downloaded it from here http://www.dll-files.com/dllindex/dll-f ... l?msvcr71d and placed in the EXE directoy, and now it seems to work...

EDIT: It crashes when I try to open my ROM (11.8kbytes)

EDIT2: Wait it works, I padded my rom to exactly 12Kbytes with 0xFFs

EDIT3: I have some trouble with the controls because I don't know where they are!
A: A
B: ??
C: ??
START: ??
UP: UP arrow
DOWN: DOWN arrow
LEFT: ??
RIGHT:??

Is it possible to configure the keys? or atleast tell me which are they?

Thanks :wink: 8)

Pascal
Very interested
Posts: 200
Joined: Wed Nov 29, 2006 11:29 am
Location: Belgium
Contact:

Post by Pascal » Mon Jan 28, 2008 9:35 am

you can not redefine controls, sorry, this program was tailored for my needs, and i was not planning to released

Backspace : Start
Arrows : up, down,left,right
Q (azerty keyboard) : A
S (azerty keyboard) : B
D (azerty keyboard) : C

the keys should be "A' (qwerty) and the 2 keys on his right (for button B&C)

MG
Very interested
Posts: 56
Joined: Wed Feb 28, 2007 8:41 am
Contact:

Post by MG » Mon Jan 28, 2008 10:02 am

Good tools !

It's functionnal under Vista.
A+
Ah ? ben si ? pourquoi pas...

LocalH
Very interested
Posts: 152
Joined: Tue Dec 19, 2006 5:04 pm

Post by LocalH » Mon Jan 28, 2008 10:15 am

The only difference between QWERTY and AZERTY as far as the IDE control pad is concerned is that A and Q are swapped. B and C are still S and D keys.

Jorge Nuno
Very interested
Posts: 374
Joined: Mon Jun 11, 2007 3:09 am
Location: Azeitão, PT

Post by Jorge Nuno » Mon Jan 28, 2008 10:16 am

Pascal wrote:you can not redefine controls, sorry, this program was tailored for my needs, and i was not planning to released
:cry: ok

ummm A works, S nothing, D nothing, Backspace is the Start button + C button :( :?, Left/Right is always ON, Up/down works

Tryed with the regional language in french, but its the same...

LocalH
Very interested
Posts: 152
Joined: Tue Dec 19, 2006 5:04 pm

Post by LocalH » Mon Jan 28, 2008 10:19 am

I think you're trying the A, B, and C keys. If you're using QWERTY try A/S/D for MD buttons A/B/C.

Edit: Meh, you edited your post after I posted. Anyway, the keys seem to work for me, although without the unrestricted version I can't really test anything more than Sudoku Master but D seems to work to cancel the number input dialog.
Last edited by LocalH on Mon Jan 28, 2008 10:24 am, edited 1 time in total.

Jorge Nuno
Very interested
Posts: 374
Joined: Mon Jun 11, 2007 3:09 am
Location: Azeitão, PT

Post by Jorge Nuno » Mon Jan 28, 2008 10:23 am

No no I tryed ALL my keyboard keys

S/D don't work

Yeah you edited your post late too, I was starting to expalin again... 8)

Pascal
Very interested
Posts: 200
Joined: Wed Nov 29, 2006 11:29 am
Location: Belgium
Contact:

Post by Pascal » Mon Jan 28, 2008 11:09 am

Jorge Nuno wrote:
Pascal wrote:you can not redefine controls, sorry, this program was tailored for my needs, and i was not planning to released
:cry: ok

ummm A works, S nothing, D nothing, Backspace is the Start button + C button :( :?, Left/Right is always ON, Up/down works

Tryed with the regional language in french, but its the same...
wow, it's really weird, i'm using DirectInput, i need to check in the sources how i was handling it

Jorge Nuno
Very interested
Posts: 374
Joined: Mon Jun 11, 2007 3:09 am
Location: Azeitão, PT

Post by Jorge Nuno » Mon Jan 28, 2008 11:16 am

Thanks for trying to get the program to work for me :wink:

Pascal
Very interested
Posts: 200
Joined: Wed Nov 29, 2006 11:29 am
Location: Belgium
Contact:

Post by Pascal » Wed Jan 30, 2008 9:13 pm

i checked the code, i really don't do anything fancy with direct input. I gonna try to look to update the code this coming w-e :) a quick and dirty hack ^^

Jorge Nuno
Very interested
Posts: 374
Joined: Mon Jun 11, 2007 3:09 am
Location: Azeitão, PT

Post by Jorge Nuno » Wed Jan 30, 2008 9:18 pm

Really? Thank you! :D 8)

Christuserloeser
Very interested
Posts: 145
Joined: Sun Jan 28, 2007 2:01 am
Location: DCEvolution.net
Contact:

Post by Christuserloeser » Sun Feb 17, 2008 3:36 pm

Thanks for this release Pascal :D
http://www.DCEvolution.net - Gigabytes of free Dreamcast software for you

Image

cdoty
Very interested
Posts: 117
Joined: Wed Nov 29, 2006 2:54 pm
Location: Houston, TX
Contact:

Post by cdoty » Wed Mar 05, 2008 7:25 pm

Excellent utility!

The only suggestions I have are to save/load the layout.bin file to the same directory as the exe is in, and allow a window (such as Log) to be closed in the layout. Currently it will save the layout to the directory where the rom is loaded from. This results in the layout being reset to the original layout when md studio is launched. This can temporarily be fixed by dragging the created layout.bin (in the same directory as the rom), back to the same directory as the application is stored in. The second suggestion isn't critical, since the windows fit nicely on the screen now.

Should the debugger know the address of bss variables? I defined a variable Temp in the BSS section, but the debugger show the ram address, rather than Temp. And, if the debugger knows the bss variable name, couldn't you add a watch based on the variable name?

One 'final' question, is the snasm .map file the only file needed by the debugger for symbol info?

Pascal
Very interested
Posts: 200
Joined: Wed Nov 29, 2006 11:29 am
Location: Belgium
Contact:

Post by Pascal » Mon Mar 10, 2008 7:53 am

cdoty wrote:Excellent utility!

The only suggestions I have are to save/load the layout.bin file to the same directory as the exe is in, and allow a window (such as Log) to be closed in the layout. Currently it will save the layout to the directory where the rom is loaded from. This results in the layout being reset to the original layout when md studio is launched. This can temporarily be fixed by dragging the created layout.bin (in the same directory as the rom), back to the same directory as the application is stored in. The second suggestion isn't critical, since the windows fit nicely on the screen now.

Should the debugger know the address of bss variables? I defined a variable Temp in the BSS section, but the debugger show the ram address, rather than Temp. And, if the debugger knows the bss variable name, couldn't you add a watch based on the variable name?

One 'final' question, is the snasm .map file the only file needed by the debugger for symbol info?
thanks :) i've problems to update the code of mdstudio, i changed computers, and the docking layout library seems to have been discontinue and doesn't work with the latest wxwindows framework. I need to remove the docking library and use the new native docking library in wx.That'd take me a lots of time but for now it's not my top priority, i prefer to concentrate on other project (i apologize jorge).

About your problem with the bss charles, some symbols with the same address can overlap each other, the program pick the last symbol the found. And the .map is the only file you need


for the others , here's how to get the symbol loading feature

if you want to have the symbol loading feature, you need to use snasm68k
and define 2 sections in a main.lnk file:

Code: Select all

Cart group obj $0 
section M68Kcode,Cart 

68kBss group obj $00ff0000 
section Vars,68kBss 

include myrom.cof 
and compile like this

snasm68k /l -o v+ -o c+ -o m+ myrom.asm,myrom,myrom,myrom
snasm68k /p -o v+ -o c+ -o m+ main.lnk,myrom.bin

Be sure to use the section 'M68KCode' (for the code) and 'Vars' for the ram

Post Reply