Aktuelle Zeit: 20.10.2019 17:16

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]




Ein neues Thema erstellen Auf das Thema antworten  [ 14 Beiträge ]  Gehe zu Seite 1, 2  Nächste
Autor Nachricht
 Betreff des Beitrags: PB-IDE-Tool: Display ASM Code (Win,Lin,Mac)
BeitragVerfasst: 04.08.2018 11:10 
Offline
Benutzeravatar

Registriert: 11.08.2005 19:08
Dieses PB-IDE-Tool zeigt den ASM-Code vom PB-Compiler an (PB-Code wird nicht ausgeführt).
Der PB-Code kann dabei gespeichert oder nicht gespeichert sein.

PureBasic-CodeArchiv-Rebirth/PB-IDE-Tools/DisplayASMCode.pb

Echt übel, wie unterschiedlich die Ausgabe der ASM-Datei ist.
Ich habe deswegen mal ein Thread im englischem Forum aufgemacht: Better output of the ASM file (it is too complicated)

_________________
Bild
Warum OpenSource eine Lizenz haben sollte
PureBasic-CodeArchiv-Rebirth: Git-Repository / Download -- Jede Hilfe ist willkommen!
Manjaro Xfce x64 (Hauptsystem) :: WindowsXP/Xubuntu x86 (VirtualBox) :: PureBasic (Linux: x86/x64, Windows: x86) :: jeweils neueste Version


Zuletzt geändert von Sicro am 09.09.2019 20:08, insgesamt 5-mal geändert.

Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: PB-IDE-Tool: Display ASM Code
BeitragVerfasst: 04.08.2018 13:22 
Offline
Kommando SG1
Benutzeravatar

Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Scheint unter Windows 7 x64 zu laufen.
Allerdings funktioniert es nicht mit Projekten, es wird immer nur die Einzeldatei kompiliert.
Ein Window-Resize wäre gut, wobei ich es ehr beforzugen würde, wenn die asm-Datei einfach mit dem Standard-Editor geöffnet wird.

_________________
Bild
 
BildBildBild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: PB-IDE-Tool: Display ASM Code
BeitragVerfasst: 04.08.2018 15:49 
Offline
Benutzeravatar

Registriert: 20.04.2006 09:50
Bei Projekten ist %TEMPFILE nicht gesetzt, sondern nur %COMPILEFILE. Und %FILE ist immer mainfile des targets (und auch der Inhalt von %COMPILEFILE), egal welche Include gerade im Editor aktiv ist.

_________________
my pb stuff..
Bild..jedenfalls war das mal so.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: PB-IDE-Tool: Display ASM Code
BeitragVerfasst: 10.08.2018 14:27 
Offline
Benutzeravatar

Registriert: 11.08.2005 19:08
STARGÅTE hat geschrieben:
Allerdings funktioniert es nicht mit Projekten, es wird immer nur die Einzeldatei kompiliert.
Den Haupt-Code des Projekts hat man eigentlich immer offen - und inkludierte Code-Dateien werden berücksichtigt.

Projekt-Dateien kann ich nicht direkt unterstützen, weil es keine Tool-Konstanten gibt, die den Pfad zur Projekt-Datei liefert, ohne den Code in der IDE kompilieren zu müssen.

STARGÅTE hat geschrieben:
Ein Window-Resize wäre gut, wobei ich es ehr beforzugen würde, wenn die asm-Datei einfach mit dem Standard-Editor geöffnet wird.
Ich habe den Code wie folgt erweitert:
  • Fenstergröße anpassbar
  • Ausgabe in die Zwischenablage kopieren
  • Ausgabe mit dem Standard-Editor öffnen

#NULL hat geschrieben:
Bei Projekten ist %TEMPFILE nicht gesetzt, sondern nur %COMPILEFILE. Und %FILE ist immer mainfile des targets (und auch der Inhalt von %COMPILEFILE), egal welche Include gerade im Editor aktiv ist.
Ja, und diese Konstanten sind nur gesetzt, wenn der Code in der IDE kompiliert wird.


Kann bitte noch ein Mac-Nutzer testen?

