[Ohrrpgce] SVN: teeemcee/13496 parse_tests.hss: (failing) tests for name clashes, especially of subscri

2024-02-06 Thread subversion--- via Ohrrpgce
teeemcee
2024-02-06 23:08:25 -0800 (Tue, 06 Feb 2024)
82
parse_tests.hss: (failing) tests for name clashes, especially of 
subscripts/locals
---
U   wip/testgame/parser_tests.hss

___
Ohrrpgce mailing list
ohrrpgce@lists.motherhamster.org
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org


[Ohrrpgce] SVN: teeemcee/13497 hspeak refactor: don't pass local vars to add_local_variable and back, w

2024-02-06 Thread subversion--- via Ohrrpgce
teeemcee
2024-02-06 23:08:43 -0800 (Tue, 06 Feb 2024)
265
hspeak refactor: don't pass local vars to add_local_variable and back, write to 
all_scripts global instead

Also write the locals into all_scripts as soon as possible.

So that the list of locals in all_scripts is kept up-to-date.
Split out of the following commit.
---
U   wip/hspeak.exw

___
Ohrrpgce mailing list
ohrrpgce@lists.motherhamster.org
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org


[Ohrrpgce] SVN: teeemcee/13498 hspeak: check for locals in check_undefined_string instead of add_local_

2024-02-06 Thread subversion--- via Ohrrpgce
teeemcee
2024-02-06 23:08:58 -0800 (Tue, 06 Feb 2024)
80
hspeak: check for locals in check_undefined_string instead of add_local_variable
---
U   wip/hspeak.exw

___
Ohrrpgce mailing list
ohrrpgce@lists.motherhamster.org
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org


[Ohrrpgce] SVN: teeemcee/13499 hspeak didn't error when a local and a subscript had the same name

2024-02-06 Thread subversion--- via Ohrrpgce
teeemcee
2024-02-06 23:09:14 -0800 (Tue, 06 Feb 2024)
203
hspeak didn't error when a local and a subscript had the same name

check_undefined_string now checks for subscripts. Unfortunately this slows down
hspeak by 10% when compiling Entrepreneur or Eldardeen.
---
U   wip/hspeak.exw
U   wip/testgame/parser_tests.hss
U   wip/whatsnew.txt

___
Ohrrpgce mailing list
ohrrpgce@lists.motherhamster.org
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org


