Solution: MASTER SPY without covering whole screen (no other progs visible)
Solution: MASTER SPY without covering whole screen (no other progs visible)
I want besides MicroEMACS (the most powerful editor for the QL) another small editor. Albeit I formerly (20 years ago) used Metacomco ED (or) compatible editors like The Editor or Jan's QED, I now don't know the commands anymore. So I want an editor with optional menus.
On QPC2 I normally used Ralf's S_EDIT, but this does not work on Minerva and the old version, which is compatible with Minerva, cannot be repositioned. I formerly (20 years ago) was happy with MASTER SPY (extremly fast, has menus via F3), but it's not usable anymore, cause it covers the whole screen (i.e. no other program windows, Button Frame visible). But now I have succeeded to use it :‑D
http://peter-sulzer.bplaced.net
GERMAN! QL-Download page also available in English: GETLINE$() function, UNIX-like "ls" command, improved DIY-Toolkit function EDLINE$ - All with source. AND a good Python 3 Tutorial (German) for Win/UNIX
GERMAN! QL-Download page also available in English: GETLINE$() function, UNIX-like "ls" command, improved DIY-Toolkit function EDLINE$ - All with source. AND a good Python 3 Tutorial (German) for Win/UNIX

Re: Solution: MASTER SPY without covering whole screen (no other progs visible)
What annoys me more than the window size (which is easily changed if you bother to read the manual) is that MasterSpy does not use default directories. If I get my head around it, I might develop a bodge that makes it do that - MasterSpy is such a nice editor that It would definitely be worth it.
ʎɐqǝ ɯoɹɟ ǝq oʇ ƃuᴉoƃ ʇou sᴉ pɹɐoqʎǝʞ ʇxǝu ʎɯ 'ɹɐǝp ɥO
Re: Solution: MASTER SPY without covering whole screen (no other progs visible)
I have now tried to patch MasterSpy, so that it does not cover the whole screen, but didn't succeed. What I have found in the manual Section 11 is:
"1. Supported screen resolutions now include: 512 x 256. 512 x 288.512 x 384. 512 x 480. 640 x 200. 640
x 288,640 x 320, 640 x 350, 640 x 480, 768 x 288, 768 x 384, 768 x 480, 768 x 576, 800 x 600, 1024 x
288, 1024x480, 1024 x 512, 1024x576, 1024x768, 1152 x 864. 1152x882,1280x 1024, 1600 x
1200.1600 x 1280. 1880 x 1410. 1880 x 1440. and 2048 x 1536.
2. The screen mode is no longer automatically changed to mode 0 (4 colours) unless you request this (
check the Parameter List for flag CH )
3. The first window is now set to open to the full size of the available screen by default. you can overide
this by changing the dimensions in the Parameter List."
But in the Parameter List there is no parameter for the screen size. What I have tried (wanted to use 512x480): I changed all resolutions in the binary file (they are all near the top of the file) after the 512x480 to 512x480 (of course I changed the length byte before (to 15), and changed the bytes not used after it to 0 (for those resolutions which originally where longer than 15 bytes). I checked it a second time, that I does'nt have had a typo. But after these changes MasterSpy didn't start anymore.
"1. Supported screen resolutions now include: 512 x 256. 512 x 288.512 x 384. 512 x 480. 640 x 200. 640
x 288,640 x 320, 640 x 350, 640 x 480, 768 x 288, 768 x 384, 768 x 480, 768 x 576, 800 x 600, 1024 x
288, 1024x480, 1024 x 512, 1024x576, 1024x768, 1152 x 864. 1152x882,1280x 1024, 1600 x
1200.1600 x 1280. 1880 x 1410. 1880 x 1440. and 2048 x 1536.
2. The screen mode is no longer automatically changed to mode 0 (4 colours) unless you request this (
check the Parameter List for flag CH )
3. The first window is now set to open to the full size of the available screen by default. you can overide
this by changing the dimensions in the Parameter List."
But in the Parameter List there is no parameter for the screen size. What I have tried (wanted to use 512x480): I changed all resolutions in the binary file (they are all near the top of the file) after the 512x480 to 512x480 (of course I changed the length byte before (to 15), and changed the bytes not used after it to 0 (for those resolutions which originally where longer than 15 bytes). I checked it a second time, that I does'nt have had a typo. But after these changes MasterSpy didn't start anymore.
http://peter-sulzer.bplaced.net
GERMAN! QL-Download page also available in English: GETLINE$() function, UNIX-like "ls" command, improved DIY-Toolkit function EDLINE$ - All with source. AND a good Python 3 Tutorial (German) for Win/UNIX
GERMAN! QL-Download page also available in English: GETLINE$() function, UNIX-like "ls" command, improved DIY-Toolkit function EDLINE$ - All with source. AND a good Python 3 Tutorial (German) for Win/UNIX

Re: Solution: MASTER SPY without covering whole screen (no other progs visible)
This is probably the only program for the QL that can be configured this way. An INI file would have been more effective here. Not to mention CONFIG.
7000 4E75
Re: Solution: MASTER SPY without covering whole screen (no other progs visible)
Note there is a reason why MasterSpy wants the whole screen: It is a multi-window text editor, and basically uses the whole screen as a desktop, offering multiple windows that can edit multiple files at the same time. This would obviously not work well (especially not with the PE) if the console is only of limited size. Press "<ctrl>"V" to open a new view and <F4> to resize and move the view, <CTRL>"Z" to close a view. MasterSpy effectively creates its own window manager without PE - that is why. (MasterSpy is a relatively early QL program and was released before the PE had got a foothold)
If you don't like this, you should use the less sophisticated "Spy" editor which has approximately the same feature set but without multiple window support (Spy can also edit multiple files at the same time, but shows them in the same window).
If you absolutely want to patch the program to use a smaller "root window", only changing the console names is not enough. You need to change the assignment to the x and y resolution variables as well.

If you don't like this, you should use the less sophisticated "Spy" editor which has approximately the same feature set but without multiple window support (Spy can also edit multiple files at the same time, but shows them in the same window).
If you absolutely want to patch the program to use a smaller "root window", only changing the console names is not enough. You need to change the assignment to the x and y resolution variables as well.
- Change only the first console name to your liking (in my version, this is at offset $228), for example "CON_512x256a0x0". Don't forget to adapt the string length (to 15, in my example)
- Change the x resolution variable assignment for the first console size entry to the chosen x window size. (in my version, this is a word at offset $78c). Change this from $800 to your chosen x size (in my example, $200)
- Change the y resolution variable assignment for the first console size entry to the chosen y window size (in my version, this is a word at offset $792). Change this from $600 to your chosen y size (in my example, $100)

ʎɐqǝ ɯoɹɟ ǝq oʇ ƃuᴉoƃ ʇou sᴉ pɹɐoqʎǝʞ ʇxǝu ʎɯ 'ɹɐǝp ɥO
Re: Solution: MASTER SPY without covering whole screen (no other progs visible)
Okay I see the advantage (I think i understand what you mean). But I think this must not be used so often (of course it's great!). But what IMHO more often is needed is something like this (and that is possible with my trick, and it seems to work):
BTW: Detected a bug in MasterSpy 3.3 (which as far as I can remember was not present in the version I have had used on my real Goldcard QL):
If you press a hotkey (e.g. my hotkey to wake the Wake menu), it does not work in MasterSpy. If you press it multiple times, you may have "luck" (the Wake menu comes up). Afterwards MasterSpy has crashed. Cursor Up/Down keys do not work correctly, some keys give strange results, ...
Tested on UQLX under WSL2 on Windows (Ubuntu) with Minerva.
And one improvement would be, if the Window of MasterSpy would not fill the whole screen but would leave at least the Button Frame and the Sysmon visible at top.BTW: Detected a bug in MasterSpy 3.3 (which as far as I can remember was not present in the version I have had used on my real Goldcard QL):
If you press a hotkey (e.g. my hotkey to wake the Wake menu), it does not work in MasterSpy. If you press it multiple times, you may have "luck" (the Wake menu comes up). Afterwards MasterSpy has crashed. Cursor Up/Down keys do not work correctly, some keys give strange results, ...
Tested on UQLX under WSL2 on Windows (Ubuntu) with Minerva.
http://peter-sulzer.bplaced.net
GERMAN! QL-Download page also available in English: GETLINE$() function, UNIX-like "ls" command, improved DIY-Toolkit function EDLINE$ - All with source. AND a good Python 3 Tutorial (German) for Win/UNIX
GERMAN! QL-Download page also available in English: GETLINE$() function, UNIX-like "ls" command, improved DIY-Toolkit function EDLINE$ - All with source. AND a good Python 3 Tutorial (German) for Win/UNIX
