amiga-news ENGLISH VERSION
.
Links| Forum| Kommentare| News melden
.
Chat| Umfragen| Newsticker| Archiv
.

amiga-news.de Forum > Suche [ - Suche - Neue Beiträge - Registrieren - Login - ]

Erste 5 6 7 8 9 -10- 11 12 13 14 15 >> Letzte Ergebnisse der Suche: 1229 Treffer (30 pro Seite)
Der_Wanderer   Nutzer

25.06.2010, 17:11 Uhr

[ - Direktlink - ]
Thema: Betatester für neue iBatch Bildstabelverarbeitung gesucht !
Brett: Amiga, AmigaOS 4

Du musst nur die abtesten, die von BlitzLibs benutzt werden. Includes tun das für dich bereits.

zlib, jpeg werden von der image.inlcude benutzt.

wizard benutzt du aber als BlitzLib.

Bei den anderen Libs geht es oft nicht darum, ob sie existieren, sondern ob die Version hoch genug ist.
OS1.0 hat auch eine exec.library, klar, aber damit wird es nicht laufen.

Generell würde ich OS3.1 vorraussetzen. Vieles geht vielleicht auch mit 2.x oder sogar 1.x, aber das testet niemand mangels Interesse. Ausserdem will man ja auch hier und da vielleicht ein OS3.x Feature haben, sonst programmiert man ja für ein OS von 1988 und darf dann auch keine Wunder erwarten. Für Bildbearbeitung in 24bit ist das sowieso völlig abwegig.
Da muss schon ein bisserl RAM da sein und die nötige OS Version, die 24bit überhaupt "kennt".
Wer ein Amiga System hat ohne OS3.x oder höher, ohne FPU und mit weniger als 32 oder 64 MB RAM nutzt den Amiga sowieso nicht ernsthaft als Productivity Tool, sondern eher für Spiele und ist nicht deine Zielgruppe.


--
--
Author of
HD-Rec, Sweeper, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, AudioConverter, ScreenCam, PerlinFX, MapEdit, AB3 Includes und viele mehr...
Homepage: http://www.hd-rec.de



[ Dieser Beitrag wurde von Der_Wanderer am 25.06.2010 um 17:15 Uhr geändert. ]
 
Der_Wanderer   Nutzer

24.06.2010, 22:03 Uhr

[ - Direktlink - ]
Thema: Betatester für neue iBatch Bildstabelverarbeitung gesucht !
Brett: Amiga, AmigaOS 4

@gerograph
Das Problem von slin ist schwer zu raten woran das liegt.
Generell funktionieren AB3 Programme natürlich auf allen Maschinen von 68020 bis 68060. Target CPU ist eigentlich ein 68020, wenn man "optimize x" mit x!=0 benutzt.
Ich würde auf was externes tippen, eine Library, Datatype o.ä. Man könnte es an einem Enforcer Hit Log sehen.

--
--
Author of
HD-Rec, Sweeper, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, AudioConverter, ScreenCam, PerlinFX, MapEdit, AB3 Includes und viele mehr...
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

24.06.2010, 18:51 Uhr

[ - Direktlink - ]
Thema: Betatester für neue iBatch Bildstabelverarbeitung gesucht !
Brett: Amiga, AmigaOS 4

@DaxB

Ein 800x600x32 Bild braucht schon alleine 2MB. Geht also nicht.
Wer Fotos verarbeitet, braucht mindestens 64MB oder mehr im Amiga. Und das PictureDT muss logischerweise 24bit beherrschen, sonst kann man keine Bilder laden.



--
--
Author of
HD-Rec, Sweeper, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, AudioConverter, ScreenCam, PerlinFX, MapEdit, AB3 Includes und viele mehr...
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

24.06.2010, 15:09 Uhr

[ - Direktlink - ]
Thema: Betatester für neue iBatch Bildstabelverarbeitung gesucht !
Brett: Amiga, AmigaOS 4

could not allocate ARGB bitmap

Das passiert, wenn eine Bitmap nicht allociert werden konnte mittels graphics/AllocBitmap().
Das kann passieren entweder weil zu wenig speicher frei ist oder weil 24bit nicht unterstützt wird.

Zum Fehler kommt es, weil gerograph vermutlich nicht testet, ob das laden/erstellen eines Images erfolgreich war.

--
--
Author of
HD-Rec, Sweeper, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, AudioConverter, ScreenCam, PerlinFX, MapEdit, AB3 Includes und viele mehr...
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

24.06.2010, 10:29 Uhr

[ - Direktlink - ]
Thema: Betatester für neue iBatch Bildstabelverarbeitung gesucht !
Brett: Amiga, AmigaOS 4

@gerograph
FPU kannst du abstellen mit "optimize 5".
Dann werden allerdings einige Sachen vielleicht deutlich langsamer.

Der Absturz von slin ist evtl. eine fehlende Library.
Standardmässig tested AB3 nicht, ob eine Lib installiert ist (wenn man BlitzLibs benutzt, Inlcudes tun das natürlich).
Deshalb solltest du zumindest die wizard.library testen mit:

If dos_CheckLib{"wizard.library",42}=False Then error{"iBatch needs wizard.library or higher to run. Please install!"} : End

Du kannst mit Snoopdos gucken, was du sonst noch so für Libraries nutzt, und die dann alle abklopfen, vor allem auch mit Version.

