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

Benutzername
  

Passwort
  





Durchsuche Foren

(Erweiterte Suche)

Foren-Statistiken
» Mitglieder: 139
» Neuestes Mitglied: matu75
» Foren-Themen: 298
» Foren-Beiträge: 2.646

Komplettstatistiken

Benutzer Online
Momentan sind 38 Benutzer online
» 0 Mitglieder
» 35 Gäste
Applebot, Bing, Google

Aktive Themen
Die Zunft
Forum: Showcase
Letzter Beitrag: xp^tsa
Gestern, 20:08
» Antworten: 3
» Ansichten: 439
smal aga intro
Forum: Snippets & Libraries
Letzter Beitrag: xp^tsa
20.01.2026, 22:41
» Antworten: 0
» Ansichten: 147
problem mit datei operati...
Forum: Questions & Answers
Letzter Beitrag: hackball
18.01.2026, 11:58
» Antworten: 3
» Ansichten: 450
AmiBlitz3: Amiga 40 Editi...
Forum: News
Letzter Beitrag: xp^tsa
17.01.2026, 02:51
» Antworten: 1
» Ansichten: 950
for - next block too long
Forum: Questions & Answers
Letzter Beitrag: xp^tsa
17.01.2026, 01:18
» Antworten: 2
» Ansichten: 505
Text hintergrund transpar...
Forum: Questions & Answers
Letzter Beitrag: xp^tsa
03.01.2026, 01:44
» Antworten: 2
» Ansichten: 780
screen hintergrund
Forum: Questions & Answers
Letzter Beitrag: xp^tsa
31.12.2025, 04:32
» Antworten: 2
» Ansichten: 798
Schöne Weihnachten und gu...
Forum: Off Topic
Letzter Beitrag: xp^tsa
27.12.2025, 20:26
» Antworten: 23
» Ansichten: 76.611
RedPill - Game Constructi...
Forum: Projects
Letzter Beitrag: HelmutH
06.12.2025, 14:04
» Antworten: 46
» Ansichten: 149.056
North Engine 2
Forum: Projects
Letzter Beitrag: HelmutH
09.11.2025, 14:16
» Antworten: 14
» Ansichten: 7.051

 
  AmiBlitz3 : Includes zu .ab3 konvertiert
Geschrieben von: Blackbird - 03.02.2014, 17:10 - Forum: AB³ Development - Antworten (6)

Hallo Thilo,

Ich hatte gestern einen ganz seltsamen absturz beim beenden von Ab3 mit verwertbaren Offsets.
Angeblich ist das clipboard schuld, aber ich denke eher es liegt an was anderen. siehe weiter unten...

Kernel command line: debuglevel=1

Registers pointing to code:
r0 : native kernel module Kickstart/kernel+0x00021c88
r7 : native kernel module Kickstart/dos.library.kmod+0x00752a54
r8 : native kernel module Kickstart/dos.library.kmod+0x0002e688
r11: native kernel module Kickstart/kernel+0x009b6876
r21: native kernel module Kickstart/kernel+0x00a50000
r31: native kernel module Kickstart/kernel+0x009b6876
ip : module DEVS:clipboard.device at 0x7FBACDF8 (section 4 @ 0x1DD4)
lr : native kernel module Kickstart/kernel+0x00021c88
ctr: native kernel module Kickstart/kernel+0x0001c908

Stack trace:
(0x5fbbfef0) module DEVS:clipboard.device at 0x7FBACDF8 (section 4 @
0x1DD4)
(0x5fbbff10) native kernel module Kickstart/kernel+0x00021c88
(0x5fbbff50) native kernel module Kickstart/ramlib.kmod+0x0000150c
(0x5fbbffb0) native kernel module Kickstart/kernel+0x000232ac
(0x5fbbffc0) native kernel module Kickstart/kernel+0x0005bff4

