dMZX Forums: F11/Debug Improvements -> MegaZeux Feature Requests -> Tracker

Jump to content

Report ID 495 Title F11/Debug Improvements
Product MegaZeux Feature Requests Status Approved (Severity 3 - Medium)
Version 2.93 Fixed in -

Page 1 of 1
  • Cannot start a new Issue
  • You cannot reply to this issue

Report ID #495: F11/Debug Improvements

#1 User is offline  
Terryn 

  • ******
  • Group: DigiStaff
  • Posts: 2,961
  • Joined: 12-October 00
  • Gender:Male

Posted 14 June 2012 - 11:48 PM

The debug menu is very helpful, but it has its flaws, and can stand to be much more powerful. Here are some suggestions for improving the debug menu:

  • Toggles to Hide Given Subsets of Counters and Strings. Requests to wipe or hide strings/counters with values of blank/0 have already been made HERE. Additional suggestions for hiding include a toggle to hide all built-in counters.
  • Initialization of New Values. Input the name of the counter/string to be initialized in the first field, and the value in the other. In any case where the given counter/string already exists, possible options include: denying the change but noting the desired counter/string already exists; declaring that the given counter/string already exists and then asking if the user wants to override the previously-existing value; setting the given counter/string at the new value without a declaration.
  • Display of All Readable Built-In Counters and Strings. Some important ones are special-cased in (e.g. MZX_SPEED), but most are cased out. Special care should be taken in suddenly setting some of these values. Should ones that are write-only, such as bimesg, be visible in the F11 menu?
  • Find/Replace. Find for both name and value scopes, replace for value scopes. Find as a name scope is probably extraneous for most usages, but even for names, shift+key jumping may not be effective enough, depending on the code and how many similarly-named counter/strings it uses.
  • Different Interface For Editing Strings. INPUT STRING boxes are really, really limited in size. A different interface would be preferable, something more akin to the scroll editor except nowhere near as horrible :p Concerns about the limited setting have been already made HERE.
  • Display of Local Values of Robots on Current Board. Just displaying r#.counter values would work but there's probably more user-friendly ways to display that crap, considering each listed Robot can have in excess of 30 locals set. Perhaps a different window with listed Robots by id followed by current name, and clicking on the name expands to a list of its local counters and values? pfff.


Probably some other things I'm forgetting, and I'm sure some of these suggestions have pitfalls / just plain suck. At any rate, they're condensed into one thread now.
angelic stream - shed sanguine - ill-adapt - avis - para/lyser - renaissance - dead tangent - phosphene blur - birth breeds death - ________ - painted glass - lagniappe

<Exophase> HES STEALING MAH AIRSHIP!!!!!!11111111


Page 1 of 1  
  • Cannot start a new Issue
  • You cannot reply to this issue

Replies (1 - 15)

#2 User is offline  
Lachesis 

  • the pinnacle of human emotion
  • Group: DigiStaff
  • Posts: 3,904
  • Joined: 17-July 04
  • Gender:Female
  • Location:Sealand

Posted 14 June 2012 - 11:58 PM

Updating status to: Approved
Updating severity to: 3 - Medium

Terryn, on 14 June 2012 - 04:48 PM, said:

Toggles to Hide Given Subsets of Counters and Strings. Requests to wipe or hide strings/counters with values of blank/0 have already been made HERE. Additional suggestions for hiding include a toggle to hide all built-in counters.

Quote

Display of All Readable Built-In Counters and Strings. Some important ones are special-cased in (e.g. MZX_SPEED), but most are cased out. Special care should be taken in suddenly setting some of these values. Should ones that are write-only, such as bimesg, be visible in the F11 menu?

Quote

Display of Local Values of Robots on Current Board. Just displaying r#.counter values would work but there's probably more user-friendly ways to display that crap, considering each listed Robot can have in excess of 30 locals set. Perhaps a different window with listed Robots by id followed by current name, and clicking on the name expands to a list of its local counters and values? pfff.

I was thinking about making the counter debugger have a tree view with world vars, board vars (unsettables for those two would have red BGs), built-in counters, counters A-Z (if applicable), strings A-Z (if applicable), detected large subsets of either, sprites 0-255 (for all applicable), board robots, and the global robot, in addition to a toggle for hiding empties.

Quote

Initialization of New Values. Input the name of the counter/string to be initialized in the first field, and the value in the other. In any case where the given counter/string already exists, possible options include: denying the change but noting the desired counter/string already exists; declaring that the given counter/string already exists and then asking if the user wants to override the previously-existing value; setting the given counter/string at the new value without a declaration.

I don't know how hard this would be but it's a very good idea.

Quote

Find/Replace. Find for both name and value scopes, replace for value scopes. Find as a name scope is probably extraneous for most usages, but even for names, shift+key jumping may not be effective enough, depending on the code and how many similarly-named counter/strings it uses.