--
--
Author of
HD-Rec, Sweeper, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, AudioConverter, ScreenCam, PerlinFX, MapEdit, AB3 Includes und viele mehr...
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

23.06.2010, 12:07 Uhr

[ - Direktlink - ]
Thema: Betatester für neue iBatch Bildstabelverarbeitung gesucht !
Brett: Amiga, AmigaOS 4

Klingt natürlich nach Eigenwerbung, aber für systemkonforme Sachen sollte man immer die Includes vorziehen.

Die BlitzLibs wurden zu einer Zeit implementiert, also die Amiga Landschaft noch homogen aus AmigaOS/68k+CustomChips bestand. Amithlon, AROS, MOS oder OS4 gab es damals noch nicht. Logischerweise kann der Code dann auch keine speziellen Bugsfixes/Workarounds enthalten. Ausserdem weist du nur, dass in irgendwo in dem Code des ASL Befehls kracht, kannst das dann aber weder fixen noch genauer herausfinden.
Bei Includes kannst du genau sehen, wo es kracht und es selbst fixen, auch wenn der Author den Amiga verlassen hat.


--
--
Author of
HD-Rec, Sweeper, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, AudioConverter, ScreenCam, PerlinFX, MapEdit, AB3 Includes und viele mehr...
Homepage: http://www.hd-rec.de



[ Dieser Beitrag wurde von Der_Wanderer am 23.06.2010 um 12:08 Uhr geändert. ]
 
Der_Wanderer   Nutzer

22.06.2010, 22:14 Uhr

[ - Direktlink - ]
Thema: Betatester für neue iBatch Bildstabelverarbeitung gesucht !
Brett: Amiga, AmigaOS 4

Benutze Includes, keine BlitzLibs ;-)

Mehr Features, erweiterbar, DU hast den Source Code. Wenn es kracht, kannst du es fixen oder mich fragen. Das alles geht bei BlitzLibs nicht.

Ich hab es jetzt nicht genau verfolgt, aber wenn dir jemand den Hunk offset nennt kannst du den Fehler in der .dbg Datei nachschlagen. Muss allerdings das gleiche Kompilat sein, da Amiblitz3 die Exectuables schrittweise Code eleminiert je öfter man kompiliert.


--
--
Author of
HD-Rec, Sweeper, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, AudioConverter, ScreenCam, PerlinFX, MapEdit, AB3 Includes und viele mehr...
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

22.06.2010, 15:32 Uhr

[ - Direktlink - ]
Thema: Betatester für neue iBatch Bildstabelverarbeitung gesucht !
Brett: Amiga, AmigaOS 4

Wie öffnest du denn den Filerequester?
Nutzt du die asl.include, eine BlitzLib oder was selbst-gebackenes?
--
--
Author of
HD-Rec, Sweeper, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, AudioConverter, ScreenCam, PerlinFX, MapEdit, AB3 Includes und viele mehr...
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

20.06.2010, 00:31 Uhr

[ - Direktlink - ]
Thema: Betatester für neue iBatch Bildstabelverarbeitung gesucht !
Brett: Amiga, AmigaOS 4

Create .dbg file muss angehackt sein, der rest ist egal. Mit Debugger hat das nichts zu tun.
Die Datei, die dann erstellt wird, liegt neben der Exectuable und ist eine Textdatei, mit Hunk offsets und den dazugrhörigen Sourcecode Dateien + Zeile.

Wenn du dir den Report von DaxB anguckst, dann suchst du dir den ersten Hunk offset im ersten Hit raus.

----> 01CC6C16 - "Ram:ibatch_sw_beta3/ibatch_sw_beta3" Hunk 0000 Offset 00067376

Und schlägst in der .dbg Datei nach, welche Sourcecodezeile das verursacht hat. In der Regel ist dann schon klar, was passiert ist.
Manchmal liegt der Hunk offset aber auch ausserhalb des Sourcecodes, dann musst du den vorherigen nehmen. Dann ist die Ausführung ins Nirvana gesprungen und hat dort geknallt.

Warum die leer ist weis ich nicht. Wenn das im Compiler Settings angehackt ist, sollte die erstellt werden. Wenn nicht, wäre das ein Bug in AB3.


--
--
Author of
HD-Rec, Sweeper, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, AudioConverter, ScreenCam, PerlinFX, MapEdit, AB3 Includes und viele mehr...
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

19.06.2010, 14:59 Uhr

[ - Direktlink - ]
Thema: Betatester für neue iBatch Bildstabelverarbeitung gesucht !
Brett: Amiga, AmigaOS 4

@geograph
Du bist nur blind für das Testen weil du es implementiert hast, das geht jedem so. Ich hab nur 2x geklickt...
Extrem wäre, wenn ich z.B. 1.000.000 Bilder in einem Verzeichniss hätte und sie von 3000x2000 auf 3000x3 runterrechnen lasse oder sowas in der Art.

Du solltest, wie o.g., die .dgb Datei erstellen, so kannst du sehen wo es gekracht hat wenn dir jemand dem Hunk-Offset mitteilt. So bist du nicht auf die (meistens ungenaue) Klar-Text Beschreibung angewiesen.

Under OS3.1 geht die image.include nur, wenn 24bit Datatype installiert ist. Da alle Routinen auf 24bit ausgelegt sind macht auch alles andere keinen Sinn.

