Umgebungsvariablen des RedDebugers - Druckversion +- AmiBlitz³ (https://www.amiblitz.de/community) +-- Forum: AmiBlitz³ (https://www.amiblitz.de/community/forum-3.html) +--- Forum: AB³ Development (https://www.amiblitz.de/community/forum-16.html) +--- Thema: Umgebungsvariablen des RedDebugers (/thread-130.html) |
Re: Umgebungsvariablen des RedDebugers - Berndroesch - 22.01.2015 Mit dem code geht es, kann aber nicht zwischen lokalen und globalen Variablen unterscheiden. ich weis auch nicht wie das geht, muss ich erst suchen. vermutlich ist das ein flag ein oder so, dass man in der variable selber überprüfen muss. das hier geht also, nur das zuviel gemeckert wird, wenn man dasselbe array in einer lokalen funk nimmt. JL_0_E11E: CLR.w nonew JSR getparameter + MOVE.w d2,-(a7) + JSR findvariable + BNE 'l1 + JMP errormsg_declaredtwice +'l1 + MOVE.w (a7)+,d2 das programm zum testen war dass. der code meckert auch bei dem dim mem.s(300) in der Funktion. DEFTYPE .l mem Dim mem.s(200) Function test{} Dim mem.s(300) End Function test{} Re: Umgebungsvariablen des RedDebugers - Blackbird - 23.01.2015 habs mal im Compiler eingebaut, funktioniert soweit das nun mem.s() angemeckert wird Danke Re: Umgebungsvariablen des RedDebugers - tomsmart1 - 23.01.2015 Ja Bernd das funktioniert wie du es beschreiben hast ohne Unterscheidung Globlal/Lokale-Variable. Ok ich habe mal Deftype geprüft das macht auch keine Test ob es die Varibale schon gibt z.B: Code: Dim mem.s(200) Code: JL_0_C2C0: Was ich nicht ganz verstehe ist das es ohne nicht geht den in der Subroutine JL_0_8E3C kann/wird auch findvariable aufgerufen? PS: Welche Befehle könnten noch davon betroffen sein? Re: Umgebungsvariablen des RedDebugers - Blackbird - 23.01.2015 Cool wenn man nun versucht den Debugger zu compilieren: Compile error in line 1120: Illegal operator for this type. possible wrong code begins here: WFLG_REPORTMOUSE das ist innerhalb des Statements NewWindow Code: If win = #_winSource f ist vom type float ich habe nach dem includen natürlich wieder optimize 5 syntax 6 eingefügt Re: Umgebungsvariablen des RedDebugers - tomsmart1 - 23.01.2015 Blackbird schrieb:ich habe nach dem includen natürlich wieder Das sollte keinen Unterschied mehr machen da die Includes kein optimize und Syntax setzen wenn sie als Include verwendet werden, nach meiner Überarbeitung oder habe ich etwas übersehen. Re: Umgebungsvariablen des RedDebugers - Blackbird - 23.01.2015 Wie geschrieben, es läßt sich nicht kompilieren... desweiteren habe ich auch noch 6 Stellen gefunden die CacheClearU verwenden. Das sollten wir auch noch so ändern wie du die Anpassungen im Compiler gemacht hast für MorphOS Re: Umgebungsvariablen des RedDebugers - Berndroesch - 23.01.2015 ne lass die stellen besser so mit dem cacheclearu. denn speedkritisch sind die nicht. wie ich schon sagte, es ist eher ein Hack. @Thomas Ich habe mal geschaut was 8e3c macht. das scheint wenn nowdeclare 2 ist auch eine fehler zu bringen bei variablen. Geht aber nicht bei dim, auch wenn man nowdeclare auf 2 setzt oder bei nowdeclare 1 auch einen error ausgibt. wahrscheinlich sind bei dim die flags anders als bei var. hast du noch ein original blitz 2 installiert ?. kannst dort mal testen, ob der fehler dort auch auftritt ?? und mal im source schauen Re: Umgebungsvariablen des RedDebugers - tomsmart1 - 23.01.2015 @Blackbird Ich habe keine Probleme den Debugger zu compilieren, mit den Änderungen für Dim von Bernd, nach folgenden Änderungen mem.s(200), scr.s(200) und dis.s(200) umbenannt indem ich "Str" angehängt habe damit ich überall memStr(),scrStr() und disStr() stehen habe und sowie einen Cast eingefügt für *prt=&...Str(...) in *prt=(.l)&...Str(...). @Bernd Ich habe BlitzBasic2 nicht mehr installiert werde ich aber mal testen wenns noch läuft, im Sourcecode davon werde ich dann nachsehen. Re: Umgebungsvariablen des RedDebugers - tomsmart1 - 24.01.2015 @Bernd So ich habe das BlitzBasic Demo 2.10 aus dem Aminet zum laufen bekommen und getestet da kommt keine Fehlermeldungen auf bei DIM und DEFTYPE egal in welcher Reihenfolge. Re: Umgebungsvariablen des RedDebugers - Berndroesch - 24.01.2015 vielleicht kommen die Probleme auch weil blackbird dass mit dem cache geändert hat. denn ist schon unwahrscheinlich, dass der Code, fehler bringt durch das dim. denn auch vorher wird der code nicht ausgeführt. If win = #_winSource AddIDCMP #IDCMP_MOUSEMOVE f = f OR #WFLG_REPORTMOUSE ; <----- das da ;Poke.l ?__gimmi+4,1 End If jetzt muss man halt noch rausfinden, wie man einen local dim oder global dim unterscheidet. oder in einer lokal func einen shared dim. wie das geht weis ich alles nicht, muss ich erst erforschen, an den dims habe ich diesbezüglich nie was gemacht |