Page 1 of 2
MD Developer Studio 2005 released
Posted: Sun Jan 27, 2008 4:09 pm
by Pascal
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
Posted: Sun Jan 27, 2008 10:47 pm
by Jorge Nuno
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

Posted: Mon Jan 28, 2008 9:35 am
by Pascal
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)
Posted: Mon Jan 28, 2008 10:02 am
by MG
Good tools !
It's functionnal under Vista.
A+
Posted: Mon Jan 28, 2008 10:15 am
by LocalH
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.
Posted: Mon Jan 28, 2008 10:16 am
by Jorge Nuno
Pascal wrote:you can not redefine controls, sorry, this program was tailored for my needs, and i was not planning to released

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...
Posted: Mon Jan 28, 2008 10:19 am
by LocalH
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.
Posted: Mon Jan 28, 2008 10:23 am
by Jorge Nuno
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...

Posted: Mon Jan 28, 2008 11:09 am
by Pascal
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

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
Posted: Mon Jan 28, 2008 11:16 am
by Jorge Nuno
Thanks for trying to get the program to work for me

Posted: Wed Jan 30, 2008 9:13 pm
by Pascal
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 ^^
Posted: Wed Jan 30, 2008 9:18 pm
by Jorge Nuno
Really? Thank you!

Posted: Sun Feb 17, 2008 3:36 pm
by Christuserloeser
Thanks for this release Pascal

Posted: Wed Mar 05, 2008 7:25 pm
by cdoty
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?
Posted: Mon Mar 10, 2008 7:53 am
by Pascal
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