--
--
Author of
HD-Rec, Sweeper, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, AudioConverter, ScreenCam, PerlinFX, MapEdit, AB3 Includes und viele mehr...
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

18.06.2010, 19:14 Uhr

[ - Direktlink - ]
Thema: Betatester für neue iBatch Bildstabelverarbeitung gesucht !
Brett: Amiga, AmigaOS 4

Anregungen:

- Bitte ein richtiges Icon für die Exe und ein Icon für das Verzeichnis ;-)

- Ich habe bei Klick auf start sofort ein Divide by Zero Guru bekommen und es gab einen Zugriff auf Adresse 100, vermutlich ein NULL Pointer.
Wenn du in Amiblitz3.5 "create .dbg File" einstellst, dann könntest du vom Guru Output (genauer dem Hunk offset) die Codezeile raussuchen, wo es passiert ist.

Das war mein 10 sec Test. Mal gucken was mir bei 20sec auffällt... ;-)


--
--
Author of
HD-Rec, Sweeper, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, AudioConverter, ScreenCam, PerlinFX, MapEdit, AB3 Includes und viele mehr...
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

17.06.2010, 21:25 Uhr

[ - Direktlink - ]
Thema: Steuerung zwischen GUI und "Ausführern"?
Brett: Programmierung

So eine Zentrale Instanz ist meistens eine Verzweifelungstat, um altbekannte Herangehensweisen in OOP reinzupressen.

Was ein Spieler vorhat, ist alleine Sache des Spielers.
Wenn du anfängst, eine Liste zu speichern in einem Globalen Kontext der Dinge enthält die spielerspezifisch sind dann ist das falsch. Deshalb hast du ja verschiedene Spieler Instanzen.

Wenn das Gebäude gebaut wird, ist das alleine Sache des Spielfeldes.

Also der Spieler bekommt ein Feld "action".
Das Spielfeld bekommt eine Liste mit gerade bauenden Objekten.

Wenn ein Mausklick passiert sollte das als Event an den aktuellen Spieler gehen (diese Information ist am Besten in dem Event Listener untergebracht). Der Spieler weis ja was er "vorhat" und kann dann im Spielfeld die entsprechende Aktion anhängen.
Das sollte aber nicht direkt an den Mausklick gekoppelt sein. Der Mausklick sollte von einem Event Listener abstrahiert werden, sodass du nicht nur gezwungenermaßen von der GUI Befehle entgegen nehmen kannst, sondern z.B. via Internet oder KI, und das muss aus Spielersicht durch die gleichen Methoden realisiert werden.
Also Spieler.baue(), Spieler.bekommePunkte() etc.

Niemals eine Codezeile zweimal schreiben, dann simmt was nicht mit dem Design.

--
--
Author of
HD-Rec, Sweeper, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, AudioConverter, ScreenCam, PerlinFX, MapEdit, AB3 Includes und viele mehr...
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

17.06.2010, 15:21 Uhr

[ - Direktlink - ]
Thema: Steuerung zwischen GUI und "Ausführern"?
Brett: Programmierung

Das Problem ist, dass bei OOP ein stärkeres Gewicht auf der Planungsphase liegt. Das ist gut für erfahrene Programmierer, weil es danach leichter geht. Das ist schlecht für unerfahrene, weil sie die Strukturen erst während der Implemeentation ausbauen, und sich somit von Anfang an Dinge verbauen können die später in einem hässlichen Gewurstel enden.
Wenn du also OOP machen willst, dann überlege dir genau, wann wer welche Information braucht.
Ich habe es nicht so wirklich ganz verstanden was du machen willst, aber einen "Stack" sicher nicht. Du willst ja, wenn der Spieler eine andere Aktion anwählt, dir nicht die vorherige merken sondern überschreiben.
Und Global machen weil man keine geeignete OO Struktur findet ist quasi Tabu, damit würdest du die OO Idee untergraben. Dann kannst du auch gleich "ganz normal" procedural programmieren, weil du den Vorteil der Kapselung verlierst (z.b. beliebig viele Spieler machen, du parallel und unabhängig voneinander agieren können).

Ich denke du brauchst lediglich ein Feld "action" in deinem Spieler Objekt, das sich merkt welche Aktion der Spieler ausgewählt hat, damit man beim klick in das Spielfeld entsprechend reagieren kann.
Das Feld kann dann verschiedene Werte annehmen z.b. "ACTION_NONE", "ACTION_BUILD", "ACTION_...".
--
--
Author of
HD-Rec, Sweeper, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, AudioConverter, ScreenCam, PerlinFX, MapEdit, AB3 Includes und viele mehr...
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

08.06.2010, 17:24 Uhr

[ - Direktlink - ]
Thema: Programmierhinweise AmiBlitz3 erbeten
Brett: Programmierung

Nein, sowas gibts nicht und man sollte mit sowas auch wahnsinnig vorsichtig sein.
Es gibt ein Tool von mir "RDelete" was rekursiv alles löscht was matched. Daraus könntest du dir eine Funktion bauen.

Hier ist der Code.
Hat natürlich noch einiges Klim-Bim drin was du evtl. nicht brauchst.
Ich finde dieses Tool sehr hilfreich um z.b. .svn Information zu löschen.

z.B.
Rdelete RAM:ReleaseCandidate/#?.svn -force -dirs

code:
optimize 7
Syntax 2

XINCLUDE "dos.include.bb2"