_________________
Bild
Warum OpenSource eine Lizenz haben sollte
PureBasic-CodeArchiv-Rebirth: Git-Repository / Download -- Jede Hilfe ist willkommen!
Manjaro Xfce x64 (Hauptsystem) :: WindowsXP/Xubuntu x86 (VirtualBox) :: PureBasic (Linux: x86/x64, Windows: x86) :: jeweils neueste Version


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: PB-IDE-Tool: Display ASM Code
BeitragVerfasst: 10.08.2018 14:58 
Offline
Ein Admin
Benutzeravatar

Registriert: 29.08.2004 20:20
Wohnort: Saarbrücken
Mein Tool sieht so aus:
Code:
#!/bin/bash

if [ -z "$1" ] || [ -z "$2" ]; then
   echo "Usage: $0 <pbcompiler> <pb-file>"
   exit 1
fi

cd ~/tmp
rm purebasic.asm

$1 -c "$2"
gedit purebasic.asm

Das ist ein kleines Bash-Skript, gespeichert und ausführbar gemacht unter ~/bin/purebasic_asm.sh
Kommandozeile: /home/nicolas/bin/purebasic_asm.sh
Argumente: /home/nicolas/programme/purebasic/compilers/pbcompiler %TEMPFILE
Werkzeugeinstellungen: Keine einzige aktiviert
Dann noch einen Namen geben und fertig. Nutzt man das Tool, öffnet sich automatisch gedit mit dem ASM-Output. Geht wahrscheinlich auch ähnlich einfach mit einer Batch-Datei unter Windows und Notepad++ oder ähnlichem. <)

_________________
Neustes Video: Neje DK - 1 Watt Laser Engraver
Ubuntu Gnome 19.04 LTS x64, PureBasic 5.71 x64 (außerdem 4.41, 4.50, 4.61, 5.00, 5.10, 5.11, 5.21, 5.22, 5.30, 5.31, 5.40, 5.50, 5.60)
"Die deutsche Rechtschreibung ist Freeware, du darfst sie kostenlos nutzen – Aber sie ist nicht Open Source, d. h. du darfst sie nicht verändern oder in veränderter Form veröffentlichen."


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: PB-IDE-Tool: Display ASM Code
BeitragVerfasst: 10.08.2018 18:12 
Offline
Benutzeravatar

Registriert: 11.08.2005 19:08
@NicTheQuick:

Ja, es gibt viele Möglichkeiten. Ein Bash-Script hat den Nachteil, dass es vermutlich nur unter Linux funktioniert - oder bei MacOS auch?
Für Windows muss der Code dann nochmal in der für Windows entsprechenden Script-Sprache geschrieben werden.

Zudem wird die ASM-Datei bei mir nicht im Temp-Verzeichnis (/tmp/) erstellt, sondern in unterschiedlichen Verzeichnissen (siehe mein Code oben).
Liegt es vielleicht daran, dass ich Purebasic in der Umgebungsvariable "PATH" habe?
Code:
export PUREBASIC_HOME=~/purebasic
export PATH=$PUREBASIC_HOME/compilers:$PATH

_________________
Bild
Warum OpenSource eine Lizenz haben sollte
PureBasic-CodeArchiv-Rebirth: Git-Repository / Download -- Jede Hilfe ist willkommen!
Manjaro Xfce x64 (Hauptsystem) :: WindowsXP/Xubuntu x86 (VirtualBox) :: PureBasic (Linux: x86/x64, Windows: x86) :: jeweils neueste Version


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: PB-IDE-Tool: Display ASM Code (Win,Lin,Mac)
BeitragVerfasst: 22.09.2018 11:56 
Offline
Benutzeravatar

Registriert: 11.08.2005 19:08
Kann bitte jemand das Tool noch unter MacOS testen?

_________________
Bild
Warum OpenSource eine Lizenz haben sollte
PureBasic-CodeArchiv-Rebirth: Git-Repository / Download -- Jede Hilfe ist willkommen!
Manjaro Xfce x64 (Hauptsystem) :: WindowsXP/Xubuntu x86 (VirtualBox) :: PureBasic (Linux: x86/x64, Windows: x86) :: jeweils neueste Version


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: PB-IDE-Tool: Display ASM Code (Win,Lin,Mac)
BeitragVerfasst: 17.07.2019 18:13 
Offline

