GUI for bochs debugger

This forums is for OS project announcements including project openings, new releases, update notices, test requests, and job openings (both paying and volunteer).
User avatar
Combuster
Member
Member
Posts: 9301
Joined: Wed Oct 18, 2006 3:45 am
Libera.chat IRC: [com]buster
Location: On the balcony, where I can actually keep 1½m distance
Contact:

Re: GUI for bochs debugger

Post by Combuster »

First of all, it looks nice.

Secondly, it has nothing (apparent) that you can't do directly with the text version of the debugger. Which makes it "just eyecandy", and I know the devs to be rather picky about what they allow - most likely it needs to support *everything* the text debugger can do before they accept it into trunk.
"Certainly avoid yourself. He is a newbie and might not realize it. You'll hate his code deeply a few years down the road." - Sortie
[ My OS ] [ VDisk/SFS ]
WindowsNT
Member
Member
Posts: 77
Joined: Thu Jun 26, 2008 12:55 pm

Re: GUI for bochs debugger

Post by WindowsNT »

I am willing to make a gui for me to be useful and for all you that are interested. A Gui is not just an "eye candy". It helps raise the productivity and effectiveness of the work.

I plan to make it the way i like it, and by releasing the source to all you, you will make it the way you like it as well. But I am not making it in some way to be accepted for the devs; They obviously do not care of the gui (just see the existing "experimental win32 interface" and the win32 files to notice how far from the gui reality were the people that made them), so what I 've done will most probably be useless to them.

If you think that a gui is nothing but an eye candy, then what I make is certainly of no use to you - but I am a Windows programmer and in Windows we pay a lot of attention to the gui as a part of a program itself, and not merely as a frontend to some command line tool.
User avatar
Combuster
Member
Member
Posts: 9301
Joined: Wed Oct 18, 2006 3:45 am
Libera.chat IRC: [com]buster
Location: On the balcony, where I can actually keep 1½m distance
Contact:

Re: GUI for bochs debugger

Post by Combuster »

A GUI is bad for productivity unless it actually uses the capabilities of its environment. Your GUI is still text and menu's and hence a piece of graphic that is a spiced up version of what you see in the text version.
"Certainly avoid yourself. He is a newbie and might not realize it. You'll hate his code deeply a few years down the road." - Sortie
[ My OS ] [ VDisk/SFS ]
User avatar
lukem95
Member
Member
Posts: 536
Joined: Fri Aug 03, 2007 6:03 am
Location: Cambridge, UK

Re: GUI for bochs debugger

Post by lukem95 »

@ Combuster, ah but this appears to display things in a much more useful fashion than the command line, and that's surely going to increase productivity?
~ Lukem95 [ Cake ]
Release: 0.08b
Image
User avatar
bewing
Member
Member
Posts: 1401
Joined: Wed Feb 07, 2007 1:45 pm
Location: Eugene, OR, US

Re: GUI for bochs debugger

Post by bewing »

I disagree with combuster -- if I do not have to type 'disassemble 0x????? 0x??????' every few steps, that makes my life a lot easier. (Especially since, on rare occasions, I type the addresses wrong, and there is no way to stop the damned thing from dumping an incorrect disassembly once it's started!!! :evil: )

And if I don't have to type 'r' to see the register dump, every few steps, that makes my life even easier. I very much want to be able to see the disassembly and register contents ALWAYS. So this is a good start.

I can see why they might not be interested, though -- there is already a semi-official Windows GUI interface for bochs. I never tried it out.

Questions:

1) can I click on a register and change its value? Is it always in hex?
2) can I click on a memory location and change its value? (I kinda hate typing 'setpmem 0x????? ? 0x?????')
3) How/where do I type bochs commands?
4) it would be nice if the disassembly window did not start with the current command. I'd like to be able to see UP maybe 50 to 100 lines, above the current screenful, and maybe down the same amount below the current screen, with a slider. -- I know this is much more difficult, though, because you can't just do a new disassembly at every step.
WindowsNT
Member
Member
Posts: 77
Joined: Thu Jun 26, 2008 12:55 pm

Re: GUI for bochs debugger

Post by WindowsNT »

bewing wrote:I disagree with combuster -- if I do not have to type 'disassemble 0x????? 0x??????' every few steps, that makes my life a lot easier. (Especially since, on rare occasions, I type the addresses wrong, and there is no way to stop the damned thing from dumping an incorrect disassembly once it's started!!! :evil: )

And if I don't have to type 'r' to see the register dump, every few steps, that makes my life even easier. I very much want to be able to see the disassembly and register contents ALWAYS. So this is a good start.

I can see why they might not be interested, though -- there is already a semi-official Windows GUI interface for bochs. I never tried it out.

Questions:

1) can I click on a register and change its value? Is it always in hex?
2) can I click on a memory location and change its value? (I kinda hate typing 'setpmem 0x????? ? 0x?????')
3) How/where do I type bochs commands?
4) it would be nice if the disassembly window did not start with the current command. I'd like to be able to see UP maybe 50 to 100 lines, above the current screenful, and maybe down the same amount below the current screen, with a slider. -- I know this is much more difficult, though, because you can't just do a new disassembly at every step.
1. Yes
2. Yes
3. I have an input window at bottom.
4. This is tough, but perhaps i will cache previous dissassembly.

