Hallo, Gast
Du musst dich registrieren bevor du auf unserer Seite Beiträge schreiben kannst.

Benutzername
  

Passwort
  





Durchsuche Foren

(Erweiterte Suche)

Foren-Statistiken
» Mitglieder: 54
» Neuestes Mitglied: RobertPlunc
» Foren-Themen: 206
» Foren-Beiträge: 2.176

Komplettstatistiken

Benutzer Online
Momentan sind 27 Benutzer online
» 0 Mitglieder
» 26 Gäste
Google

Aktive Themen
MUI ShowBoards (Neuerstel...
Forum: Showcase
Letzter Beitrag: hackball
28.03.2020, 05:02
» Antworten: 0
» Ansichten: 41
MUI: Crash bei MC-Lists.....
Forum: Questions & Answers
Letzter Beitrag: hackball
28.03.2020, 04:39
» Antworten: 1
» Ansichten: 1.333
AmiBlitz3 Release: FPU-fr...
Forum: News
Letzter Beitrag: hackball
17.03.2020, 19:03
» Antworten: 4
» Ansichten: 1.510
MUI TextEditor. THE Ted.
Forum: Showcase
Letzter Beitrag: hackball
14.03.2020, 03:14
» Antworten: 1
» Ansichten: 1.171
ASCII-Clip aus dem Aminet
Forum: Showcase
Letzter Beitrag: hackball
17.12.2019, 20:56
» Antworten: 2
» Ansichten: 975
Shapes vergleichen?
Forum: Showcase
Letzter Beitrag: hackball
15.12.2019, 00:08
» Antworten: 0
» Ansichten: 495
Blitz Profiler v1.0
Forum: Showcase
Letzter Beitrag: hackball
13.12.2019, 17:11
» Antworten: 3
» Ansichten: 1.305
Updated ShapesMaker
Forum: Showcase
Letzter Beitrag: hackball
19.11.2019, 20:25
» Antworten: 9
» Ansichten: 15.989
MUI: ImageButton (irgendw...
Forum: Showcase
Letzter Beitrag: hackball
10.11.2019, 20:52
» Antworten: 2
» Ansichten: 1.712
Amos2Blitz?
Forum: Showcase
Letzter Beitrag: hackball
10.11.2019, 20:35
» Antworten: 9
» Ansichten: 4.512

 
Tongue MUI ShowBoards (Neuerstellung)
Geschrieben von: hackball - 28.03.2020, 05:02 - Forum: Showcase - Keine Antworten

Ich hatte eine Weile zurück mal das ShowBoardsMUI re-implementiert, war aber damals in Stocken gekommen wegen der unverständlichen Vorgehensweise bei mehrspaltigen Listen. Dies ist nun mittlerweile (endlich) gelöst, denke ich mal. Tongue 

Rob Cranley hat mir auf Anfrage den entscheidenden Tip gegeben. Siehe...https://amiblitz.de/community/thread-193.html

Meine Neuerstellung ist noch nicht fertig; das Projekt lag ja auch 3 Jahre still... Rolleyes 

Hier jedenfalls eine BETA.

Hinweis: Drucken (Print) geht nicht. Report (letztendlich) auch nicht. Die showboards-Datei in T: gibt es aber schonmal.

Nun, warum mache ich das? Ganz einfach:
ShowBoardsMUI wird nicht mehr weiterentwickelt und ist auch schon nicht mehr kompatibel zu neueren Versionen der boards.library.
Impressionen:
   

[Bild: attachment.php?aid=29]

       



Angehängte Dateien
.lha   msb.lha (Größe: 25 KB / Downloads: 0)
Drucke diesen Beitrag

  ASCII-Clip aus dem Aminet
Geschrieben von: hackball - 15.12.2019, 20:03 - Forum: Showcase - Antworten (2)

... habe ich mal etwas angepaßt.

Sourcecode ist im Original dabei, sehr seltsam teilweise, aber funktioniert.

WindowZoom funktioniert bei mir nicht, keine Ahnung, warum.

Quelle:
http://aminet.net/package/util/wb/ASCII-Clip

Ich habe den Topaz8 rausgeschmissen, jetzt sollte es einigermaßen fontsensitiv sein, außer, man hat überbreite Borders...

   
Immer noch kein LHA Support in diesem Forum, echt übel. Angry



Angehängte Dateien
.zip   ascii-clip112.lha.zip (Größe: 17,84 KB / Downloads: 86)
Drucke diesen Beitrag

  Shapes vergleichen?
Geschrieben von: hackball - 15.12.2019, 00:08 - Forum: Showcase - Keine Antworten

Heute wollte ich endlich, wie schon lange geplant, ein paar Fonts rippen von Games.

Am Ende stellte sich raus, daß es Arbeit macht, die einzelnen Buchstaben zu separieren.

Da dachte ich mir: warum nicht ein Tool schreiben, das mir diese Arbeit abnimmt? Big Grin
   

Das lief zufriedenstellend.

Eine Funktion zur (Neu-)Verteilung auf eine BMap habe ich schon, in meinem ShapeExtractor-Tool. Nur noch zusammenbauen und wir haben den verregneten Samstag sinnvoll verschwendet. Cool

Drucke diesen Beitrag

Big Grin Blitz Profiler v1.0
Geschrieben von: hackball - 08.12.2019, 20:07 - Forum: Showcase - Antworten (3)

Ohje, ich hab endlich wieder ein Projekt fertig! Cool 

Und zwar hatte ich mal letztes Jahr in einem Forum einen PROFILER für Blitzbasic2 angedeutet. Der war im Prinzip damals schon fertig, ich mußte nur noch die Zeitmessung dazubauen. Da half mir dann noname/haujobb aus.

Wieauchimmer, ich habe es jetzt (mit den gegenwärtigen Spezifikationen) fertig.

Über die Distribution muß ich noch nachdenken, ist ja kein OpenSource aber kosten soll es natürlich auch nix.
Vielleicht ein Precompile-Include oder so.

Was tut es?

Es stellt einfache Methoden zur Verfügung, benutzte Prozeduren zu zählen und die darin verbrachte Zeit zu messen.
(man muß natürlich die für das Profiling selbst benutzte Zeit im Auge behalten).

Dafür fügt man in jede zu überwachende Prozedur einen "Entry" und am Ende einen "Exit" Aufruf ein.

Am Ende kann man (bisher) ein paar Statistiken ausgeben:

   

Schaut mal unten auf das Beispiel, das ist kurz und verständlich.

Da ist natürlich eine GUI geplant, und statistische Auswertungen und und und.

Ist vielleicht ganz sinnvoll?


Code:
;
;test of stat/debug/ profiler possibilities
;
;by frank b., germany
;
;the symbols have obscure names to not interfere
;  with others, as this is supposed to be "invisible",
;  like an include or something
;
;todo: add timer stuff to really measure somethin
;      add memdump/save instead of array()
;      add gui
;history
;      done timing support
;      seems like we are shipping this version!
;      08.DEC.2019

INCDIR  "BlitzINC:src/"
XINCLUDE"profiler_v06.bb"

;#############################################################

;CONTENS


;#bb__profilerON  =1    ;0=OFF

;#bb__PRO_maxfuncs=100

;Macro bbPRO_EntryFunc  ; {uniqueidname, display name of func}
;Macro bbPRO_ExitFunc

;Macro ProfilerStatsCLI

;including timer
;Macro bbPRO_EntryFuncT ; {uniqueidname, display name of func}
;Macro bbPRO_ExitFuncT
;

;#############################################################

.setup


#bb__profilerON = 1
.
.Test_Case


._testfunc
Statement testfunc1 {}

!bbPRO_EntryFuncT{tfunc1,"STAT: testfunc1"}

;---this is the original funcs routine--------------
NOP
Delay_5
;---------------------------------------------------

!bbPRO_ExitFuncT
End Statement

Statement testfunc2 {}

!bbPRO_EntryFuncT{tfunc2,"STAT: testfunc2"}

;---this is the original funcs routine--------------
NOP
Delay_5
;---------------------------------------------------

!bbPRO_ExitFuncT
End Statement


.main
CNIF #bb__profilerON
  bb_pro_starttimer{}
CEND

For a=1 To 5         ;runs our testfunction 5 times
  testfunc1{}
Next a

testfunc2{}          ;runs only one time

CNIF #bb__profilerON

!ProfilerStatsCLI    ;put out statistics

; For a=1To 10

;  NPrint "Time out:", bb_pro_gettime{}
;  Delay_5

; Next

CEND

NPrint "click mouse"

MouseWait

Drucke diesen Beitrag

  AmiBlitz3 Release: FPU-frei!
Geschrieben von: hackball - 04.12.2019, 21:30 - Forum: News - Antworten (4)

Offenbar hat jemand (Sven Dröge) die FPU-Abhängigkeiten rausgebaut!

Sehr fein, vielen Dank!

https://github.com/AmiBlitz/AmiBlitz3

SourceCode des 3.7 Release ist hier:

https://github.com/AmiBlitz/AmiBlitz3/re...tag/v3.7.0

Drucke diesen Beitrag

Star Argument in String Parsing, rekursiv
Geschrieben von: hackball - 10.11.2019, 20:20 - Forum: Snippets & Libraries - Keine Antworten

Ich habe mal ein simples Beispiel vorbereitet, das einzelne Teile aus einem String herauslöst. Man kann das z.B. benutzen als Argumentparser, Wortzähler usw..

Es nutzt hier nur Leerzeichen als Trenner, man kann das aber natürlich anpassen auf ganze Strings von Worttrennern, wenn man will.

Code:
;CMD parse test by f.brandis
;

DEFTYPE.w

;parsetest cmds

cmd$="dump from %s to           %d    a b cde 4 6 jj m , . ."

NPrint ">",cmd$,"<"


Function.w stripnparse{inp$}         ;recursive!

 SHARED nums

 inp$=StripLead$(inp$,32)           ;strip leading SPC

 If inp$="" Then Function Return0   ;nothing left!

 spc1.w=Instr(inp$," ")             ;another separator?

 If spc1>1                          ;any SPC at the end of this inp$?

   arg1$=Mid$(inp$,spc1)

   out$ =Left$(inp$,spc1-1)

   Gosub _strpnprsprt

   ok=stripnparse{arg1$}            ;down the rabbit hole...

 Else                               ;rest is an arg.

   out$=inp$

   Gosub _strpnprsprt

 EndIf


 Function Return nums               ;global count

_strpnprsprt:

 nums+1

 NPrint "Arg"+Str$(nums)+": >",out$,"<"

Return

End Function

NPrint "#args: ",stripnparse{cmd$}

MouseWait

End

CloseEd
   

Drucke diesen Beitrag

Wink Lemmings-like multi-obj
Geschrieben von: hackball - 19.10.2019, 01:45 - Forum: Snippets & Libraries - Keine Antworten

Hier mal ein Beispiel für eine Multi-Objekt (lemmings-like) Verwaltung(sehr simpel!).


WTF Wo ist mein Anhang?? Warum kann ich kein LHA anhängen??

   
Code:
;My Own Lemmings!!!!!

;-By F.Brandis
WBStartup:NoCli:CloseEd
BitMap1,320,256,4:BitMap0,320,256,4

dr$="blitzinc:_dat/"

LoadShapes0,dr$+"Lemms.shp"

dr$="blitzinc:_dat/iff/"

LoadBitMap0,dr$+"LemLev_b.iff",0

dr$="blitzinc:_dat/sfx/"

LoadSound0,dr$+"Lemm-Letsgo.sfx"

LoadSound1,dr$+"Lemm-Aehh!.sfx"
CopyBitMap0,1
VWait50
BLITZ
Slice0,44,4
Show0:Use Palette0

NEWTYPE.lemming
lemx.w
lemy.w
lemm.b       ;frame
dir.b
fall.b

bcount.b  ;new: bouncecount
End NEWTYPE

DEFTYPE.w

lan.b=40


Dim List l.lemming(lan)
USEPATH l()
While AddItem(l())
 Gosub randomlem
Wend

Buffer0,(lan+1)*50*5
Buffer1,(lan+1)*50*5
Sound0,15

Repeat

Show db.b:db=1-db:Use BitMap db
VWait:UnBuffer db
;o.b+1:If o>100Then Sound1,15:o=0
ResetList l()

While NextItem(l())
If Point(\lemx,\lemy+5)<4
  \lemy+2
  If \fall=3
    \lemm+1
    If \lemm<18
      \lemm=18
    Else
      If \lemm>21Then \lemm=18
    EndIf
  Else
    \fall+1
  EndIf

Else
  \fall=0

  Select \dir
    Case1
      \lemm+1:If \lemm>8Then \lemm=0
      If Point(\lemx+2,\lemy)>3           ;boing! hit wall
        If Point(\lemx+2,\lemy-1)=0
         \lemy-2
         If Point(\lemx+2,\lemy)>0
           \lemy-2
         EndIf
        Else
         \dir=2:\lemx-2
         \bcount+1
        EndIf
      Else
       \lemx+1
      EndIf
   Case2
      \lemm-1
      If \lemm<9
         \lemm=17
       Else
         If \lemm>17 Then \lemm=17
       EndIf
      If Point(\lemx-2,\lemy)>3           ;boing! hit wall
        If Point(\lemx-2,\lemy-1)=0
         \lemy-2
         If Point(\lemx+2,\lemy)>0
           \lemy-2
         EndIf
        Else
          \dir=1:\lemx+2
          \bcount+1
        EndIf       ;boing-handle
      Else
        \lemx-1
      EndIf
   Default
      Gosub randomlem
  End Select
EndIf

BBlit db,\lemm,\lemx,\lemy
If \bcount>4 Then Gosub bc_handle

If \lemy>200OR \lemx>310OR \lemx<10Then Gosub randomlem; KillItem l()
Wend
Until Joyb(0)>0
End

bc_handle:
\bcount=0
Gosub randomlem
Return

randomlem:
\lemm=0
\lemx=Rnd(300)+10
\lemy=5
rd.b=1-rd

\dir=rd+1
Return

.zip   OldLemmsTest.lha.zip (Größe: 27,81 KB / Downloads: 119)

Drucke diesen Beitrag

  MUI: ImageButton (irgendwie)
Geschrieben von: hackball - 14.09.2019, 18:11 - Forum: Showcase - Antworten (2)

Ich hab' endlich den Imagebutton für das 5-Sterne-System in OBST runderneuert; jetzt funktioniert es. Big Grin 

Wird demnächst eingebaut. Es erfordert zur Zeit noch einen dirty HW-Zugriff auf den MouseButton, aber das fixe ich noch; da gibt es Timingprobleme oder so mit der Echtzeitabfrage via MUI.

Wird dann alsbald eingebaut.

Zur Info:
Es ist ein 5-Sterne-Voting-Button, der auch dragging erlaubt; er gibt 0-5 oder Fail=-1 zurück, als Resultat.
Er ist angedacht, um bei OBST jedes Game zu bewerten (wird im PAKs Ordner des Spiels gespeichert). Da ist bisher ein doofer CycleButton.

Hier ein exe als Beispiel zum Testen, bitte vom CLI starten wegen der Ausgabe!!

   


MultiColor bekomme ich nicht vernünftig hin; die Farben sind immer falsch, auch wenn es funktioniert. Ich habe hier aber noch MUI3.8, ob das mit 3.9 besser ist oder ggfls. mit NBitmap.mui, das probiere ich noch.



Angehängte Dateien
.zip   5starsmuitest.lha.zip (Größe: 15,72 KB / Downloads: 124)
Drucke diesen Beitrag

  just some pixel art
Geschrieben von: bruZard - 10.09.2019, 20:24 - Forum: Showcase - Antworten (6)

[Bild: retro.jpg]

Drucke diesen Beitrag

  MUI TextEditor. THE Ted.
Geschrieben von: hackball - 08.09.2019, 01:24 - Forum: Showcase - Antworten (1)

Wir wollen mal sehen, wohin das führt.



Angehängte Dateien Thumbnail(s)
           
Drucke diesen Beitrag