Disassembly of crash site:
7fbacde8: 90010024 stw r0,36(r1)
7fbacdec: 83c30010 lwz r30,16(r3)
7fbacdf0: 93a10014 stw r29,20(r1)
7fbacdf4: 3ba00000 li r29,0
>7fbacdf8: a01e0020 lhz r0,32(r30)
7fbacdfc: 83fe0074 lwz r31,116(r30)
7fbace00: 2f800000 cmpwi cr7,r0,0
7fbace04: 7fe3fb78 mr r3,r31
7fbace08: 419e0030 beq- cr7,0x7FBACE38
7fbace0c: 881e000e lbz r0,14(r30)
Stack pointer (0x5fbbfef0) is inside bounds
Redzone is OK (4)

68k register dump
DATA: 612c61d0 00010000 0001ffff 00000100 00000000 0000000a 0000006c
fffffffe
ADDR: 6057b450 6057b3d0 5ba310e4 5dba630c 5bafb324 5be53f19 021b6876
5fbbffda
----> 5dba630c - "Blitz3:System/PED_Beta" Hunk 0000 Offset 0000030c
(SegList: 0x176e9801)
----> 021b6876 - "Kickstart/kernel" Hunk 0001 Offset 00156876
Page information:
Page not found


Und als ich mir das .dbgfile ansah viel mir folgendes auf:

ein verwertbarer Offset war dann allerdings die asl.include
0000D30C <asl.include.ab3@355> XINCLUDE "asl.include.bb2"

Die clipboard.include war also nur der verursacher das anstatt asl.include.ab3 die asl.include.bb2 geladen werden sollte. Und das ging in die Hose weils die schon seit einiger Zeit nicht mehr gibt. Genauso wie die Clipboard2.include.bb2 (steht im aktuellstem Pedsource aus der Distro so drin)

Ich habe auf jeden Fall nun alle (und ich meine den kompletten Ordner Includes außer Ntui!) auf .ab3 umgestellt.

Bevor ich das nun comitte stellt sich die Frage ob es nicht besser wäre die alten .bb2/ab2 im Ordner Includes nicht einen eigenen Unterordner zu spendieren damit sowas nicht mehr vorkommt. Oder besser noch gleich ganz rausnehmen weil an den Dingern dann eh keiner mehr was macht ?

Ich nehme an, du müßtest dann Ntui auch aktualisieren....

Sag mal wie du das haben möchtest...

Drucke diesen Beitrag

  Bildschirm intelligent klonen (Fehler)
Geschrieben von: hackball - 02.02.2014, 16:51 - Forum: Questions & Answers - Antworten (13)

Hallo, habe schon wieder eine Frage. Betrifft evtl. auch AB, falls u.g. nicht funktioniert.

Ich möchte einen Bildschirm öffnen, der den Modus der Workbench und/oder die Farben und Pens der Workbench übernimmt.
Das klappt aber nicht, manchmal friert WinUAE ein, ohne Debugger klappt es schon, aber die Pens von Gadtools stimmen nicht: alle Borders sind schwarz, auch auf 8bit Screens.
Die Farben werden aber korrekt gesetzt! :?
[ab3].openscreen:
;obsolete constants, use #SA_... instead!
#Width=$80000023
#Height=$80000024
#Dpth=$80000025
#Typ=$8000002D
#DisplayID=$80000032
#Overscan=$80000034
#AutoScroll=$80000039
#LikeWorkbench=$80000047
.o__o

;ColorSpec.newtype is index.w/r.w/g/b

Dim myscol.ColorSpec(10) ;255


myscol(0)\ColorIndex= 0,7,7,8 ;grey

myscol(1)\ColorIndex= 1,1,1,1 ;black
myscol(2)\ColorIndex= 2,14,14,14 ;white
myscol(3)\ColorIndex= 3,13,8,0 ;dark orange

myscol(4)\ColorIndex= 5,15,14,2 ;yellow
myscol(5)\ColorIndex= 6,2,10,2 ;green
myscol(6)\ColorIndex= 7,12,2,0 ;red RGB 0,7,7,8 ;grey
myscol(7)\ColorIndex= -1,-1,-1,-1 ;endof array