[Ohrrpgce] SVN: teeemcee/13500 hspeak: better srcpos info to track the position & length of tokens [Pat

2024-02-06 Thread subversion--- via Ohrrpgce
teeemcee
2024-02-06 23:09:39 -0800 (Tue, 06 Feb 2024)
450
hspeak: better srcpos info to track the position & length of tokens [Patch from 
2014!]

HSpeak now uses spans of 's to indicates whole tokens in errors rather than
just where they start.

Into 32 bits each srcpos now tracks:
-the offset in the source code (which has to be looked-up to find the file, line
 & column), max 8MB
-the length of the token (max 254 characters)
-whether the token is virtual, meaning it was added (e.g. an empty else())
---
U   wip/hspeak.exw

___
Ohrrpgce mailing list
ohrrpgce@lists.motherhamster.org
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org


[Ohrrpgce] SVN: teeemcee/13501 hspeak: Add debug info to compiled scripts

2024-02-06 Thread subversion--- via Ohrrpgce
teeemcee
2024-02-06 23:09:59 -0800 (Tue, 06 Feb 2024)
352
hspeak: Add debug info to compiled scripts

Adds a srcfiles.txt lump which is used to decode srcpos (to go from source 
offset to file/line/column).

Each .hsz gains an extended header, a table of local variable names, and each
tyscript, tymath, tyfunct and tyflow node is appended by it srcpos. This is
backward compatible with old script interpreters.
---
U   wip/hspeak.exw
U   wip/hsspiffy.e

___
Ohrrpgce mailing list
ohrrpgce@lists.motherhamster.org
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org


[Ohrrpgce] SVN: teeemcee/13502 Load new data from .hsz script headers

2024-02-06 Thread subversion--- via Ohrrpgce
teeemcee
2024-02-06 23:10:16 -0800 (Tue, 06 Feb 2024)
38
Load new data from .hsz script headers
---
U   wip/scripting.bas
U   wip/udts.bi

___
Ohrrpgce mailing list
ohrrpgce@lists.motherhamster.org
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org


[Ohrrpgce] SVN: teeemcee/13503 Functions to decode a srcpos and format an error message using it (WIP)

2024-02-06 Thread subversion--- via Ohrrpgce
teeemcee
2024-02-06 23:10:40 -0800 (Tue, 06 Feb 2024)
71
Functions to decode a srcpos and format an error message using it (WIP)
---
U   wip/common.rbas
U   wip/scripting.bas
U   wip/scripting.bi
U   wip/udts.bi

___
Ohrrpgce mailing list
ohrrpgce@lists.motherhamster.org
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org


[Ohrrpgce] SVN: teeemcee/13504 Show the offending source line in script errors (WIP)

2024-02-06 Thread subversion--- via Ohrrpgce
teeemcee
2024-02-06 23:10:56 -0800 (Tue, 06 Feb 2024)
53
Show the offending source line in script errors (WIP)
---
U   wip/oldhsinterpreter.bas
U   wip/scripting.bas
U   wip/scripting.bi

___
Ohrrpgce mailing list
ohrrpgce@lists.motherhamster.org
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org


[Ohrrpgce] SVN: teeemcee/13505 Add scriptcmdname to describe script Nodes, using actual local variable

2024-02-06 Thread subversion--- via Ohrrpgce
teeemcee
2024-02-06 23:11:18 -0800 (Tue, 06 Feb 2024)
221
Add scriptcmdname to describe script Nodes, using actual local variable names 
if available

More messy unfinished code in this 10-year-old commit.

Rewrite a good chunk of the nasty scriptstate function to make use of it.
---
U   wip/oldhsinterpreter.bas
U   wip/scrconst.bi
U   wip/scripting.bas
U   wip/scripting.bi

___
Ohrrpgce mailing list
ohrrpgce@lists.motherhamster.org
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org


[Ohrrpgce] SVN: teeemcee/13506 The script debugger now shows the current line of code

2024-02-06 Thread subversion--- via Ohrrpgce
teeemcee
2024-02-06 23:11:43 -0800 (Tue, 06 Feb 2024)
203
The script debugger now shows the current line of code

The original output of scriptstate is still available in a new submode, since
it has some additional info about arguments that have been evaluated.
---
U   wip/oldhsinterpreter.bas

___
Ohrrpgce mailing list
ohrrpgce@lists.motherhamster.org
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org


[Ohrrpgce] SVN: teeemcee/13507 Script debugger: start support for larger resolutions, add a header to s

2024-02-06 Thread subversion--- via Ohrrpgce
teeemcee
2024-02-06 23:11:58 -0800 (Tue, 06 Feb 2024)
97
Script debugger: start support for larger resolutions, add a header to show 
available modes (WIP)
---
U   wip/oldhsinterpreter.bas

___
Ohrrpgce mailing list
ohrrpgce@lists.motherhamster.org
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org


[Ohrrpgce] SVN: teeemcee/13508 hspeak: better checking for malformed 'include' lines [Patches now from

2024-02-06 Thread subversion--- via Ohrrpgce
teeemcee
2024-02-06 23:12:22 -0800 (Tue, 06 Feb 2024)
202
hspeak: better checking for malformed 'include' lines [Patches now from 2017]

Including a crash when 'include' isn't followed by a filename?

(Not bugs caused by the srcpos additions in recent commits)
---
U   wip/hspeak.exw
U   wip/hspeaktest.py
U   wip/testgame/parser_tests.hss

___
Ohrrpgce mailing list
ohrrpgce@lists.motherhamster.org
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org


[Ohrrpgce] SVN: teeemcee/13509 hspeak: correct handling of tabs when displaying source lines in error m

2024-02-06 Thread subversion--- via Ohrrpgce
teeemcee
2024-02-06 23:12:40 -0800 (Tue, 06 Feb 2024)
170
hspeak: correct handling of tabs when displaying source lines in error messages

(The "hspeak: better srcpos info" commit attempted to fix it, but it still
wasn't right.)
---
U   wip/hspeak.exw

___
Ohrrpgce mailing list
ohrrpgce@lists.motherhamster.org
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org


[Ohrrpgce] SVN: teeemcee/13511 Support relative srcpos, and add srcfiles global array.

2024-02-06 Thread subversion--- via Ohrrpgce
teeemcee
2024-02-06 23:14:23 -0800 (Tue, 06 Feb 2024)
226
Support relative srcpos, and add srcfiles global array.

Split out read_srcfiles_txt and decode_srcpos from get_script_line_info.

Use plain old lines_from_file() to load the file rather than setting through
counting newlines.
---
U   wip/game.bas
U   wip/gglobals.bi
U   wip/scripting.bas
U   wip/scripting.bi
U   wip/udts.bi

___
Ohrrpgce mailing list
ohrrpgce@lists.motherhamster.org
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org


[Ohrrpgce] SVN: teeemcee/13512 Move scriptcmdname and related functions together

2024-02-06 Thread subversion--- via Ohrrpgce
teeemcee
2024-02-06 23:14:47 -0800 (Tue, 06 Feb 2024)
77
Move scriptcmdname and related functions together

There are some changes too
---
U   wip/oldhsinterpreter.bas
U   wip/scripting.bas
U   wip/scripting.bi

___
Ohrrpgce mailing list
ohrrpgce@lists.motherhamster.org
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org


[Ohrrpgce] SVN: teeemcee/13513 For script nodes without srcpos info, use the parent node's srcpos

2024-02-06 Thread subversion--- via Ohrrpgce
teeemcee
2024-02-06 23:15:05 -0800 (Tue, 06 Feb 2024)
66
For script nodes without srcpos info, use the parent node's srcpos
---
U   wip/oldhsinterpreter.bas

___
Ohrrpgce mailing list
ohrrpgce@lists.motherhamster.org
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org


[Ohrrpgce] SVN: teeemcee/13514 Improvements to display of source line in script debugger and scripterr

2024-02-06 Thread subversion--- via Ohrrpgce
teeemcee
2024-02-06 23:15:16 -0800 (Tue, 06 Feb 2024)
121
Improvements to display of source line in script debugger and scripterr

Fix an off-by-one bug in the token highlighting.
---
U   wip/oldhsinterpreter.bas
U   wip/scripting.bas

___
Ohrrpgce mailing list
ohrrpgce@lists.motherhamster.org
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org


[Ohrrpgce] SVN: teeemcee/13515 A little code cleanup

2024-02-06 Thread subversion--- via Ohrrpgce
teeemcee
2024-02-06 23:15:26 -0800 (Tue, 06 Feb 2024)
21
A little code cleanup
---
U   wip/common.rbas
U   wip/oldhsinterpreter.bas
U   wip/scripting.bas
U   wip/util.bas

___
Ohrrpgce mailing list
ohrrpgce@lists.motherhamster.org
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org


[Ohrrpgce] SVN: teeemcee/13516 Bump hspeak version and a fix needed after rebasing forward 6 more years

2024-02-06 Thread subversion--- via Ohrrpgce
teeemcee
2024-02-06 23:15:38 -0800 (Tue, 06 Feb 2024)
80
Bump hspeak version and a fix needed after rebasing forward 6 more years to 2023
---
U   wip/hspeak.exw
U   wip/hsspiffy.e
U   wip/oldhsinterpreter.bas
U   wip/scrconst.bi
U   wip/scripting.bas

___
Ohrrpgce mailing list
ohrrpgce@lists.motherhamster.org
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org


[Ohrrpgce] SVN: teeemcee/13517 Script debugger high res support, improvements and lots of code cleanup

2024-02-06 Thread subversion--- via Ohrrpgce
teeemcee
2024-02-06 23:15:48 -0800 (Tue, 06 Feb 2024)
614
Script debugger high res support, improvements and lots of code cleanup

Proudly remove the "Usability trainwreck" warnings :)
At least 50% less awful (to use) than before! However I've only rewritten half
of the debugger, it's still a waitforkey + GOTO disaster.

When showing a virtual position on a script source line, tell what that virtual
node actually is. Very important for empty 'else's.

Don't show script Depth and State in F2 Source view. Still visible in
the advanced F7 Stack view.

The cleanup is focused on display and scrolling of the different views.
variable number of display lines and columns.
---
U   wip/hspeak.exw
U   wip/ohrhelp/game_script_debugger.txt
U   wip/oldhsinterpreter.bas
U   wip/scripting.bas
U   wip/scripting.bi
U   wip/udts.bi

___
Ohrrpgce mailing list
ohrrpgce@lists.motherhamster.org
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org


[Ohrrpgce] SVN: teeemcee/13518 Fix debug info for scripts with DOS or Mac line endings

2024-02-06 Thread subversion--- via Ohrrpgce
teeemcee
2024-02-06 23:15:57 -0800 (Tue, 06 Feb 2024)
266
Fix debug info for scripts with DOS or Mac line endings

decode_srcpos is probably faster too now that it doesn't use lines_from_file()

Mac line endings in script source files in source.lumped are now converted to
Unix to simplify parsing, while DOS are left alone.
---
U   wip/euphoria/io_with_unicode.e
U   wip/hspeak.exw
U   wip/oldhsinterpreter.bas
U   wip/scripting.bas

___
Ohrrpgce mailing list
ohrrpgce@lists.motherhamster.org
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org


[Ohrrpgce] SVN: teeemcee/13519 hspeak: Fix off-by-one error in encoding srcpos offsets

2024-02-06 Thread subversion--- via Ohrrpgce
teeemcee
2024-02-06 23:16:04 -0800 (Tue, 06 Feb 2024)
116
hspeak: Fix off-by-one error in encoding srcpos offsets

The engine's decode_srcpos had a matching off-by-one error.
---
U   wip/hspeak.exw
U   wip/scripting.bas

___
Ohrrpgce mailing list
ohrrpgce@lists.motherhamster.org
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org


[Ohrrpgce] SVN: teeemcee/13520 Implement looking up names of nonlocal variables

2024-02-06 Thread subversion--- via Ohrrpgce
teeemcee
2024-02-06 23:16:11 -0800 (Tue, 06 Feb 2024)
48
Implement looking up names of nonlocal variables
---
U   wip/scripting.bas

___
Ohrrpgce mailing list
ohrrpgce@lists.motherhamster.org
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org


[Ohrrpgce] SVN: teeemcee/13521 Script debugger: better scrolling, using accelerating_keydown

2024-02-06 Thread subversion--- via Ohrrpgce
teeemcee
2024-02-06 23:16:20 -0800 (Tue, 06 Feb 2024)
174
Script debugger: better scrolling, using accelerating_keydown

Also, call setkeys just once not twice when entering waitforanykey.
And add arg to not call setkeys afterwards.
---
U   wip/allmodex.bas
U   wip/allmodex.bi
U   wip/common.bi
U   wip/common.rbas
U   wip/oldhsinterpreter.bas

___
Ohrrpgce mailing list
ohrrpgce@lists.motherhamster.org
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org


[Ohrrpgce] SVN: teeemcee/13522 Script debugger: describe locals and globals handles

2024-02-06 Thread subversion--- via Ohrrpgce
teeemcee
2024-02-06 23:16:28 -0800 (Tue, 06 Feb 2024)
52
Script debugger: describe locals and globals handles
---
U   wip/oldhsinterpreter.bas

___
Ohrrpgce mailing list
ohrrpgce@lists.motherhamster.org
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org


[Ohrrpgce] SVN: teeemcee/13524 Change a couple script debugger keys, add "`Step `Next/`Run until/`Finis

2024-02-06 Thread subversion--- via Ohrrpgce
teeemcee
2024-02-06 23:16:44 -0800 (Tue, 06 Feb 2024)
196
Change a couple script debugger keys, add "`Step `Next/`Run until/`Finish 
script" hint

Changed "step one frame" key from P to C for Continue.
Changed "run until return to script" key from W to R.
---
U   wip/ohrhelp/game_script_debugger.txt
U   wip/oldhsinterpreter.bas

___
Ohrrpgce mailing list
ohrrpgce@lists.motherhamster.org
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org


[Ohrrpgce] SVN: teeemcee/13523 Add 'succinct' arg to DescribeSlice and describe_handle

2024-02-06 Thread subversion--- via Ohrrpgce
teeemcee
2024-02-06 23:16:36 -0800 (Tue, 06 Feb 2024)
55
Add 'succinct' arg to DescribeSlice and describe_handle
---
U   wip/scriptcommands.bas
U   wip/scriptcommands.bi
U   wip/slices.bas
U   wip/slices.bi

___
Ohrrpgce mailing list
ohrrpgce@lists.motherhamster.org
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org


[Ohrrpgce] SVN: teeemcee/13525 Script debugger: add F7 to enter slice debugger

2024-02-06 Thread subversion--- via Ohrrpgce
teeemcee
2024-02-06 23:16:51 -0800 (Tue, 06 Feb 2024)
47
Script debugger: add F7 to enter slice debugger
---
U   wip/oldhsinterpreter.bas

___
Ohrrpgce mailing list
ohrrpgce@lists.motherhamster.org
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org


[Ohrrpgce] SVN: teeemcee/13526 Indicate freed slice handles in the script debugger (describe_handle)

2024-02-06 Thread subversion--- via Ohrrpgce
teeemcee
2024-02-06 23:16:59 -0800 (Tue, 06 Feb 2024)
69
Indicate freed slice handles in the script debugger (describe_handle)
---
U   wip/scriptcommands.bas
U   wip/scriptcommands.bi

___
Ohrrpgce mailing list
ohrrpgce@lists.motherhamster.org
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org


[Ohrrpgce] SVN: teeemcee/13527 "script layer" and "sl:spite layer" aliases

2024-02-06 Thread subversion--- via Ohrrpgce
teeemcee
2024-02-06 23:17:09 -0800 (Tue, 06 Feb 2024)
43
"script layer" and "sl:spite layer" aliases
---
U   wip/docs/plotdict.xml
U   wip/plotscr.hsd
U   wip/slices.bi
U   wip/whatsnew.txt

___
Ohrrpgce mailing list
ohrrpgce@lists.motherhamster.org
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org


[Ohrrpgce] SVN: teeemcee/13510 hspeak: Change srcpos encoding in .hsz files to be relative to the start

2024-02-06 Thread subversion--- via Ohrrpgce
teeemcee
2024-02-06 23:13:06 -0800 (Tue, 06 Feb 2024)
357
hspeak: Change srcpos encoding in .hsz files to be relative to the start of the 
script

The main reason I did this (back in 2017) were so if you edited and reimported
scripts, .hsz files for unmodified scripts wouldn't change except for the script
start offset in the header.

Plus it greatly increases the number of null bytes, making them compress better.
---
U   wip/hspeak.exw

___
Ohrrpgce mailing list
ohrrpgce@lists.motherhamster.org
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org