Registriert: 23.08.2013 14:38
Hallo Sicro,

ich habe es gerade unter OSX 13.6 (High Siera) getestet und es scheint zu funktionieren.
unter OSX sieht sehen müssen dann die Arguments so aussehen:
Code:
/deinPfad/showAssabler.app --args "%HOME" "%FILE" "%TEMPFILE"

und das Kommando:
Code:
open

_________________
OSX 10.13 | PB 5.46


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: PB-IDE-Tool: Display ASM Code (Win,Lin,Mac)
BeitragVerfasst: 17.07.2019 18:30 
Offline

Registriert: 23.08.2013 14:38
Noch ein kleiner Schönheitsfehler. Du solltest für das resize des Fensters ein BindEvent() verwenden.

Code:
Procedure redrawWindow()
      ResizeGadget(#Editor_Output, #PB_Ignore, #PB_Ignore, WindowWidth(#Window_Main), WindowHeight(#Window_Main) - 40)
      ResizeGadget(#Button_OpenStandardEditor, 5, GadgetHeight(#Editor_Output) + 5, WindowWidth(#Window_Main) / 2 - 8, #PB_Ignore)
      ResizeGadget(#Button_CopyToClipboard, GadgetWidth(#Button_OpenStandardEditor) + 10, GadgetHeight(#Editor_Output) + 5,
                   WindowWidth(#Window_Main) / 2 - 8, #PB_Ignore)
EndProcedure
;....
BindEvent(#PB_Event_SizeWindow, @redrawWindow(), #Window_Main)

_________________
OSX 10.13 | PB 5.46


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: PB-IDE-Tool: Display ASM Code (Win,Lin,Mac)
BeitragVerfasst: 18.07.2019 18:09 
Offline
Benutzeravatar

Registriert: 11.08.2005 19:08
Hallo Wolfram,

vielen Dank fürs Testen! :)

Wolfram hat geschrieben:
unter OSX sieht sehen müssen dann die Arguments so aussehen:
Code:
/deinPfad/showAssabler.app --args "%HOME" "%FILE" "%TEMPFILE"

und das Kommando:
Code:
open
Ähm… :? Wenn "open" wirklich erforderlich ist, um ein Tool zu starten, dann frage ich mich, warum das PB nicht selber korrekt handhabt.
Was passiert, wenn in Commandline nur der Dateipfad zum Tool und die Parameter in Arguments angegeben werden? Wird das Tool dann nicht aufgerufen?
Code:
Commandline: /deinPfad/showAssabler.app

Arguments: "%HOME" "%FILE" "%TEMPFILE"


Wolfram hat geschrieben:
Noch ein kleiner Schönheitsfehler. Du solltest für das resize des Fensters ein BindEvent() verwenden.
Nur damit der Code sauberer aussieht oder gibt es noch andere Gründe dafür?

_________________
Bild
Warum OpenSource eine Lizenz haben sollte
PureBasic-CodeArchiv-Rebirth: Git-Repository / Download -- Jede Hilfe ist willkommen!
Manjaro Xfce x64 (Hauptsystem) :: WindowsXP/Xubuntu x86 (VirtualBox) :: PureBasic (Linux: x86/x64, Windows: x86) :: jeweils neueste Version


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 14 Beiträge ]  Gehe zu Seite 1, 2  Nächste

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast


Sie dürfen keine neuen Themen in diesem Forum erstellen.
Sie dürfen keine Antworten zu Themen in diesem Forum erstellen.
Sie dürfen Ihre Beiträge in diesem Forum nicht ändern.
Sie dürfen Ihre Beiträge in diesem Forum nicht löschen.

Suche nach:
Gehe zu:  

 


Powered by phpBB © 2008 phpBB Group | Deutsche Übersetzung durch phpBB.de
subSilver+ theme by Canver Software, sponsor Sanal Modifiye