scrtags\a=#BIDTAG_DesiredWidth,640,#BIDTAG_DesiredHeight,256,#BIDTAG_Depth,3,0,0
; scrtags\a=#BIDTAG_NominalWidth,640,#BIDTAG_NominalHeight,256,#BIDTAG_Depth,3,0,0

res.l=BestModeIDA_(scrtags)
If res=0

ScreenTags1,scrtitle$,#LikeWorkbench,-1,#SA_Colors,&myscol(0),#Width,640,#Height,256,#Dpth,3,0,0

Else

ScreenTags1,scrtitle$,#SA_DisplayID,res,#SA_Colors,&myscol(0),#SA_DetailPen,2,#SA_BlockPen,1,#Width,640,#Height,256,#Dpth,3,0,0

EndIf[/ab3]

Was stimmt hier nicht?

Drucke diesen Beitrag

  Ntui : Requester
Geschrieben von: Blackbird - 02.02.2014, 13:12 - Forum: NTUI - Antworten (2)

Ist das eigentlich vorgesehen das du auch einen Requester mit Userabfrage einbaust für String und Zahlen jeweils getrennt ?
Oder sollte man sich das lieber selber zusammenbasteln ?

Drucke diesen Beitrag

  Area-Commands (graphicslib) OLD!
Geschrieben von: hackball - 01.02.2014, 14:51 - Forum: Snippets & Libraries - Antworten (26)

Hallo Leute,

hier mal eine alte Lib für BB2 von mir. Wenn ich mich recht erinnere, funktionierte die recht gut, evtl. gab es auch mal Speicherlecks (Chipmem) oder so, kann mich nicht mehr erinnern.
Wäre schön, wenn da mal jemand drüber schauen könnte.

Code:
;
; RayAreaGfxLib
; programmed for BlitzBasic 2 by Frank Brandis
; (c)opyright 1995 by Frank Brandis
;
; maximum of areasteps = 360 !!!!
;



#rayarealib=22

; graphics
#_allocraster=-492 ;d0=(d0,d1)
#_freeraster =-498 ;   (a0,d0,d1)
#_inittmpras =-468 ;   (a0,a1,d0)
#_initarea   =-282 ;   (a0,a1,d0)

#_areamove   =-252 ;d0=(a1,d0,d1)
#_areadraw   =-258 ;d0=(a1,d0,d1)
#_areaend    =-264 ;   (a1)
#_areaellipse=-186 ;d0=(a1,d0,d1,d2,d3) ;only os3 ????? i dunno ..
#_drawellipse=-180 ;   (a1,d0,d1,d2,d3)
#_setapen    =-342 ;   (a1,d0)


; exec
#_allocmem   =-198 ;d0=(d0,d1)
#_freemem    =-210 ;   (a1,d0)