The semi-official existing gui interface is not worth trying.
User avatar
Masterkiller
Member
Member
Posts: 153
Joined: Sat May 05, 2007 6:20 pm

Re: GUI for bochs debugger

Post by Masterkiller »

Really Great Work. I'm getting sick of ten minutes console debugging for so ridiculous mistakes, that I forgot to zero a register or inc/dec cx in a loop. Very good job. Thank you!
I see there is a memory viewer and disassabler. Are they MDI Child that can be rearranged. ;)
If you need I am glad to help.
ALCA OS: Project temporarity suspended!
Current state: real-mode kernel-FS reader...
WindowsNT
Member
Member
Posts: 77
Joined: Thu Jun 26, 2008 12:55 pm

Re: GUI for bochs debugger

Post by WindowsNT »

Is there a command that can set the data for a linear address ? setpmem only works for physical address.

I put also a linear memory dump.
WindowsNT
Member
Member
Posts: 77
Joined: Thu Jun 26, 2008 12:55 pm

Re: GUI for bochs debugger

Post by WindowsNT »

Current features:

* Asm/Dump/Registers/Controls all-in-one
* GDT table explanation
* Input/Output to bochs if you need to command it
* Physical or Linear dump
* Registers automatically change when entering/exiting protected or long mode to 32-bit/64-bit etc
* Registers get red when changed
* Toggle/Untoggle breakpoint at dissassembly
* Keyboard shortcuts for all the stuff

http://www.turboirc.com/asm/b4.jpg
User avatar
bewing
Member
Member
Posts: 1401
Joined: Wed Feb 07, 2007 1:45 pm
Location: Eugene, OR, US

Re: GUI for bochs debugger

Post by bewing »

re: setting values in linear mem

There doesn't seem to be a command for it. Maybe there is a way to use the x command or something to figure out the mem to pmem mapping?

And I'm curious -- did you ever try out the BFE software, to see how different it is from yours?
WindowsNT
Member
Member
Posts: 77
Joined: Thu Jun 26, 2008 12:55 pm

Re: GUI for bochs debugger

Post by WindowsNT »

BFE is not for Windows afaik.
User avatar
Alboin
Member
Member
Posts: 1466
Joined: Thu Jan 04, 2007 3:29 pm
Location: Noricum and Pannonia

Re: GUI for bochs debugger

Post by Alboin »

It's possible, apparently...

There's an old Delphi one as well.

Nothing outstanding.

Does BFE even work for modern GRUBage?
C8H10N4O2 | #446691 | Trust the nodes.
User avatar
kmtdk
Member
Member
Posts: 263
Joined: Sat May 17, 2008 4:05 am
Location: Cyperspace, Denmark
Contact:

Re: GUI for bochs debugger

Post by kmtdk »

sounds good. By the way, the old delphi, dont work with bochs v2 and over.
Is it possibel to include the "restart" fuction, as in the bochs.
will it be possible to change the front after your own opinien ?


KMT dk
well, what to say, to much to do in too little space.
when it goes up hill, increase work, when it goes straight, test yourself but when going down, slow down.
WindowsNT
Member
Member
Posts: 77
Joined: Thu Jun 26, 2008 12:55 pm

Re: GUI for bochs debugger

Post by WindowsNT »

I 've decided to release a test version of it so you can see it working and submit me bugs and feature requests.
Note, do expect for it to have some bugs (for example, dump is not automatically updated), which would be resolved with your feedback. When the project is completed, I will release the source.

http://www.turboirc.com/tools/bochs.exe

This version has the 'auto update' feature from menu help, so when I update it, you simply check that menu item and it automatically downloads the update.

Make sure that the bochs option to load the gui is enabled
display_library: win32, options="windebug" # in .bochsrc


Try it and tell me what you think.
Best Regards.
Last edited by WindowsNT on Fri Jul 18, 2008 1:39 pm, edited 1 time in total.
User avatar
Brynet-Inc
Member
Member
Posts: 2426
Joined: Tue Oct 17, 2006 9:29 pm
Libera.chat IRC: brynet
Location: Canada
Contact:

Re: GUI for bochs debugger

Post by Brynet-Inc »

Writing a non-portable GUI frontend for a portable x86 emulator? What's the point? :roll:

This should be in the "General Programming" section.
Image
Twitter: @canadianbryan. Award by smcerm, I stole it. Original was larger.
Locked