For names, see the first reply. Not sure how useful this would be for values.

Quote

Different Interface For Editing Strings. INPUT STRING boxes are really, really limited in size. A different interface would be preferable, something more akin to the scroll editor except nowhere near as horrible :p Concerns about the limited setting have been already made HERE.

I'd like to go through with the UI suggestion I made in that thread.
"Let's just say I'm a GOOD hacker, AND virus maker. I'm sure you wouldn't like to pay for another PC would you?"

xx̊y (OST) - HELLQUEST (OST) - Zeux I: Labyrinth of Zeux (OST) (DOS OST)
w/ Lancer-X and/or asgromo: Pandora's Gate - Thanatos Insignia - no True(n) - For Elise OST
MegaZeux: Online Help File - Keycode Guide - Joystick Guide - Official GIT Repository

#3 User is offline  
Lachesis 

  • the pinnacle of human emotion
  • Group: DigiStaff
  • Posts: 3,904
  • Joined: 17-July 04
  • Gender:Female
  • Location:Sealand

Posted 16 June 2012 - 09:38 PM

Updating version to: 2.84c

This was brought up in IRC a couple of days ago and a Find for counter names despite the tree structure would probably be worthwhile anyhow. Giving a concrete target version for F11 dialog improvements in general is difficult but I'd like to at least hope the tree view is in by 2.84c. If anything gets pushed off further than that it'd be the string setting interface.
"Let's just say I'm a GOOD hacker, AND virus maker. I'm sure you wouldn't like to pay for another PC would you?"

xx̊y (OST) - HELLQUEST (OST) - Zeux I: Labyrinth of Zeux (OST) (DOS OST)
w/ Lancer-X and/or asgromo: Pandora's Gate - Thanatos Insignia - no True(n) - For Elise OST
MegaZeux: Online Help File - Keycode Guide - Joystick Guide - Official GIT Repository

#4 User is offline  
Lachesis 

  • the pinnacle of human emotion
  • Group: DigiStaff
  • Posts: 3,904
  • Joined: 17-July 04
  • Gender:Female
  • Location:Sealand

Posted 18 December 2012 - 03:42 AM

This has been creeping closer towards completion during the past few days. The tree and searching names/values are both finished, creating new variables is next on the plate. Improved string editing is going to be pushed off most likely.
"Let's just say I'm a GOOD hacker, AND virus maker. I'm sure you wouldn't like to pay for another PC would you?"

xx̊y (OST) - HELLQUEST (OST) - Zeux I: Labyrinth of Zeux (OST) (DOS OST)
w/ Lancer-X and/or asgromo: Pandora's Gate - Thanatos Insignia - no True(n) - For Elise OST
MegaZeux: Online Help File - Keycode Guide - Joystick Guide - Official GIT Repository

#5 User is offline  
Lachesis 

  • the pinnacle of human emotion
  • Group: DigiStaff
  • Posts: 3,904
  • Joined: 17-July 04
  • Gender:Female
  • Location:Sealand

Posted 18 December 2012 - 10:12 AM

Finished new variables and hiding empty variables in GIT e9a440d. I'll leave this approved to let bug reports flow in for now and then flag the rest for 2.84d later. "The rest" includes:

  • Improved string editor
  • Search/replace values (part of the new editor)


Something else that's been on my mind is: counters as bit fields. I use counters like this from time to time and it's a pain setting flags with higher values -- maybe there could be a bit editor for counters in the future too.
"Let's just say I'm a GOOD hacker, AND virus maker. I'm sure you wouldn't like to pay for another PC would you?"

xx̊y (OST) - HELLQUEST (OST) - Zeux I: Labyrinth of Zeux (OST) (DOS OST)
w/ Lancer-X and/or asgromo: Pandora's Gate - Thanatos Insignia - no True(n) - For Elise OST
MegaZeux: Online Help File - Keycode Guide - Joystick Guide - Official GIT Repository

#6 User is offline  
Lachesis 

  • the pinnacle of human emotion
  • Group: DigiStaff
  • Posts: 3,904
  • Joined: 17-July 04
  • Gender:Female
  • Location:Sealand

Posted 18 December 2012 - 04:21 PM

/*
22 x 9
+-[counter name]-----+
|
| [input x 12] [Set] |
|
| [+]  [-]  [*]  [/] |
|
| [%]  [&]  [|]  [^] |
|
+--------------------+
*/

/*
+-[string name]-- w=80 -+
| +---------------...-+ |
| |Wrapping field     | |
| |(non-text chars    | |
| |escaped)           | |
h=8+5

| +---------------...-+ |
|  [ Goto ]  [Search/Replace]      [ Done ]   [Cancel]  |
+------------------------------------------------ ... --+
*/