!libheader {#rayarealib,0,0,0,0}

!astatement
!args {#word,#word,#word}
!libs {#graphicslib,#la6}
!subs {_areastart,0,0}
!name {"Area","x,y,col        ;start of filled polygon"}

!astatement
!args {#word,#word}
!libs {#graphicslib,#la6}
!subs {_areastep,0,0}
!name {"AreaStep","x,y    ;next coord of filled polygon"}

!astatement
!args
!libs {#graphicslib,#la6}
!subs {_areafill,0,0}
!name {"AreaFill","       ;closing the polygon"}

!astatement
!args {#word,#word,#word,#word,#word}
!libs {#graphicslib,#la6}
!subs {_areacirc,0,0}
!name {"WCirclef","x,y,xrad,yrad,col"} ;doesn`t work (areaellipse_)

!astatement
!args {#long,#word,#word,#word,#word}
!libs
!subs {_setptrn,0,0}
!name {"Pattern","*rp,areaptrn1,areaptrn2,areaptrn3,areaptrn4"}

!afunction {#long}
!args {#long,#long,#long,#word}
!libs {#graphicslib,#la0,#execlib,#la1}
!subs {_areainit,0,0}
!name {"AreaInit","(*rp,width,height,maxcoords)  TRUE if success"}

!afunction {#long}
!args
!libs {#execlib,#la6}
!subs {_areafinit,0,0}
!name {"AreaFinit","  BOOLEAN TRUE if success"}

!astatement
!args {#long,#word}
!libs
!subs {_linepat,0,0}
!name {"LinePattern","*rp,pattval    ;pattval could be %1100110011001100"}

!astatement
!args {#long,#long,#byte}
!libs
!subs {_setptrna,0,0}
!name {"PatternA","*rp,&patdef,patsize; user pattern def, patsize must be one of x^2 !!"}

!astatement
!args {#long,#byte}
!libs
!subs {_setolpen,0,0}
!name {"OutlinePen","*rp,colour  ;"}

!astatement
!args {#long,#byte}
!libs
!subs {_oline,0,0}
!name {"Outline","*rp,bool.b     ;   0 or 1,switches areaborders off or on"}
.

!libfin

._areastart
LEA  rastprt(pc),a0
MOVE.l      (a0),a1   ;rp here  :)

MOVEM.l    d0/d1,-(a7);x coord retten
MOVE.l        d2,d0   ;colour nach d0
JSR    _setapen(a6)

MOVEM.l    (a7)+,d0/d1   ;x coord rest.

JSR   _areamove(a6)   ;AreaMove_ *rp,x,y
RTS

._areastep
LEA  rastprt(pc),a0
MOVE.l      (a0),a1
JSR   _areadraw(a6)   ;AreaDraw_ *rp,x,y
RTS

._areacirc
LEA  rastprt(pc),a0
MOVE.l      (a0),a1   ;*rp in a1

MOVEM.l    d0-d3,-(a7);x coord wegen lvosetapen_ retten
MOVE.l        d4,d0   ;color nach d0
JSR     _setapen(a6)

MOVEM.l    (a7)+,d0-d3;x coord rest.

; JSR _areaellipse(a6) ;AreaEllipse_ *rp,x,y,rx,ry  ,col
JSR _drawellipse(a6)
JSR     _areaend(a6)  ;AreaEnd_ *rp
RTS
RTS

._areafill
LEA  rastprt(pc),a0
MOVE.l      (a0),a1
JSR    _areaend(a6)   ;AreaEnd_ *rp
RTS

.
._areainit
LEA      gfxbas(pc),a2
MOVE.l           a0,(a2)
LEA     execbas(pc),a2
MOVE.l           a1,(a2)

LEA     rastprt(pc),a1         ;rastport sichern
MOVE.l           d0,(a1)

MOVE.l           d3,d0         ;max. areasteps
ADD.l            #1,d0         ;ein schritt zu maxsteps hinzu
MULU             #5,d0         ;mal 5,wegen rasteralloc.
LEA      msteps(pc),a0
MOVE.l           d0,(a0)       ;als maxsteps sichern


LEA        widt(pc),a1
MOVE.w           d1,(a1)
MOVE.w           d1,d0         ;width, should be windows max width
LEA        heit(pc),a1
MOVE.l           d2,(a1)
MOVE.l           d2,d1         ;height, should be windows max height
LEA      gfxbas(pc),a1
MOVE.l         (a1),a6
JSR   _allocraster(a6)
LEA         ras(pc),a1
MOVE.l           d0,(a1)       ;ras.l=AllocRaster_(640,256)
CMP.l #0,d0:BEQ noinit

LEA        widt(pc),a0        ;
MOVE.l         (a0),d0        ;
DIVU             #8,d0        ;
LEA        heit(pc),a0        ;
MOVE.l         (a0),d1        ;
MULU             d1,d0        ; MOVE.l #$14000,d0   ;(640/8)*256)

LEA         ras(pc),a0
MOVE.l         (a0),a1
LEA      tmpras(pc),a0
JSR    _inittmpras(a6)   ;err.l=InitTmpRas_(tmpras,buf.l,(640/8)*256)


LEA     execbas(pc),a0
MOVE.l         (a0),a6
LEA      msteps(pc),a1
MOVE.l         (a1),d0
MOVE.l      #$10001,d1
JSR      _allocmem(a6)
LEA        buff(pc),a0
MOVE.l           d0,(a0)     ;buff$=String$(" ",(msteps+1)*5)

CMP.l #0,d0:BEQ  noinit

LEA      gfxbas(pc),a0
MOVE.l         (a0),a6
LEA        buff(pc),a0
MOVE.l         (a0),a1
LEA     areainf(pc),a0  ;eigene structur
MOVE.l         #360,d0
JSR      _initarea(a6)  ;err.l=InitArea_(*ai.AreaInfo,&buff$,360)

LEA     rastprt(pc),a0
MOVE.l         (a0),a1
LEA      tmpras(pc),a0
MOVE.l           a0,SizeOf.RastPort\TmpRas(a1)     ;*rp\TmpRas=tmpras
LEA     areainf(pc),a0
MOVE.l           a0,SizeOf.RastPort\AreaInfo(a1)   ;*rp\AreaInfo=*ai
MOVEQ            #1,d0
BRA okinit
noinit:
MOVEQ           #0,d0
okinit:
RTS

._areafinit

LEA        widt(pc),a0   ;
MOVE.l         (a0),d0   ;MOVE.w         #640,d0
LEA        heit(pc),a0   ;
MOVE.l         (a0),d1   ;MOVE.w         #256,d1
LEA      gfxbas(pc),a0
MOVE.l         (a0),a6
LEA         ras(pc),a1
MOVE.l         (a1),a0
JSR    _freeraster(a6)   ;FreeRaster_ *ras,640,256

LEA     execbas(pc),a0
MOVE.l         (a0),a6
LEA      msteps(pc),a0   ;
MOVE.l         (a0),d0

LEA        buff(pc),a0   ;
MOVE.l         (a0),a1
JSR       _freemem(a6)
; d0=result
RTS

.
._setptrn
MOVE.l       d0,a1
LEA   patt1(pc),a0
MOVE.w       d1,(a0)+
MOVE.w       d2,(a0)+
MOVE.w       d3,(a0)+
MOVE.w       d4,(a0)

LEA   patt1(pc),a0
MOVE.l       a0,SizeOf.RastPort\AreaPtrn(a1)
MOVE.b       #2,SizeOf.RastPort\AreaPtSz(a1) ;heavy error last version
RTS

._setptrna
MOVE.l       d0,a1    ;rastprt
MOVE.l       d1,SizeOf.RastPort\AreaPtrn(a1)
MOVE.b       d2,SizeOf.RastPort\AreaPtSz(a1)
RTS

._linepat
MOVE.l d0,a1
MOVE.w d1,SizeOf.RastPort\LinePtrn(a1)
RTS

._setolpen
MOVE.l d0,a1
MOVE.b d1,SizeOf.RastPort\AOlPen(a1)
; MOVE.w SizeOf.RastPort\Flags(a1),d0
; BSET   #3,d0
; MOVE.w d0,SizeOf.RastPort\Flags(a1)
RTS

._oline
MOVE.l  d0,a1
SUB.l   d0,d0
MOVE.w SizeOf.RastPort\Flags(a1),d0
CMP.b   #0,d1
BEQ dof
BSET    #3,d0
bck:MOVE.w d0,SizeOf.RastPort\Flags(a1)
RTS
dof:BCLR #3,d0:BRA bck

tmpras:  ;struct
Dc.l 0
Dc.l 0

areainf:Dcb.l 8,0

execbas:Dc.l 0
gfxbas: Dc.l 0
rastprt:Dc.l 0
ras:    Dc.l 0
msteps: Dc.l 0
buff:   Dc.l 0
widt:   Dc.w 0
heit:   Dc.w 0

patt1:  Dc.w 0,0,0,0
Even

Drucke diesen Beitrag

  System1.lib und help
Geschrieben von: Blackbird - 01.02.2014, 10:23 - Forum: AB³ Development - Antworten (7)

Mir ist gerade beim durchsehen vom Source Ppaintlib.obj aufgefallen das einige Befehle gar nicht im Help auftauchen...

Was bitteschon ist den :
DBRA ? BRA ist Brunch ist klar...
MOVEA ?
TNT ? (gibts zwar in der guide aber der Eintrag ist leer)

Kann man das nachlesen irgendwo und evtl. auch gleich die guide ergänzen ?

Drucke diesen Beitrag

  Optimales Bild-Dateiformat...
Geschrieben von: hackball - 26.01.2014, 22:32 - Forum: Questions & Answers - Antworten (12)

für nachladbares horizontales Scrolling suche ich. Eventuell könnte man auch supergroße Bilder auf der Grafikkarte direkt in den Speicher laden? Wäre das zu empfehlen? Oder lieber alles in Tiles aufteilen....

Drucke diesen Beitrag

  ? zu Tincture
Geschrieben von: HelmutH - 26.01.2014, 21:08 - Forum: Questions & Answers - Antworten (5)

Hi Blackbird
Hab hier in ein paar Themen gelesen das du an Tincture dran bist und da wollte ich mal Neugierig sein und fragen, wie du da vorran kommst Smile :?:

Drucke diesen Beitrag

  image.include : image_Create{}
Geschrieben von: Blackbird - 26.01.2014, 19:59 - Forum: Includes - Antworten (8)

Hallo,

Also da ich für Zeichenfunktionen in Tincture auch den Drawbuffer anlege und den transparent haben möchte frage ich mich wie ich das anstellen muß damit ich dann auch nur mein neu gezeichnetes im Mixbuffer zusammenmischen kann.

zum erzeugen eines Buffers mach ich folgendes:

[ab3]Function.l tnc_CreateBuffer{}

buf.l = image_GetFree{}
succ.l = image_Create{buf,AppContext\projectA\width,AppContext\projectA\height,0,$0}
If succ
Function Return buf
Else
Function Return False
EndIf
End Function[/ab3]

ein experimentelles image_DrawLineAA{AppContext\projectA\imgDrawbuffer,x,y,xwidth,yheight,argb,thick}
wird auch anstandslos gezeichnet

allerdings wird beim mischen in ein bestehendes Bild das schwarz ( $0) auch gezeichnet...

[ab3]Function.l tnc_MixBuffers{imageID.l,x.l,y.l,width.l,height.l,imageID2.l,mode.l,value.l}

*rp.RastPort = image_GetRPPtr{imageID2}
If value > 255 Then value = 255
image_FancyBlit{imageID,x,y,width,height,*rp,mode,value}
End Function[/ab3]

[ab3]tnc_DrawLine{10,10,100,100,$ffffff,5}
tnc_MixBuffers{AppContext\projectA\imgDrawbuffer,0,0,AppContext\projectA\width,@@
AppContext\projectA\height,AppContext\projectA\imgMixbuffer,#image_blitmode_alpha,255} ; Mische Puffer zusammen[/ab3]

was muß ich anstellen damit ich das transparent blitten kann ?

Drucke diesen Beitrag

  GL oder 3D-lib oder so...
Geschrieben von: hackball - 26.01.2014, 12:53 - Forum: Questions & Answers - Antworten (4)

Hallo,
gibt es für AmiBlitz OpenGL oder so, z.b. eine andere 3d-Bibliothek?

Drucke diesen Beitrag

  Moderatoren im Farbwechsel
Geschrieben von: Blackbird - 17.01.2014, 20:22 - Forum: News - Antworten (8)

Da der Jens hier so schön in Ferrarirot gezeigt wird, frage ich mich warum der Thilo nicht in dem smarten grasgrün Touch angezeigt wird (genauso wie ich) Big Grin

Drucke diesen Beitrag