mirror of
https://github.com/QB64Official/qb64.git
synced 2024-09-28 11:17:47 +00:00
Finishes restructure of support files.
This commit is contained in:
parent
46d1bdca36
commit
d0c156f876
6 changed files with 0 additions and 3823 deletions
File diff suppressed because it is too large
Load diff
|
@ -1,20 +0,0 @@
|
||||||
'$COLOR:0
|
|
||||||
'Color constants for text mode.
|
|
||||||
CONST Black~%% = 0
|
|
||||||
CONST Blue~%% = 1
|
|
||||||
CONST Green~%% = 2
|
|
||||||
CONST Cyan~%% = 3
|
|
||||||
CONST Red~%% = 4
|
|
||||||
CONST Magenta~%% = 5
|
|
||||||
CONST Brown~%% = 6
|
|
||||||
CONST White~%% = 7
|
|
||||||
CONST Gray~%% = 8
|
|
||||||
CONST LightBlue~%% = 9
|
|
||||||
CONST LightGreen~%% = 10
|
|
||||||
CONST LightCyan~%% = 11
|
|
||||||
CONST LightRed~%% = 12
|
|
||||||
CONST LightMagenta~%% = 13
|
|
||||||
CONST Yellow~%% = 14
|
|
||||||
CONST BrightWhite~%% = 15
|
|
||||||
CONST Blink~%% = 16
|
|
||||||
|
|
|
@ -1,272 +0,0 @@
|
||||||
'$COLOR:32
|
|
||||||
'Color constants for 32bit mode, based on HTML color names.
|
|
||||||
CONST AliceBlue~& = 4293982463
|
|
||||||
CONST Almond~& = 4293910221
|
|
||||||
CONST AntiqueBrass~& = 4291663221
|
|
||||||
CONST AntiqueWhite~& = 4294634455
|
|
||||||
CONST Apricot~& = 4294826421
|
|
||||||
CONST Aqua~& = 4278255615
|
|
||||||
CONST Aquamarine~& = 4286578644
|
|
||||||
CONST Asparagus~& = 4287080811
|
|
||||||
CONST AtomicTangerine~& = 4294943860
|
|
||||||
CONST Azure~& = 4293984255
|
|
||||||
CONST BananaMania~& = 4294633397
|
|
||||||
CONST Beaver~& = 4288643440
|
|
||||||
CONST Beige~& = 4294309340
|
|
||||||
CONST Bisque~& = 4294960324
|
|
||||||
CONST Bittersweet~& = 4294802542
|
|
||||||
CONST Black~& = 4278190080
|
|
||||||
CONST BlanchedAlmond~& = 4294962125
|
|
||||||
CONST BlizzardBlue~& = 4289521134
|
|
||||||
CONST Blue~& = 4278190335
|
|
||||||
CONST BlueBell~& = 4288848592
|
|
||||||
CONST BlueGray~& = 4284914124
|
|
||||||
CONST BlueGreen~& = 4279081146
|
|
||||||
CONST BlueViolet~& = 4287245282
|
|
||||||
CONST Blush~& = 4292763011
|
|
||||||
CONST BrickRed~& = 4291510612
|
|
||||||
CONST Brown~& = 4289014314
|
|
||||||
CONST BurlyWood~& = 4292786311
|
|
||||||
CONST BurntOrange~& = 4294934345
|
|
||||||
CONST BurntSienna~& = 4293557853
|
|
||||||
CONST CadetBlue~& = 4284456608
|
|
||||||
CONST Canary~& = 4294967193
|
|
||||||
CONST CaribbeanGreen~& = 4280079266
|
|
||||||
CONST CarnationPink~& = 4294945484
|
|
||||||
CONST Cerise~& = 4292691090
|
|
||||||
CONST Cerulean~& = 4280134870
|
|
||||||
CONST ChartReuse~& = 4286578432
|
|
||||||
CONST Chestnut~& = 4290534744
|
|
||||||
CONST Chocolate~& = 4291979550
|
|
||||||
CONST Copper~& = 4292711541
|
|
||||||
CONST Coral~& = 4294934352
|
|
||||||
CONST Cornflower~& = 4288335595
|
|
||||||
CONST CornflowerBlue~& = 4284782061
|
|
||||||
CONST Cornsilk~& = 4294965468
|
|
||||||
CONST CottonCandy~& = 4294950105
|
|
||||||
CONST CrayolaAquamarine~& = 4286110690
|
|
||||||
CONST CrayolaBlue~& = 4280251902
|
|
||||||
CONST CrayolaBlueViolet~& = 4285753021
|
|
||||||
CONST CrayolaBrown~& = 4290013005
|
|
||||||
CONST CrayolaCadetBlue~& = 4289771462
|
|
||||||
CONST CrayolaForestGreen~& = 4285378177
|
|
||||||
CONST CrayolaGold~& = 4293379735
|
|
||||||
CONST CrayolaGoldenrod~& = 4294760821
|
|
||||||
CONST CrayolaGray~& = 4287992204
|
|
||||||
CONST CrayolaGreen~& = 4280069240
|
|
||||||
CONST CrayolaGreenYellow~& = 4293978257
|
|
||||||
CONST CrayolaIndigo~& = 4284315339
|
|
||||||
CONST CrayolaLavender~& = 4294751445
|
|
||||||
CONST CrayolaMagenta~& = 4294337711
|
|
||||||
CONST CrayolaMaroon~& = 4291311706
|
|
||||||
CONST CrayolaMidnightBlue~& = 4279912566
|
|
||||||
CONST CrayolaOrange~& = 4294931768
|
|
||||||
CONST CrayolaOrangeRed~& = 4294912811
|
|
||||||
CONST CrayolaOrchid~& = 4293306583
|
|
||||||
CONST CrayolaPlum~& = 4287513989
|
|
||||||
CONST CrayolaRed~& = 4293795917
|
|
||||||
CONST CrayolaSalmon~& = 4294941610
|
|
||||||
CONST CrayolaSeaGreen~& = 4288668351
|
|
||||||
CONST CrayolaSilver~& = 4291675586
|
|
||||||
CONST CrayolaSkyBlue~& = 4286634731
|
|
||||||
CONST CrayolaSpringGreen~& = 4293716670
|
|
||||||
CONST CrayolaTann~& = 4294616940
|
|
||||||
CONST CrayolaThistle~& = 4293642207
|
|
||||||
CONST CrayolaViolet~& = 4287786670
|
|
||||||
CONST CrayolaYellow~& = 4294764675
|
|
||||||
CONST CrayolaYellowGreen~& = 4291158916
|
|
||||||
CONST Crimson~& = 4292613180
|
|
||||||
CONST Cyan~& = 4278255615
|
|
||||||
CONST Dandelion~& = 4294826861
|
|
||||||
CONST DarkBlue~& = 4278190219
|
|
||||||
CONST DarkCyan~& = 4278225803
|
|
||||||
CONST DarkGoldenRod~& = 4290283019
|
|
||||||
CONST DarkGray~& = 4289309097
|
|
||||||
CONST DarkGreen~& = 4278215680
|
|
||||||
CONST DarkKhaki~& = 4290623339
|
|
||||||
CONST DarkMagenta~& = 4287299723
|
|
||||||
CONST DarkOliveGreen~& = 4283788079
|
|
||||||
CONST DarkOrange~& = 4294937600
|
|
||||||
CONST DarkOrchid~& = 4288230092
|
|
||||||
CONST DarkRed~& = 4287299584
|
|
||||||
CONST DarkSalmon~& = 4293498490
|
|
||||||
CONST DarkSeaGreen~& = 4287609999
|
|
||||||
CONST DarkSlateBlue~& = 4282924427
|
|
||||||
CONST DarkSlateGray~& = 4281290575
|
|
||||||
CONST DarkTurquoise~& = 4278243025
|
|
||||||
CONST DarkViolet~& = 4287889619
|
|
||||||
CONST DeepPink~& = 4294907027
|
|
||||||
CONST DeepSkyBlue~& = 4278239231
|
|
||||||
CONST Denim~& = 4281035972
|
|
||||||
CONST DesertSand~& = 4293905848
|
|
||||||
CONST DimGray~& = 4285098345
|
|
||||||
CONST DodgerBlue~& = 4280193279
|
|
||||||
CONST Eggplant~& = 4285419872
|
|
||||||
CONST ElectricLime~& = 4291755805
|
|
||||||
CONST Fern~& = 4285643896
|
|
||||||
CONST FireBrick~& = 4289864226
|
|
||||||
CONST Floralwhite~& = 4294966000
|
|
||||||
CONST ForestGreen~& = 4280453922
|
|
||||||
CONST Fuchsia~& = 4290995397
|
|
||||||
CONST FuzzyWuzzy~& = 4291585638
|
|
||||||
CONST Gainsboro~& = 4292664540
|
|
||||||
CONST GhostWhite~& = 4294506751
|
|
||||||
CONST Gold~& = 4294956800
|
|
||||||
CONST GoldenRod~& = 4292519200
|
|
||||||
CONST GrannySmithApple~& = 4289258656
|
|
||||||
CONST Gray~& = 4286611584
|
|
||||||
CONST Green~& = 4278222848
|
|
||||||
CONST GreenBlue~& = 4279329972
|
|
||||||
CONST GreenYellow~& = 4289593135
|
|
||||||
CONST HoneyDew~& = 4293984240
|
|
||||||
CONST HotMagenta~& = 4294909390
|
|
||||||
CONST HotPink~& = 4294928820
|
|
||||||
CONST Inchworm~& = 4289915997
|
|
||||||
CONST IndianRed~& = 4291648604
|
|
||||||
CONST Indigo~& = 4283105410
|
|
||||||
CONST Ivory~& = 4294967280
|
|
||||||
CONST JazzberryJam~& = 4291442535
|
|
||||||
CONST JungleGreen~& = 4282101903
|
|
||||||
CONST Khaki~& = 4293977740
|
|
||||||
CONST LaserLemon~& = 4294901282
|
|
||||||
CONST Lavender~& = 4293322490
|
|
||||||
CONST LavenderBlush~& = 4294963445
|
|
||||||
CONST LawnGreen~& = 4286381056
|
|
||||||
CONST LemonChiffon~& = 4294965965
|
|
||||||
CONST LemonYellow~& = 4294964303
|
|
||||||
CONST LightBlue~& = 4289583334
|
|
||||||
CONST LightCoral~& = 4293951616
|
|
||||||
CONST LightCyan~& = 4292935679
|
|
||||||
CONST LightGoldenRodYellow~& = 4294638290
|
|
||||||
CONST LightGray~& = 4292072403
|
|
||||||
CONST LightGreen~& = 4287688336
|
|
||||||
CONST LightPink~& = 4294948545
|
|
||||||
CONST LightSalmon~& = 4294942842
|
|
||||||
CONST LightSeaGreen~& = 4280332970
|
|
||||||
CONST LightSkyBlue~& = 4287090426
|
|
||||||
CONST LightSlateGray~& = 4286023833
|
|
||||||
CONST LightSteelBlue~& = 4289774814
|
|
||||||
CONST LightYellow~& = 4294967264
|
|
||||||
CONST Lime~& = 4278255360
|
|
||||||
CONST LimeGreen~& = 4281519410
|
|
||||||
CONST Linen~& = 4294635750
|
|
||||||
CONST MacaroniAndCheese~& = 4294950280
|
|
||||||
CONST Magenta~& = 4294902015
|
|
||||||
CONST MagicMint~& = 4289392849
|
|
||||||
CONST Mahogany~& = 4291643980
|
|
||||||
CONST Maize~& = 4293775772
|
|
||||||
CONST Manatee~& = 4288125610
|
|
||||||
CONST MangoTango~& = 4294935107
|
|
||||||
CONST Maroon~& = 4286578688
|
|
||||||
CONST Mauvelous~& = 4293892266
|
|
||||||
CONST MediumAquamarine~& = 4284927402
|
|
||||||
CONST MediumBlue~& = 4278190285
|
|
||||||
CONST MediumOrchid~& = 4290401747
|
|
||||||
CONST MediumPurple~& = 4287852763
|
|
||||||
CONST MediumSeaGreen~& = 4282168177
|
|
||||||
CONST MediumSlateBlue~& = 4286277870
|
|
||||||
CONST MediumSpringGreen~& = 4278254234
|
|
||||||
CONST MediumTurquoise~& = 4282962380
|
|
||||||
CONST MediumVioletRed~& = 4291237253
|
|
||||||
CONST Melon~& = 4294818996
|
|
||||||
CONST MidnightBlue~& = 4279834992
|
|
||||||
CONST MintCream~& = 4294311930
|
|
||||||
CONST MistyRose~& = 4294960353
|
|
||||||
CONST Moccasin~& = 4294960309
|
|
||||||
CONST MountainMeadow~& = 4281383567
|
|
||||||
CONST Mulberry~& = 4291120012
|
|
||||||
CONST NavajoWhite~& = 4294958765
|
|
||||||
CONST Navy~& = 4278190208
|
|
||||||
CONST NavyBlue~& = 4279858386
|
|
||||||
CONST NeonCarrot~& = 4294943555
|
|
||||||
CONST OldLace~& = 4294833638
|
|
||||||
CONST Olive~& = 4286611456
|
|
||||||
CONST OliveDrab~& = 4285238819
|
|
||||||
CONST OliveGreen~& = 4290426988
|
|
||||||
CONST Orange~& = 4294944000
|
|
||||||
CONST OrangeRed~& = 4294919424
|
|
||||||
CONST OrangeYellow~& = 4294497640
|
|
||||||
CONST Orchid~& = 4292505814
|
|
||||||
CONST OuterSpace~& = 4282468940
|
|
||||||
CONST OutrageousOrange~& = 4294929994
|
|
||||||
CONST PacificBlue~& = 4280068553
|
|
||||||
CONST PaleGoldenRod~& = 4293847210
|
|
||||||
CONST PaleGreen~& = 4288215960
|
|
||||||
CONST PaleTurquoise~& = 4289720046
|
|
||||||
CONST PaleVioletRed~& = 4292571283
|
|
||||||
CONST PapayaWhip~& = 4294963157
|
|
||||||
CONST Peach~& = 4294954923
|
|
||||||
CONST PeachPuff~& = 4294957753
|
|
||||||
CONST Periwinkle~& = 4291154150
|
|
||||||
CONST Peru~& = 4291659071
|
|
||||||
CONST PiggyPink~& = 4294827494
|
|
||||||
CONST PineGreen~& = 4279599224
|
|
||||||
CONST Pink~& = 4294951115
|
|
||||||
CONST PinkFlamingo~& = 4294735101
|
|
||||||
CONST PinkSherbet~& = 4294414247
|
|
||||||
CONST Plum~& = 4292714717
|
|
||||||
CONST PowderBlue~& = 4289781990
|
|
||||||
CONST Purple~& = 4286578816
|
|
||||||
CONST PurpleHeart~& = 4285809352
|
|
||||||
CONST PurpleMountainsMajesty~& = 4288512442
|
|
||||||
CONST PurplePizzazz~& = 4294856410
|
|
||||||
CONST RadicalRed~& = 4294920556
|
|
||||||
CONST RawSienna~& = 4292250201
|
|
||||||
CONST RawUmber~& = 4285614883
|
|
||||||
CONST RazzleDazzleRose~& = 4294920400
|
|
||||||
CONST Razzmatazz~& = 4293076331
|
|
||||||
CONST Red~& = 4294901760
|
|
||||||
CONST RedOrange~& = 4294923081
|
|
||||||
CONST RedViolet~& = 4290790543
|
|
||||||
CONST RobinsEggBlue~& = 4280274635
|
|
||||||
CONST RosyBrown~& = 4290547599
|
|
||||||
CONST RoyalBlue~& = 4282477025
|
|
||||||
CONST RoyalPurple~& = 4286075305
|
|
||||||
CONST SaddleBrown~& = 4287317267
|
|
||||||
CONST Salmon~& = 4294606962
|
|
||||||
CONST SandyBrown~& = 4294222944
|
|
||||||
CONST Scarlet~& = 4294715463
|
|
||||||
CONST ScreaminGreen~& = 4285988730
|
|
||||||
CONST SeaGreen~& = 4281240407
|
|
||||||
CONST SeaShell~& = 4294964718
|
|
||||||
CONST Sepia~& = 4289030479
|
|
||||||
CONST Shadow~& = 4287265117
|
|
||||||
CONST Shamrock~& = 4282764962
|
|
||||||
CONST ShockingPink~& = 4294672125
|
|
||||||
CONST Sienna~& = 4288696877
|
|
||||||
CONST Silver~& = 4290822336
|
|
||||||
CONST SkyBlue~& = 4287090411
|
|
||||||
CONST SlateBlue~& = 4285160141
|
|
||||||
CONST SlateGray~& = 4285563024
|
|
||||||
CONST Snow~& = 4294966010
|
|
||||||
CONST SpringGreen~& = 4278255487
|
|
||||||
CONST SteelBlue~& = 4282811060
|
|
||||||
CONST Sunglow~& = 4294954824
|
|
||||||
CONST SunsetOrange~& = 4294794835
|
|
||||||
CONST Tann~& = 4291998860
|
|
||||||
CONST Teal~& = 4278222976
|
|
||||||
CONST TealBlue~& = 4279805877
|
|
||||||
CONST Thistle~& = 4292394968
|
|
||||||
CONST TickleMePink~& = 4294740396
|
|
||||||
CONST Timberwolf~& = 4292597714
|
|
||||||
CONST Tomato~& = 4294927175
|
|
||||||
CONST TropicalRainForest~& = 4279730285
|
|
||||||
CONST Tumbleweed~& = 4292782728
|
|
||||||
CONST Turquoise~& = 4282441936
|
|
||||||
CONST TurquoiseBlue~& = 4286045671
|
|
||||||
CONST UnmellowYellow~& = 4294967142
|
|
||||||
CONST Violet~& = 4293821166
|
|
||||||
CONST VioletBlue~& = 4281486002
|
|
||||||
CONST VioletRed~& = 4294398868
|
|
||||||
CONST VividTangerine~& = 4294942857
|
|
||||||
CONST VividViolet~& = 4287582365
|
|
||||||
CONST Wheat~& = 4294303411
|
|
||||||
CONST White~& = 4294967295
|
|
||||||
CONST Whitesmoke~& = 4294309365
|
|
||||||
CONST WildBlueYonder~& = 4288851408
|
|
||||||
CONST WildStrawberry~& = 4294919076
|
|
||||||
CONST WildWatermelon~& = 4294732933
|
|
||||||
CONST Wisteria~& = 4291667166
|
|
||||||
CONST Yellow~& = 4294967040
|
|
||||||
CONST YellowGreen~& = 4288335154
|
|
||||||
CONST YellowOrange~& = 4294946370
|
|
|
@ -1,14 +0,0 @@
|
||||||
$CHECKING:OFF
|
|
||||||
DIM SHARED AS LONG vwatch_linenumber, vwatch_sublevel, vwatch_goto
|
|
||||||
DIM SHARED AS STRING vwatch_subname, vwatch_callstack
|
|
||||||
REDIM SHARED vwatch_breakpoints(0) AS _BYTE
|
|
||||||
REDIM SHARED vwatch_skiplines(0) AS _BYTE
|
|
||||||
'next lines are just to avoid "unused variable" warnings:
|
|
||||||
vwatch_linenumber = 0
|
|
||||||
vwatch_sublevel = 0
|
|
||||||
vwatch_goto = 0
|
|
||||||
vwatch_breakpoints(0) = 0
|
|
||||||
vwatch_skiplines(0) = 0
|
|
||||||
vwatch_subname = ""
|
|
||||||
vwatch_callstack = ""
|
|
||||||
$CHECKING:ON
|
|
|
@ -1,285 +0,0 @@
|
||||||
$CHECKING:OFF
|
|
||||||
|
|
||||||
SUB vwatch (localVariables AS _OFFSET)
|
|
||||||
STATIC AS LONG ideHost, breakpointCount, skipCount, timeout, startLevel, lastLine
|
|
||||||
STATIC AS LONG callStackLength, runToLine
|
|
||||||
STATIC AS _BYTE pauseMode, stepOver, bypass, setNextLine
|
|
||||||
STATIC buffer$, endc$
|
|
||||||
DIM AS LONG i
|
|
||||||
DIM AS _OFFSET address
|
|
||||||
DIM AS _MEM m
|
|
||||||
DIM start!, temp$, cmd$, value$, k&
|
|
||||||
|
|
||||||
DECLARE LIBRARY
|
|
||||||
SUB vwatch_stoptimers ALIAS stop_timers
|
|
||||||
SUB vwatch_starttimers ALIAS start_timers
|
|
||||||
SUB unlockvWatchHandle
|
|
||||||
END DECLARE
|
|
||||||
|
|
||||||
IF bypass THEN EXIT SUB
|
|
||||||
|
|
||||||
vwatch_goto = 0
|
|
||||||
|
|
||||||
IF ideHost = 0 THEN
|
|
||||||
timeout = 10
|
|
||||||
endc$ = "<END>"
|
|
||||||
|
|
||||||
'initial setup
|
|
||||||
GOSUB Connect
|
|
||||||
|
|
||||||
'send this binary's path/exe name
|
|
||||||
cmd$ = "me:" + COMMAND$(0)
|
|
||||||
GOSUB SendCommand
|
|
||||||
|
|
||||||
DO
|
|
||||||
GOSUB GetCommand
|
|
||||||
SELECT CASE cmd$
|
|
||||||
CASE "vwatch"
|
|
||||||
IF value$ <> "ok" THEN
|
|
||||||
unlockvWatchHandle: CLOSE #ideHost
|
|
||||||
bypass = -1
|
|
||||||
EXIT SUB
|
|
||||||
END IF
|
|
||||||
CASE "line count"
|
|
||||||
REDIM vwatch_breakpoints(CVL(value$)) AS _BYTE
|
|
||||||
REDIM vwatch_skiplines(CVL(value$)) AS _BYTE
|
|
||||||
CASE "breakpoint count"
|
|
||||||
breakpointCount = CVL(value$)
|
|
||||||
CASE "breakpoint list"
|
|
||||||
IF LEN(value$) \ 4 <> breakpointCount THEN
|
|
||||||
cmd$ = "quit:Communication error."
|
|
||||||
GOSUB SendCommand
|
|
||||||
unlockvWatchHandle: CLOSE #ideHost
|
|
||||||
bypass = -1
|
|
||||||
EXIT SUB
|
|
||||||
END IF
|
|
||||||
FOR i = 1 TO breakpointCount
|
|
||||||
temp$ = MID$(value$, i * 4 - 3, 4)
|
|
||||||
vwatch_breakpoints(CVL(temp$)) = -1
|
|
||||||
NEXT
|
|
||||||
CASE "skip count"
|
|
||||||
skipCount = CVL(value$)
|
|
||||||
CASE "skip list"
|
|
||||||
IF LEN(value$) \ 4 <> skipCount THEN
|
|
||||||
cmd$ = "quit:Communication error."
|
|
||||||
GOSUB SendCommand
|
|
||||||
unlockvWatchHandle: CLOSE #ideHost
|
|
||||||
bypass = -1
|
|
||||||
EXIT SUB
|
|
||||||
END IF
|
|
||||||
FOR i = 1 TO skipCount
|
|
||||||
temp$ = MID$(value$, i * 4 - 3, 4)
|
|
||||||
vwatch_skiplines(CVL(temp$)) = -1
|
|
||||||
NEXT
|
|
||||||
CASE "run"
|
|
||||||
IF vwatch_breakpoints(vwatch_linenumber) THEN EXIT DO
|
|
||||||
pauseMode = 0
|
|
||||||
EXIT SUB
|
|
||||||
CASE "break"
|
|
||||||
pauseMode = -1
|
|
||||||
EXIT DO
|
|
||||||
END SELECT
|
|
||||||
LOOP
|
|
||||||
END IF
|
|
||||||
|
|
||||||
IF vwatch_linenumber = 0 THEN
|
|
||||||
GOSUB SendCallStack
|
|
||||||
cmd$ = "quit:Program ended."
|
|
||||||
GOSUB SendCommand
|
|
||||||
unlockvWatchHandle: CLOSE #ideHost
|
|
||||||
bypass = -1
|
|
||||||
ideHost = 0
|
|
||||||
EXIT SUB
|
|
||||||
ELSEIF vwatch_linenumber = -1 THEN
|
|
||||||
'report an error in the most recent line
|
|
||||||
GOSUB SendCallStack
|
|
||||||
cmd$ = "error:" + MKL$(lastLine)
|
|
||||||
GOSUB SendCommand
|
|
||||||
EXIT SUB
|
|
||||||
ELSEIF vwatch_linenumber = -2 THEN
|
|
||||||
'report a new sub/function has been "entered"
|
|
||||||
IF LEN(vwatch_callstack) > 100000 THEN
|
|
||||||
vwatch_callstack = ""
|
|
||||||
callStackLength = 0
|
|
||||||
END IF
|
|
||||||
callStackLength = callStackLength + 1
|
|
||||||
IF LEN(vwatch_callstack) THEN vwatch_callstack = vwatch_callstack + CHR$(0)
|
|
||||||
vwatch_callstack = vwatch_callstack + vwatch_subname$ + ", line" + STR$(lastLine)
|
|
||||||
EXIT SUB
|
|
||||||
ELSEIF vwatch_linenumber = -3 THEN
|
|
||||||
'handle STOP - instead of quitting, pause execution
|
|
||||||
pauseMode = -1
|
|
||||||
stepOver = 0
|
|
||||||
EXIT SUB
|
|
||||||
END IF
|
|
||||||
|
|
||||||
IF vwatch_linenumber = lastLine AND setNextLine = 0 THEN EXIT SUB
|
|
||||||
setNextLine = 0
|
|
||||||
lastLine = vwatch_linenumber
|
|
||||||
|
|
||||||
GOSUB GetCommand
|
|
||||||
SELECT CASE cmd$
|
|
||||||
CASE "break"
|
|
||||||
pauseMode = -1
|
|
||||||
stepOver = 0
|
|
||||||
runToLine = 0
|
|
||||||
cmd$ = ""
|
|
||||||
CASE "set breakpoint"
|
|
||||||
vwatch_breakpoints(CVL(value$)) = -1
|
|
||||||
vwatch_skiplines(CVL(value$)) = 0
|
|
||||||
CASE "clear breakpoint"
|
|
||||||
vwatch_breakpoints(CVL(value$)) = 0
|
|
||||||
CASE "set skip line"
|
|
||||||
vwatch_skiplines(CVL(value$)) = -1
|
|
||||||
vwatch_breakpoints(CVL(value$)) = 0
|
|
||||||
CASE "clear skip line"
|
|
||||||
vwatch_skiplines(CVL(value$)) = 0
|
|
||||||
CASE "clear all breakpoints"
|
|
||||||
REDIM vwatch_breakpoints(UBOUND(vwatch_breakpoints)) AS _BYTE
|
|
||||||
CASE "clear all skips"
|
|
||||||
REDIM vwatch_skiplines(UBOUND(vwatch_skiplines)) AS _BYTE
|
|
||||||
END SELECT
|
|
||||||
|
|
||||||
IF vwatch_skiplines(vwatch_linenumber) THEN vwatch_goto = -vwatch_linenumber: EXIT SUB
|
|
||||||
|
|
||||||
IF stepOver = -1 AND vwatch_sublevel > startLevel AND vwatch_breakpoints(vwatch_linenumber) = 0 THEN
|
|
||||||
EXIT SUB
|
|
||||||
ELSEIF stepOver = -1 AND vwatch_sublevel = startLevel THEN
|
|
||||||
stepOver = 0
|
|
||||||
pauseMode = -1
|
|
||||||
END IF
|
|
||||||
|
|
||||||
IF runToLine > 0 AND runToLine <> vwatch_linenumber THEN
|
|
||||||
EXIT SUB
|
|
||||||
ELSEIF runToLine > 0 AND runToLine = vwatch_linenumber THEN
|
|
||||||
pauseMode = -1
|
|
||||||
runToLine = 0
|
|
||||||
END IF
|
|
||||||
|
|
||||||
IF vwatch_breakpoints(vwatch_linenumber) = 0 AND pauseMode = 0 THEN
|
|
||||||
EXIT SUB
|
|
||||||
END IF
|
|
||||||
|
|
||||||
vwatch_stoptimers
|
|
||||||
cmd$ = "line number:"
|
|
||||||
IF vwatch_breakpoints(vwatch_linenumber) THEN cmd$ = "breakpoint:"
|
|
||||||
cmd$ = cmd$ + MKL$(vwatch_linenumber)
|
|
||||||
GOSUB SendCommand
|
|
||||||
|
|
||||||
DO 'main loop
|
|
||||||
SELECT CASE cmd$
|
|
||||||
CASE "run"
|
|
||||||
pauseMode = 0
|
|
||||||
stepOver = 0
|
|
||||||
vwatch_starttimers
|
|
||||||
EXIT SUB
|
|
||||||
CASE "run to line"
|
|
||||||
pauseMode = 0
|
|
||||||
stepOver = 0
|
|
||||||
runToLine = CVL(value$)
|
|
||||||
vwatch_starttimers
|
|
||||||
EXIT SUB
|
|
||||||
CASE "step"
|
|
||||||
pauseMode = -1
|
|
||||||
stepOver = 0
|
|
||||||
EXIT SUB
|
|
||||||
CASE "step over"
|
|
||||||
pauseMode = -1
|
|
||||||
stepOver = -1
|
|
||||||
startLevel = vwatch_sublevel
|
|
||||||
vwatch_starttimers
|
|
||||||
EXIT SUB
|
|
||||||
CASE "step out"
|
|
||||||
pauseMode = -1
|
|
||||||
stepOver = -1
|
|
||||||
startLevel = vwatch_sublevel - 1
|
|
||||||
vwatch_starttimers
|
|
||||||
EXIT SUB
|
|
||||||
CASE "free"
|
|
||||||
unlockvWatchHandle: CLOSE #ideHost
|
|
||||||
ideHost = 0
|
|
||||||
bypass = -1
|
|
||||||
vwatch_starttimers
|
|
||||||
EXIT SUB
|
|
||||||
CASE "set breakpoint"
|
|
||||||
vwatch_breakpoints(CVL(value$)) = -1
|
|
||||||
vwatch_skiplines(CVL(value$)) = 0
|
|
||||||
CASE "clear breakpoint"
|
|
||||||
vwatch_breakpoints(CVL(value$)) = 0
|
|
||||||
CASE "clear all breakpoints"
|
|
||||||
REDIM vwatch_breakpoints(UBOUND(vwatch_breakpoints)) AS _BYTE
|
|
||||||
CASE "clear all skips"
|
|
||||||
REDIM vwatch_skiplines(UBOUND(vwatch_skiplines)) AS _BYTE
|
|
||||||
CASE "call stack"
|
|
||||||
'send call stack history"
|
|
||||||
GOSUB SendCallStack
|
|
||||||
CASE "local"
|
|
||||||
i = CVL(value$)
|
|
||||||
address = localVariables + LEN(address) * i
|
|
||||||
PRINT "Local"; i; "is at"; _MEMGET(m, address, _OFFSET)
|
|
||||||
CASE "set next line"
|
|
||||||
pauseMode = -1
|
|
||||||
stepOver = 0
|
|
||||||
setNextLine = -1
|
|
||||||
vwatch_goto = CVL(value$)
|
|
||||||
EXIT SUB
|
|
||||||
CASE "set skip line"
|
|
||||||
vwatch_skiplines(CVL(value$)) = -1
|
|
||||||
vwatch_breakpoints(CVL(value$)) = 0
|
|
||||||
CASE "clear skip line"
|
|
||||||
vwatch_skiplines(CVL(value$)) = 0
|
|
||||||
END SELECT
|
|
||||||
|
|
||||||
GOSUB GetCommand
|
|
||||||
_LIMIT 100
|
|
||||||
LOOP
|
|
||||||
|
|
||||||
vwatch_starttimers
|
|
||||||
EXIT SUB
|
|
||||||
|
|
||||||
Connect:
|
|
||||||
DIM ideport$
|
|
||||||
ideport$ = ENVIRON$("QB64DEBUGPORT")
|
|
||||||
IF ideport$ = "" THEN bypass = -1: EXIT SUB
|
|
||||||
|
|
||||||
start! = TIMER
|
|
||||||
DO
|
|
||||||
k& = _KEYHIT
|
|
||||||
ideHost = _OPENCLIENT("QB64IDE:" + ideport$ + ":localhost")
|
|
||||||
_LIMIT 30
|
|
||||||
LOOP UNTIL k& = 27 OR ideHost <> 0 OR TIMER - start! > timeout
|
|
||||||
IF ideHost = 0 THEN bypass = -1: EXIT SUB
|
|
||||||
RETURN
|
|
||||||
|
|
||||||
GetCommand:
|
|
||||||
GET #ideHost, , temp$
|
|
||||||
buffer$ = buffer$ + temp$
|
|
||||||
|
|
||||||
IF INSTR(buffer$, endc$) THEN
|
|
||||||
cmd$ = LEFT$(buffer$, INSTR(buffer$, endc$) - 1)
|
|
||||||
buffer$ = MID$(buffer$, INSTR(buffer$, endc$) + LEN(endc$))
|
|
||||||
|
|
||||||
IF INSTR(cmd$, ":") THEN
|
|
||||||
value$ = MID$(cmd$, INSTR(cmd$, ":") + 1)
|
|
||||||
cmd$ = LEFT$(cmd$, INSTR(cmd$, ":") - 1)
|
|
||||||
ELSE
|
|
||||||
value$ = ""
|
|
||||||
END IF
|
|
||||||
ELSE
|
|
||||||
cmd$ = "": value$ = ""
|
|
||||||
END IF
|
|
||||||
RETURN
|
|
||||||
|
|
||||||
SendCallStack:
|
|
||||||
cmd$ = "call stack size:" + MKL$(callStackLength)
|
|
||||||
GOSUB SendCommand
|
|
||||||
cmd$ = "call stack:" + vwatch_callstack
|
|
||||||
GOSUB SendCommand
|
|
||||||
RETURN
|
|
||||||
|
|
||||||
SendCommand:
|
|
||||||
cmd$ = cmd$ + endc$
|
|
||||||
PUT #ideHost, , cmd$
|
|
||||||
cmd$ = ""
|
|
||||||
RETURN
|
|
||||||
END SUB
|
|
|
@ -1,2 +0,0 @@
|
||||||
SUB vwatch ()
|
|
||||||
END SUB
|
|
Loading…
Reference in a new issue