/*
2+9+3+2 + 16*3 + 16
Ins: insert byte
Del: delete byte
0-9 A-F (left): change bytes
Typing (right): change bytes
+-[string name]----------------------------------------------------------------+
| 0x000000 XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX || 0123456789ABCDEF |
h=21+4
+------------------------------------------------------------------------------+
|  [ Goto ]  [Search/Replace]  [Insert]  [Delete]          [ Done ]  [Cancel]  |
+------------------------------------------------------------------------------+
*/


In order of difficulty of implementation
"Let's just say I'm a GOOD hacker, AND virus maker. I'm sure you wouldn't like to pay for another PC would you?"

xx̊y (OST) - HELLQUEST (OST) - Zeux I: Labyrinth of Zeux (OST) (DOS OST)
w/ Lancer-X and/or asgromo: Pandora's Gate - Thanatos Insignia - no True(n) - For Elise OST
MegaZeux: Online Help File - Keycode Guide - Joystick Guide - Official GIT Repository

#7 User is offline  
Lachesis 

  • the pinnacle of human emotion
  • Group: DigiStaff
  • Posts: 3,904
  • Joined: 17-July 04
  • Gender:Female
  • Location:Sealand

Posted 21 December 2012 - 10:11 AM

Updating version to: 2.84d
"Let's just say I'm a GOOD hacker, AND virus maker. I'm sure you wouldn't like to pay for another PC would you?"

xx̊y (OST) - HELLQUEST (OST) - Zeux I: Labyrinth of Zeux (OST) (DOS OST)
w/ Lancer-X and/or asgromo: Pandora's Gate - Thanatos Insignia - no True(n) - For Elise OST
MegaZeux: Online Help File - Keycode Guide - Joystick Guide - Official GIT Repository

#8 User is offline  
Dr Lancer-X 

  • 電波、届いた?
  • Group: DigiStaff
  • Posts: 8,938
  • Joined: 20-March 02
  • Location:ur mom nmiaow

Posted 26 December 2012 - 12:00 AM

HERE'S A SUGGESTION MAVERICK LACHESIS