Function.l rdelete{path.s,all.l}
  SHARED dos_pattern.s,force.l,dirs.l,docase.l,delempty.l

  filecount.l = -1
  lock.l = Lock_(&path.s,#ACCESS_READ)

  *fib.FileInfoBlock = AllocDosObject_(#DOS_FIB,#TAG_DONE)

  If lock><0 AND *fib><0
    If Examine_ (lock,*fib)
      filecount  = 0
      delcount.l = 0
      While ExNext_(lock,*fib)
        filename.s = dos_AddPart{path.s,Peek.s(&*fibfib_FileName)}
        If *fibfib_DirEntryType<0
          If all=False
            If docase
              delit.l = MatchPattern_ (&dos_pattern.s,&*fibfib_FileName)
            Else
              delit.l = MatchPatternNoCase_ (&dos_pattern.s,&*fibfib_FileName)
            End If
          Else
            delit.l = True
          End If
          If delit
            If force
              dos_SetProtect{filename,0}
            End If
            If dos_Delete {filename.s}
              NPrint filename.s,"...deleted"
              delcount+1
            Else
              NPrint filename.s,"...NOT deleted"
              filecount+1
            End If
          Else
            filecount+1
          End If
        Else
          If dirs
            If all=False
              If docase
                delit.l = MatchPattern_ (&dos_pattern.s,&*fibfib_FileName)
              Else
                delit.l = MatchPatternNoCase_ (&dos_pattern.s,&*fibfib_FileName)
              End If
            Else
              delit=True
            End If
            If delit Then delall.l = True : Else delall =False
          Else
            delall.l = False
          End If
          If rdelete{filename.s,delall}
            If delall=False Then filecount+1 : Else delcount+1
          End If
        End If
      Wend
    End If
    UnLock_ lock

    If filecount=0
      If all><0 OR (delempty><0 AND delcount>0)
        If dos_Delete{path.s}
          NPrint "<DIR> ",path.s,"...deleted"
        Else
          NPrint "<DIR> ",path.s,"...NOT deleted"
        End If
      End If
    End If
  End If

  If *fib Then FreeDosObject_ #DOS_FIB,*fib : *fib=0

  Function Return filecount
End Function

patt.s     = "#?.bak"
path.s     = ""
force.l    = False
dirs.l     = False
showhelp.l = False
err.l      = False
docase.l   = False
delempty.l = False

; Get the required CLI arguments ...
patt.s = dos_GetNextArg{} ; first read the filename
If patt = ""
  NPrint "*** ERROR: No pattern specified!"
  err.l=True
End If

; Get the optional CLI arguments
Repeat
  arg.s = dos_GetNextArg{} ; get the next CLI argument
  larg.s = LCase$(arg) ; lower case the option string
  Select larg
    Case "-force"
      force.l = True
    Case "-dirs"
      dirs.l = True
    Case "-d"
      path.s = dos_GetNextArg{}
    Case "-case"
      docase = True
    Case "-h"
      showhelp = True  ; show the help and quit
    Case "-empty"
      delempty = True
    Default
      If arg><""
        NPrint "*** ERROR: Unknown option \22",arg,"\22 specified!"
        err = True
      End If
  End Select
Until arg = "" ; until we processed all arguments

; Show the help if something went wrong or help was requested
If err><False OR showhelp = True
  NPrint "n  Syntax : RDelete <pattern> [options]"
  NPrint "n    required:"
  NPrint "    <pattern>      : dos pattern, e.g. #?.bak"
  NPrint "n    optional:"
  NPrint "    -d <dir> : directory where to start deleting"
  NPrint "    -force   : force protected file to be deleted"
  NPrint "    -dirs    : delete also directories that are matching the pattern"
  NPrint "    -empty   : delete directories that became empty"
  NPrint "    -case    : no case sensitive"
  NPrint "    -h       : show this help"
  NPrint "n  Example :"
  NPrint "    RDelete \22DH0:Files#?.bak\22 -forcen"
  NPrint "Description:n"
  NPrint "Will delete recursive all files matching the dos pattern."
  End
End If
path.s = dos_AddPart{path.s,dos_PathPart{patt}}
patt.s = dos_FilePart{patt}

tempbuf.s = LSet$(" ",FLen(patt.s)*3+4)
If docase
  ParsePattern_ &patt.s,&tempbuf.s,FLen(tempbuf.s)
Else
  ParsePatternNoCase_ &patt.s,&tempbuf.s,FLen(tempbuf.s)
End If
dos_pattern.s = Peek.s(&tempbuf.s)

NPrint "Scanning "+path+" for "+patt.s+" files to delete..."
rdelete {path.s,False}
NPrint "Done."
End


--
--
Author of
HD-Rec, Sweeper, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, AudioConverter, ScreenCam, PerlinFX, MapEdit, AB3 Includes und viele mehr...
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

08.06.2010, 17:14 Uhr

[ - Direktlink - ]
Thema: spezielle Stormwizard Fragen (unter AmiBlitz)
Brett: Programmierung

Er hat dich jetzt freigeschaltet...
--
--
Author of
HD-Rec, Sweeper, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, AudioConverter, ScreenCam, PerlinFX, MapEdit, AB3 Includes und viele mehr...
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

08.06.2010, 11:28 Uhr

[ - Direktlink - ]
Thema: spezielle Stormwizard Fragen (unter AmiBlitz)
Brett: Programmierung

@ZereoG

Warum sollte Bernd oder ich eine OS4 Klasse benutzen? (geht das überhaupt aus 68k Code heraus?)
Es ist ja keine explizite OS4 Software. Wenn OS4 einen konsistenten Look haben will, sollte es die OS3 Requester so aussehen lassen wie OS4 Requester.
Ich glaube das wird nicht gemacht, um 68K Software (oder not-OS4-aware Software) möglichst altbacken aussehen zu lassen damit die User nach nativen (und damit exclusiven) Ports schreien.
Bei Gadtools hat man sogar den 2:1 Look übernommen und den Cycle-Gadgets kein Auswahl Menu verpasst. War im nackten original auch so (wobei das kaum ein OS3 User mehr genutzt hat), aber man hätte auch die Annehmlichkeiten vom heutigen GUI Look&Feel spendieren können.


--
--
Author of
HD-Rec, Sweeper, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, AudioConverter, ScreenCam, PerlinFX, MapEdit, AB3 Includes und viele mehr...
Homepage: http://www.hd-rec.de



[ Dieser Beitrag wurde von Der_Wanderer am 08.06.2010 um 11:29 Uhr geändert. ]
 
Der_Wanderer   Nutzer

05.06.2010, 17:15 Uhr

[ - Direktlink - ]
Thema: Stormwizard GUI Editor mit BlitzBasic oder lieber C (Anfänger) !??
Brett: Programmierung

> aber das ist ersteinmal kein Problem.
Das ist schon ein Problem. Evtl. passiert direkt nichts schlimmes, aber indirekt. Das sollte nicht sein.

--
--
Author of
HD-Rec, Sweeper, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, AudioConverter, ScreenCam, PerlinFX, MapEdit, AB3 Includes und viele mehr...
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

04.06.2010, 11:09 Uhr

[ - Direktlink - ]
Thema: Programmierhinweise AmiBlitz3 erbeten
Brett: Programmierung

1. Das kommt drauf an mit welcher Library OS4 die Requester erzeugt.

Probiere doch mal
code:
XINCLUDE "error.include.bb2"
If ask{"Hoppla, watt nun?","Mache es!|Ooops!"}
  ; whuuhou!
Else
  ; ehm, no
EndIf
End


Das verwendet EasyRequest() aus der intuition.library, also OS4 Bestandteil.

2. Ist mir nicht bekannt. Dafür wirst du wohl einen eigenen Decoder schreiben müssen. Selbst die jpeg.library kann das meines wissens nach nicht. Hätte ich aber auch schonmal gebrauchen können.

3. Keine Ahnung.
--
--
Author of
HD-Rec, Sweeper, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, AudioConverter, ScreenCam, PerlinFX, MapEdit, AB3 Includes und viele mehr...
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

02.06.2010, 10:53 Uhr

[ - Direktlink - ]
Thema: Stormwizard GUI Editor mit BlitzBasic oder lieber C (Anfänger) !??
Brett: Programmierung

Wenn Variablen im globalen Context deklariert werden, dann sind sie erstmal global.
Wenn man diese dann innerhalb einer Funktion/Statement benutzen will, muss man sie sich "reinholen" mit "SHARED variable.t"

code:
myvar.l = 0

Function.l xzy{}
SHARED myvar
  myvar = ...
End Function


Wenn einem das zu lästig ist, kann man das SHARED (ab Amiblitz2.x) auch im globalen Kontext während der deklaration machen. Dann ist sie grundsätzlich überall verfügbar. DAfür ist glaube ich Optimize 4 (new syntax mode) notwendig.

Also
code:
optimize 4
SHARED myvar.l

Function.l xzy{}
  myvar = ...
End Function


Disclaimer:

Globale Variablen, wenn es sich nicht um "Engine-Newtypes" handelt, sind schlechter Programmierstil und führen bei größeren Projekten über kurz oder lang zu Wartungsproblemen und undurchsichtigem Code. Niemals globale primitive Variablen verwenden!
Ich empfehle auch jedem "syntax 2" am Anfang des Programs anzugeben, das ist die "Strictness" mit der Variablen behandelt werden. Bei "2" muss man Variablen vor der ersten Benutzung deklarieren, explizit oder implizit. D.h. man schreibt bei der ersten benutzung den Typ, ab dann nicht mehr. Sonst ist man Tippfehlen auf Gedeih und Verderb ausgesetzt. Bei größeren Projekten ist das ein Todesurteil.



--
--
Author of
HD-Rec, Sweeper, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, AudioConverter, ScreenCam, PerlinFX, MapEdit, AB3 Includes und viele mehr...
Homepage: http://www.hd-rec.de



[ Dieser Beitrag wurde von Der_Wanderer am 02.06.2010 um 10:57 Uhr geändert. ]
 
Der_Wanderer   Nutzer

01.06.2010, 20:14 Uhr

[ - Direktlink - ]
Thema: Stormwizard GUI Editor mit BlitzBasic oder lieber C (Anfänger) !??
Brett: Programmierung

Oha, wenn du Amiblitz in der Compat Liste hast, würde das erklären warum das Laden von .ab3 Dateien eine merkliche Verzögerung hat.

Das sollte aber eigentlich nicht nötig sein, oder?
Lediglich beim REDDEbugger.

BTW, warum sind in der Distri (z.b. die ich jetzt auf Sourceforge geladen habe) keine Exe Flags gesetzt?
Evtl. hat das was mit meinem WinUAE Filesystem zu tun? Bei mir werden alle Dateien mit gesetztem Exe Flag angezeigt.

--
--
Author of
HD-Rec, Sweeper, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, AudioConverter, ScreenCam, PerlinFX, MapEdit, AB3 Includes und viele mehr...
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

01.06.2010, 16:21 Uhr

[ - Direktlink - ]
Thema: Stormwizard GUI Editor mit BlitzBasic oder lieber C (Anfänger) !??
Brett: Programmierung

Btw, dein http://www.amiforce.de Account scheint da zu sein. Kannst du trotzdem nicht posten?

--
--
Author of
HD-Rec, Sweeper, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, AudioConverter, ScreenCam, PerlinFX, MapEdit, AB3 Includes und viele mehr...
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

01.06.2010, 09:50 Uhr

[ - Direktlink - ]
Thema: C oder C++?
Brett: Programmierung

Schon klar dass so ein Thread nichts ändert. Aber ich wollte mal die Stimmung sondieren.

@whose
Eine HL API führt i.A. zu kleineren Programmen. Wenn der API Code dynamisch gelinkt wird, dann wird die exe auch kleiner. Wenn der API Code statisch gelinkt wird, wird die exe größer, weil man Dinge mit drin hat die man nicht braucht. Aber das juckt heute keinen mehr. Die menschliche Arbeit ist teuer, die der Maschine billig. Wichtig ist was eine Applikation kann und wie komfortabel sie das kann. Nicht ob ihre Exe ein wenig größer oder kleiner ist.

Bei einem Druckertreiber von 100MB ist aber noch was anderes passiert. Möglicherweise sind jede Menge TTF Fonts mit eingebettet oder sowas.

Man muss auch nicht von einem Extrem ins andere springen. So eine HL API wie ich sie mir vorstelle würde ja die AmigaOS API nicht verbieten, sondern ergänzen und mit AmigaOS API kooperieren.
D.h. wenn ich ein Image Objekt habe kann ich mir durchaus eine Bitmap oder ein Rastport geben lassen, um mit Low-Level Befehlen weiterzuarbeiten. Das ist ja durchaus sinnvoll, da eine HL API nicht alles Erdenkliche leisten kann.

Ich sehe aber leider hier, dass so eine HL API aus verschiedenen Gründen angezweifelt wird, und gleichzeitig viele Vorzüge nicht erkannt.
Schade.

--
--
Author of
HD-Rec, Sweeper, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, AudioConverter, ScreenCam, PerlinFX, MapEdit, AB3 Includes und viele mehr...
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

31.05.2010, 22:28 Uhr

[ - Direktlink - ]
Thema: C oder C++?
Brett: Programmierung

Da kann ich Holger nur zustimmen.


Eine High-Level API muss nicht zwangsläufig langsamer sein als das gleiche per Low-Level API implementiert. Das gilt nur, wenn man gleich gut oder besser programmieren kann als die API Programmierer UND genauso viel Zeit investieren kann. (oder die HL API das nicht elegant lösen kann). In der Regel kann man aber in eine individual Implementation weniger Zeit investieren als in wiederverwertbaren Code.

Es gibt genügend Beispiele, wo z.B. ein einmal sauber implementierter TextView wesentlich bessere und performantere Ergebnisse produziert hätte als ein wildes Text() Geraffel, was immer alles neu zeichnet an vielen Stellen im Code, weil keine Zeit war sich beispielsweise mit Damage Regions und Layern auseinanderzusetzen.
Oder ein Insertsort implementiert wurde weil keine Zeit/Wissen für ein Quicksort da war.


Optimierungen kann man in folgendes 4-Schichten Modell einteilen:

1. Konzeptionelle Schicht
2. Algorithmische Schicht
3. Ausführungsschicht
4. Hardware Schicht

Die Mächtigkeit nimmt von 1. an ab bis zu 4. Viele empfinden das gerade andersherum. Das sind die, die sich nicht mit Komplexitätslehre beschäftigt haben.

Eine kurze Erleuterung:

4. Hardware Schicht
ist wie schnell die Maschine das Program ausführt. Da können wir erstmal nicht viel dran drehen als Software Entwickler.

3. Ausführungsschicht
Hier geht es darum, möglichst schnellen Code zu generieren.
Durch die Wahl des Compilers, Sprache, aber auch Tricksereien wie Bitshiften, Register Variablen etc. Hier verliert die HL API etwas, da mindestens ein JUMP mehr zu erwarten ist.
Diese Schicht wird von vielen als das Non-Plus-Ultra empfunden und finden deshalb Java oder HL APIs schlecht. Aber:

2. Algorithmische Schicht
Hier geht es darum, die Dinge möglichst geschickt, also mit möglichst niedriger Komplexität zu erledigen, z.b. Insertsort vs. Quicksort, lineare Liste vs. Hashliste, kompletten Refresh vs. Partiellen Refresh usw.
Hier kann eine HL API punkten, wenn der API Programmierer erfahrener ist als der Anwender oder für ein bestimmtes Problem mehr Zeit investieren kann.

1. Konzeptionelle Schicht
Das ist wahrscheinlich am schwierigsten zu verstehen und verschmilzt oft mit 2.
Hier geht es darum, ein Programm vom Konzept her schnell zu bekommen. D.h. kann ich z.b. einen Refresh komplett einsparen, weil ich sicher sein kann dass nichts getrashed wurde? Dann kann mein Algorithmus noch so schnell sein oder der Compiler noch so schnellen Code generieren, ist wird immer schneller sein etwas nicht zu tun.
Oder kann ich eine Aktion im Hintergrund parallel ausführen, sodass ich Zeit nutze die der Benutzer sowieso mit was anderem beschäftigt ist?
Z.b. in einem IDE im Hintergrund kompilieren und Ergebnisse bereits im Sourcecode highlighten. Der Entwickler muss dann nie bewusst kompilieren. Wenn er am Ende eine Exe haben will, dann ist sie i.d.R. bereits da.
Oder pre-fetch von Internet Unter-Seiten, während der Benutzer die Hauptseite liest. Wenn er sich dann für einen Link entscheidet, ist die Seite möglicherweise schon da.


Früher, zu C64 Zeiten war 4.+3. das wichtigste. Beim Amiga kam langsam 2. dazu. Heute sind 1.+2. oft wichtiger geworden. Und genau da liegen die Stärken einer HL API und die Schwächen eine LL API, weil man das jedesmal neu erfinden muss, und das ist recht sophisticated im Vergleich zu Bit-Tricksereien, dass kann nicht jeder.



--
--
Author of
HD-Rec, Sweeper, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, AudioConverter, ScreenCam, PerlinFX, MapEdit, AB3 Includes und viele mehr...
Homepage: http://www.hd-rec.de



[ Dieser Beitrag wurde von Der_Wanderer am 31.05.2010 um 22:39 Uhr geändert. ]
 
Der_Wanderer   Nutzer

31.05.2010, 10:44 Uhr

[ - Direktlink - ]
Thema: C oder C++?
Brett: Programmierung

@inq:
Ja klar, wer am Source was verändert muss logischerweise mit den Konsequenzen leben. Wobei in dem Falle wie ich ihn beschrieben habe die API als Libraries beim User liegen, also nicht als Source jedesmal einkompiliert werden.

> Meine Anwort auf das Standard-Gemecker des Coders, warum "ich so verdammt viele checks für alles einbauen soll" hast du nicht wirklich angenommen:
Habe ich was nicht gelesen? Hm, klar, alles muss man checken was irgendwie schief gehen kann.

> Im Übrigen ist es eine sinnlose Annahme, es gäbe "nie" einen Bug in einer API.
Habe ich ja nicht behauptet. Es gibt sogar studien die in etwa berechnen, pro x Zeilen Code werden y Bugs eingeführt. Hängt natürlich von vielen Faktoren ab.

> Aber ich vermutete einfach, da sind noch andere Incs involviert, z.b.
> für irgendeine Dos.include oder file.include oder mem.include oder so.
Ja klar. Ich erfinde in der image.include ja nicht den file i/o neu etc.
Die Amiblitz Includes sind in Schichten angeordnet.
Z.b. unter der Image.include liegen die Includes für einzelne Fileformate, z.b. png.inlcude, bmp.inlcude und iff-ilbm.include. Die wiederum nutzen die file.include für file i/o.


--
--
Author of
HD-Rec, Sweeper, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, AudioConverter, ScreenCam, PerlinFX, MapEdit, AB3 Includes und viele mehr...
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

30.05.2010, 22:11 Uhr

[ - Direktlink - ]
Thema: C oder C++?
Brett: Programmierung

Die Stabilität ist schon gewährleistet. Man lässt ja nicht jeden x-beliebigen Progger Änderungen einchecken. Und per Versioncontrolle kann man immer genau sehen, wer was gemacht hat und ggf. wieder Rückgängig machen.
Wie gesagt, die Entwickler einer solchen API sollten erfahrene Leute sein.

> der "Unnütze Mehraufwand" tritt nur EINMAL auf!
Der tritt für jeden Entwickler mindestens einmal auf. Jeder Entwickler löst das ein wenig anders, je nach Kentnisstand, Gesinnung und Zeit.

> es mag einfach sein, Loadimage{} zu ändern, aber sind da nicht noch
> viel mehr verstreute Sprengsel in all den vielen Includes?
Wie meinst du das? Alle weiteren Inlcudes, die Bilder laden, tun das über die image.include. Einmal gefixed, geht es überall.


--
--
Author of
HD-Rec, Sweeper, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, AudioConverter, ScreenCam, PerlinFX, MapEdit, AB3 Includes und viele mehr...
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

30.05.2010, 19:42 Uhr

[ - Direktlink - ]
Thema: Stormwizard GUI Editor mit BlitzBasic oder lieber C (Anfänger) !??
Brett: Programmierung

Hm, ja, das ist immer noch ein Bug.
Mir wurde reportet, der Fehler kommt immer bei den ersten zwei Anweisungen, egal was das ist.

--
--
Author of
HD-Rec, Sweeper, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, AudioConverter, ScreenCam, PerlinFX, MapEdit, AB3 Includes und viele mehr...
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

30.05.2010, 16:01 Uhr

[ - Direktlink - ]
Thema: Stormwizard GUI Editor mit BlitzBasic oder lieber C (Anfänger) !??
Brett: Programmierung

@gerograph:

Die Meldung ist ganz normal, weil die Datei noch nicht existiert. Ich habe die Meldung entfernt.

Das Problem was danach kommt ist was völlig anderes. Das ist der mysteriöse Bug unter OS4, den manche User sehen und manche nicht.

Das Verhalten mit den Includes ist ganz normal. Schliesstlich bekommt der Debugger bei jeder weiteren Sourcecode Zeile (irrtümlich) einen Guru, und die Includes gehörten zum Source nunmal dazu. Das ist kein Bug sondern ein Feature. Der eigentliche Fehler ist, dass du überhaupt einen Runtime Fehler bekommst. Normalerweise müsste er da ohne zu meckern drüberfegen.


> einen GRIM bekomme ich nicht
D.h. bei der ganzen aktion bekommst du keinen GRIM?
Ab wann läuft denn dein Programm weiter, ohne dass der Debugger wieder stoppt? (ich nehme mal an du hast auf "RUN" und nicht auf "TRACE" geklickt. Den bei TRACE ist logisch, dass er überall hineinwuselt.

> 4. wie kann ich denn das speichern im ab3 format erzwingen ?
Du musst als Dateiendung .ab3 eingeben bei "Speichern unter".

In Zukunft wird es nur noch .ab3 geben, sobald es stabil ist.
bb2 und ab2 geht dann nur noch über export.

--
--
Author of
HD-Rec, Sweeper, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, AudioConverter, ScreenCam, PerlinFX, MapEdit, AB3 Includes und viele mehr...
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

30.05.2010, 14:33 Uhr

[ - Direktlink - ]
Thema: C oder C++?
Brett: Programmierung

Ja, natürlich, genauso Bullet Proof wie im alternativen Falle deine Implementation. Nur dass auf diese API viel mehr Augen gucken als auf deine Implementation. Deshalb kann man erwarten, dass sie robuster ist.
Wenn die API lebendig und OpenSource ist, könnte man im Falle eines Bugs natürlich entprechend einen Bugreport abgeben und es sollte alsbaldig einen Fix geben. Und wenn das zu lange dauert und man so erfahren ist, dass man die Funktion auch hätte selbst implementieren können, dann ist man wohl auch erfahren genug das in der HL API selbst zu fixen.

--
--
Author of
HD-Rec, Sweeper, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, AudioConverter, ScreenCam, PerlinFX, MapEdit, AB3 Includes und viele mehr...
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

30.05.2010, 14:28 Uhr

[ - Direktlink - ]
Thema: Stormwizard GUI Editor mit BlitzBasic oder lieber C (Anfänger) !??
Brett: Programmierung

@gerograph:

2. D.h. du hast einen Bug gefunden?
Wenn RED_DBug.prefs noch nicht existiert stürzt es bei dir ab?

Was meinst du mit den "includierten Includes abarbeiten"?
Meinst du das Erstellen des Help-Index?

3. Das was du vermutlich möchtest (den Shell Output lesen der sonst zu schnell wieder weg ist) sollte nicht im Programm stattfinden. Dazu gibt es in den IDE Preferences/console output/wait for console closing.
Warten für x sec kannst du mit dem OS Befehl "Delay_ 50*x". (x = Sekunden)een

4. Vermutlich weil du eine .res Datei refrenzierst mit absolutem Pfad Namen. AB3 sucht automatisch im Resident Verzeichnis, und Residents sollte komplett ohne Pfad eingetragen werden.
Ansonsten benutze lieber das .ab3 Format. Dort kannst du im schlimmsten Fall mit einem Texteditor nachsehen, wo Work: steht und das ändern.
Es wurde allerdings noch ein Bug reportet beim beenden von AB3 wenn man eine Datei im .ab3 Format geladen hat unter OS4. Da muss ich nochmal genau nachschauen.


--
--
Author of
HD-Rec, Sweeper, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, AudioConverter, ScreenCam, PerlinFX, MapEdit, AB3 Includes und viele mehr...
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

30.05.2010, 12:50 Uhr

[ - Direktlink - ]
Thema: C oder C++?
Brett: Programmierung

@Thore

Das stimmt im Prinzip, aber per Low Level Implementation kannst du sehr viel mehr Bugs erwarten die du dann auch fixen musst. Viele Bugs wirst du nie fixen, weil du sie nicht reportet bekommst mangels User Base und auf deinem System nicht passieren. Und deine Fixes gelten nur für dein Projekt, andere profitieren nicht davon, und umgekehrt.
Bugprevention ist wirklich nur ein Schein-Argument für low-level APIs. Du musst schon sehr viel besser sein als die Entwickler der High-Level API um davon nicht zu profitieren.
Aber die solle ja nicht von Noobs implementiert werden.

--
--
Author of
HD-Rec, Sweeper, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, AudioConverter, ScreenCam, PerlinFX, MapEdit, AB3 Includes und viele mehr...
Homepage: http://www.hd-rec.de

 
 
Erste 5 6 7 8 9 -10- 11 12 13 14 15 >> Letzte Ergebnisse der Suche: 1229 Treffer (30 pro Seite)

Suchbegriffe
Schlüsselwörter      Benutzername
Suchoptionen
Nur in diesen Foren suchen
   nur ganze Wörter
Nur Titel anzeigen
alle Treffer anzeigen

.
Impressum | Datenschutzerklärung | Netiquette | Werbung | Kontakt
Copyright © 1998-2024 by amiga-news.de - alle Rechte vorbehalten.
.