When selecting strings in the F11 menu, allow the user to just type the first letter of the string (e.g. 's' for '$string') to seek to a string, rather than having to type a $ first which can be tricky if there are multiple characters to follow.
Posted Image
<Malwyn> Yes, yes. Don't worry I'd rather masturbate with broken glass than ask you for help again. :(

#9 User is offline  
Lachesis 

  • the pinnacle of human emotion
  • Group: DigiStaff
  • Posts: 3,904
  • Joined: 17-July 04
  • Gender:Female
  • Location:Sealand

Posted 29 July 2013 - 07:29 PM

Lancer-X: not sure how doable that is, since it's a built-in functionality of the list element. I'll look into it.
"Let's just say I'm a GOOD hacker, AND virus maker. I'm sure you wouldn't like to pay for another PC would you?"

xx̊y (OST) - HELLQUEST (OST) - Zeux I: Labyrinth of Zeux (OST) (DOS OST)
w/ Lancer-X and/or asgromo: Pandora's Gate - Thanatos Insignia - no True(n) - For Elise OST
MegaZeux: Online Help File - Keycode Guide - Joystick Guide - Official GIT Repository

#10 User is offline  
Lachesis 

  • the pinnacle of human emotion
  • Group: DigiStaff
  • Posts: 3,904
  • Joined: 17-July 04
  • Gender:Female
  • Location:Sealand

Posted 22 March 2015 - 02:42 PM

Lancer-X: do u like my hack

diff --git a/src/window.c b/src/window.c
index 7e108a9..83afa88 100644
--- a/src/window.c
+++ b/src/window.c
@@ -917,7 +917,7 @@ static int find_entry(const char **choices, char *name, int total_num)
     else
 #endif
 
-    cmpval = strncasecmp(name, choices[current_entry], name_length);
+    cmpval = strncasecmp(name, choices[current_entry]+(int)(choices[current_entry][0] == '$'), name_length);
 
     if(cmpval == 0)
     {


i don't. it might be better to scan the entire list and make sure everything starts with a $. anyway, it's a start, and it works
"Let's just say I'm a GOOD hacker, AND virus maker. I'm sure you wouldn't like to pay for another PC would you?"

xx̊y (OST) - HELLQUEST (OST) - Zeux I: Labyrinth of Zeux (OST) (DOS OST)
w/ Lancer-X and/or asgromo: Pandora's Gate - Thanatos Insignia - no True(n) - For Elise OST
MegaZeux: Online Help File - Keycode Guide - Joystick Guide - Official GIT Repository

#11 User is offline  
Lachesis 

  • the pinnacle of human emotion
  • Group: DigiStaff
  • Posts: 3,904
  • Joined: 17-July 04
  • Gender:Female
  • Location:Sealand

Posted 06 June 2017 - 07:39 AM

Updating version to: 2.85b


This probably isn't getting into 2.85.
"Let's just say I'm a GOOD hacker, AND virus maker. I'm sure you wouldn't like to pay for another PC would you?"

xx̊y (OST) - HELLQUEST (OST) - Zeux I: Labyrinth of Zeux (OST) (DOS OST)
w/ Lancer-X and/or asgromo: Pandora's Gate - Thanatos Insignia - no True(n) - For Elise OST
MegaZeux: Online Help File - Keycode Guide - Joystick Guide - Official GIT Repository

#12 User is offline  
Lachesis 

  • the pinnacle of human emotion
  • Group: DigiStaff
  • Posts: 3,904
  • Joined: 17-July 04
  • Gender:Female
  • Location:Sealand

Posted 06 June 2017 - 09:24 PM

Updating version to: 2.84c

"Let's just say I'm a GOOD hacker, AND virus maker. I'm sure you wouldn't like to pay for another PC would you?"

xx̊y (OST) - HELLQUEST (OST) - Zeux I: Labyrinth of Zeux (OST) (DOS OST)
w/ Lancer-X and/or asgromo: Pandora's Gate - Thanatos Insignia - no True(n) - For Elise OST
MegaZeux: Online Help File - Keycode Guide - Joystick Guide - Official GIT Repository

#13 User is offline  
Lachesis 

  • the pinnacle of human emotion
  • Group: DigiStaff
  • Posts: 3,904
  • Joined: 17-July 04
  • Gender:Female
  • Location:Sealand

Posted 06 June 2017 - 09:24 PM

Updating version to: 2.90b


ipb is a steaming pile
"Let's just say I'm a GOOD hacker, AND virus maker. I'm sure you wouldn't like to pay for another PC would you?"

xx̊y (OST) - HELLQUEST (OST) - Zeux I: Labyrinth of Zeux (OST) (DOS OST)
w/ Lancer-X and/or asgromo: Pandora's Gate - Thanatos Insignia - no True(n) - For Elise OST
MegaZeux: Online Help File - Keycode Guide - Joystick Guide - Official GIT Repository

#14 User is offline  
Lachesis 

  • the pinnacle of human emotion
  • Group: DigiStaff
  • Posts: 3,904
  • Joined: 17-July 04
  • Gender:Female
  • Location:Sealand

Posted 09 June 2017 - 06:40 AM

There are a few variables missing from this that might be useful:

Added:
/*
BOARD:

board_mod (mod_playing)
input (num_input)
input* (input_string)
inputsize
key
volume

SPRITE:

spr!_offset
spr!_tcol
spr!_unbound

ROBOT:

lockself
*/

"Let's just say I'm a GOOD hacker, AND virus maker. I'm sure you wouldn't like to pay for another PC would you?"

xx̊y (OST) - HELLQUEST (OST) - Zeux I: Labyrinth of Zeux (OST) (DOS OST)
w/ Lancer-X and/or asgromo: Pandora's Gate - Thanatos Insignia - no True(n) - For Elise OST
MegaZeux: Online Help File - Keycode Guide - Joystick Guide - Official GIT Repository

#15 User is offline  
Lachesis 

  • the pinnacle of human emotion
  • Group: DigiStaff
  • Posts: 3,904
  • Joined: 17-July 04
  • Gender:Female
  • Location:Sealand

Posted 06 September 2017 - 09:06 PM

Updating version to: 2.92
"Let's just say I'm a GOOD hacker, AND virus maker. I'm sure you wouldn't like to pay for another PC would you?"

xx̊y (OST) - HELLQUEST (OST) - Zeux I: Labyrinth of Zeux (OST) (DOS OST)
w/ Lancer-X and/or asgromo: Pandora's Gate - Thanatos Insignia - no True(n) - For Elise OST
MegaZeux: Online Help File - Keycode Guide - Joystick Guide - Official GIT Repository

#16 User is offline  
Lachesis 

  • the pinnacle of human emotion
  • Group: DigiStaff
  • Posts: 3,904
  • Joined: 17-July 04
  • Gender:Female
  • Location:Sealand

Posted 14 April 2021 - 05:59 AM

Updating version to: 2.93
"Let's just say I'm a GOOD hacker, AND virus maker. I'm sure you wouldn't like to pay for another PC would you?"

xx̊y (OST) - HELLQUEST (OST) - Zeux I: Labyrinth of Zeux (OST) (DOS OST)
w/ Lancer-X and/or asgromo: Pandora's Gate - Thanatos Insignia - no True(n) - For Elise OST
MegaZeux: Online Help File - Keycode Guide - Joystick Guide - Official GIT Repository


Page 1 of 1
  • Cannot start a new Issue
  • You cannot reply to this issue

1 User(s) are reading this issue
1 Guests and 0 Anonymous Users


Powered by IP.Tracker 1.3.2 © 2024  IPS, Inc.