Login
Username:

Password:

Remember me



Lost Password?

Register now!

Sections

Who's Online
57 user(s) are online (34 user(s) are browsing Forums)

Members: 0
Guests: 57

more...

Support us!

Headlines

 
  Register To Post  

« 1 (2)
Re: I like to write graphic-card.chip file of my own, how do I start?
Home away from home
Home away from home


See User information
@all

I'm stuck, get crash every time, just after CalculateBytesPerRow

first crash is at 023B81C0,
but more often it crashes at 023B81D0 i think..

r10 is NULL

Disassembly of crash site:
023B81B0: 99340012 stb r9,18(r20)
023B81B4: 4803ED41 bl 0x23F6EF4
023B81B8: 80DF009E lwz r6,158(r31)
023B81BC: 81460000 lwz r10,0(r6)
>023B81C0: 812A0000 lwz r9,0(r10)
023B81C4: 2F890000 cmpwi cr7,r9,0
023B81C8: 419E0048 beq- cr7,0x23B8210
023B81CC: A0EE001E lhz r7,30(r14)
023B81D0: A10A002E lhz r8,46(r10)
023B81D4: 7F874040 cmplw cr7,r7,r8

Also tried looking at r6, but can't match it up to any address I know.

monitor program, tried to add a screen mode,
just after CalculateBytesPerRow() API call.
the pointer is NULL pointer.
any idea what this can be?

Task 0x60DDA850 (dummy) bad access @ 0x0000002E, pc = 0x023B81D0, lr = 0x023B81B8,
functions.c:_CalculateBytesPerRow_:71
Task 0x60DDA850 (dummy) bad access @ 0x183A742C, pc = 0x7FC7EA30, lr = 0x7FC7EA30,
functions.c:_ResolvePixelClock_:108
ModeInfo: w: 320, h: 200, d: 16 pixel clock 0
arg ModeInfo 0
functions.c:_CalculateBytesPerRow_:71
Task 0x60DDA850 (dummy) bad access @ 0x183A742C, pc = 0x7FC7EA30, lr = 0x7FC7EA30,
functions.c:_ResolvePixelClock_:108
ModeInfo: w: 640, h: 480, d: 8 pixel clock 0
arg ModeInfo 0
functions.c:_CalculateBytesPerRow_:71
Task 0x60DDA850 (dummy) bad access @ 0x00000046, pc = 0x7FC7EA30, lr = 0x7FC7EA30,
functions.c:_ResolvePixelClock_:108
ModeInfo: w: 320, h: 200, d: 8 pixel clock 13140000
arg ModeInfo 13140000
Mode 320x 200x 8@75 is not supported at the given frequency
functions.c:_CalculateBytesPerRow_:71
Task 0x60DDA850 (dummy) bad access @ 0x00000046, pc = 0x7FC7EA30, lr = 0x7FC7EA30,
functions.c:_ResolvePixelClock_:108
ModeInfo: w: 320, h: 200, d: 24 pixel clock 13140000
arg ModeInfo 13140000
Mode 320x 200x24@75 is not supported at the given frequency
functions.c:_CalculateBytesPerRow_:71
Task 0x60DDA850 (dummy) bad access @ 0x00000046, pc = 0x7FC7EA30, lr = 0x7FC7EA30,
functions.c:_ResolvePixelClock_:108
ModeInfo: w: 320, h: 200, d: 16 pixel clock 13140000
arg ModeInfo 13140000
Mode 320x 200x16@75 is not supported at the given frequency
functions.c:_CalculateBytesPerRow_:71
Task 0x60DDA850 (dummy) bad access @ 0x00000046, pc = 0x7FC7EA30, lr = 0x7FC7EA30,
functions.c:_ResolvePixelClock_:108
ModeInfo: w: 320, h: 200, d: 15 pixel clock 13140000
arg ModeInfo 13140000
Mode 320x 200x15@75 is not supported at the given frequency
functions.c:_CalculateBytesPerRow_:71
Task 0x60DDA850 (dummy) bad access @ 0x00000046, pc = 0x7FC7EA30, lr = 0x7FC7EA30,
functions.c:_ResolvePixelClock_:108
ModeInfo: w: 320, h: 250, d: 8 pixel clock 12912000
arg ModeInfo 12912000
Mode 320x 250x 8@60 is not supported at the given frequency
functions.c:_CalculateBytesPerRow_:71
Task 0x60DDA850 (dummy) bad access @ 0x00000046, pc = 0x7FC7EA30, lr = 0x7FC7EA30,
functions.c:_ResolvePixelClock_:108
ModeInfo: w: 320, h: 250, d: 24 pixel clock 12912000
arg ModeInfo 12912000
Mode 320x 250x24@60 is not supported at the given frequency
functions.c:_CalculateBytesPerRow_:71
Task 0x60DDA850 (dummy) bad access @ 0x00000046, pc = 0x7FC7EA30, lr = 0x7FC7EA30,
functions.c:_ResolvePixelClock_:108
ModeInfo: w: 320, h: 250, d: 16 pixel clock 12912000
arg ModeInfo 12912000
Mode 320x 250x16@60 is not supported at the given frequency
functions.c:_CalculateBytesPerRow_:71
Task 0x60DDA850 (dummy) bad access @ 0x00000046, pc = 0x7FC7EA30, lr = 0x7FC7EA30,
functions.c:_ResolvePixelClock_:108
ModeInfo: w: 320, h: 250, d: 15 pixel clock 12912000
arg ModeInfo 12912000
Mode 320x 250x15@60 is not supported at the given frequency
functions.c:_CalculateBytesPerRow_:71
Task 0x60DDA850 (dummy) bad access @ 0x00000046, pc = 0x7FC7EA30, lr = 0x7FC7EA30,
functions.c:_ResolvePixelClock_:108
ModeInfo: w: 640, h: 200, d: 8 pixel clock 26805600
arg ModeInfo 26805600
Mode 640x 200x 8@75 is not supported at the given frequency
functions.c:_CalculateBytesPerRow_:71
Task 0x60DDA850 (dummy) bad access @ 0x00000046, pc = 0x7FC7EA30, lr = 0x7FC7EA30,
functions.c:_ResolvePixelClock_:108
ModeInfo: w: 640, h: 200, d: 24 pixel clock 26805600
arg ModeInfo 26805600
Mode 640x 200x24@75 is not supported at the given frequency
functions.c:_CalculateBytesPerRow_:71
Task 0x60DDA850 (dummy) bad access @ 0x00000046, pc = 0x7FC7EA30, lr = 0x7FC7EA30,
functions.c:_ResolvePixelClock_:108
ModeInfo: w: 640, h: 200, d: 16 pixel clock 26805600
arg ModeInfo 26805600
Mode 640x 200x16@75 is not supported at the given frequency
functions.c:_CalculateBytesPerRow_:71
Task 0x60DDA850 (dummy) bad access @ 0x00000046, pc = 0x7FC7EA30, lr = 0x7FC7EA30,
functions.c:_ResolvePixelClock_:108
ModeInfo: w: 640, h: 200, d: 15 pixel clock 26805600
arg ModeInfo 26805600
Mode 640x 200x15@75 is not supported at the given frequency
functions.c:_CalculateBytesPerRow_:71
Task 0x60DDA850 (dummy) bad access @ 0x00000046, pc = 0x7FC7EA30, lr = 0x7FC7EA30,
functions.c:_ResolvePixelClock_:108
ModeInfo: w: 640, h: 250, d: 8 pixel clock 25824000
arg ModeInfo 25824000
Mode 640x 250x 8@60 is not supported at the given frequency
functions.c:_CalculateBytesPerRow_:71
Task 0x60DDA850 (dummy) bad access @ 0x00000046, pc = 0x7FC7EA30, lr = 0x7FC7EA30,
functions.c:_ResolvePixelClock_:108
ModeInfo: w: 640, h: 250, d: 24 pixel clock 25824000
arg ModeInfo 25824000
Mode 640x 250x24@60 is not supported at the given frequency
functions.c:_CalculateBytesPerRow_:71
Task 0x60DDA850 (dummy) bad access @ 0x00000046, pc = 0x7FC7EA30, lr = 0x7FC7EA30,
functions.c:_ResolvePixelClock_:108
ModeInfo: w: 640, h: 250, d: 16 pixel clock 25824000
arg ModeInfo 25824000
Mode 640x 250x16@60 is not supported at the given frequency
functions.c:_CalculateBytesPerRow_:71
Task 0x60DDA850 (dummy) bad access @ 0x00000046, pc = 0x7FC7EA30, lr = 0x7FC7EA30,
functions.c:_ResolvePixelClock_:108
ModeInfo: w: 640, h: 250, d: 15 pixel clock 25824000
arg ModeInfo 25824000
Mode 640x 250x15@60 is not supported at the given frequency
functions.c:_CalculateBytesPerRow_:71
Task 0x60DDA850 (dummy) bad access @ 0x00000046, pc = 0x7FC7EA30, lr = 0x7FC7EA30,
functions.c:_ResolvePixelClock_:108
ModeInfo: w: 640, h: 400, d: 8 pixel clock 43655040
arg ModeInfo 43655040
Mode 640x 400x 8@60 is not supported at the given frequency
functions.c:_CalculateBytesPerRow_:71
Task 0x60DDA850 (dummy) bad access @ 0x00000046, pc = 0x7FC7EA30, lr = 0x7FC7EA30,
functions.c:_ResolvePixelClock_:108
ModeInfo: w: 640, h: 400, d: 24 pixel clock 43655040
arg ModeInfo 43655040
Mode 640x 400x24@60 is not supported at the given frequency
functions.c:_CalculateBytesPerRow_:71
Task 0x60DDA850 (dummy) bad access @ 0x00000046, pc = 0x7FC7EA30, lr = 0x7FC7EA30,
functions.c:_ResolvePixelClock_:108
ModeInfo: w: 640, h: 400, d: 16 pixel clock 43655040
arg ModeInfo 43655040
Mode 640x 400x16@60 is not supported at the given frequency
functions.c:_CalculateBytesPerRow_:71
Task 0x60DDA850 (dummy) bad access @ 0x00000046, pc = 0x7FC7EA30, lr = 0x7FC7EA30,
functions.c:_ResolvePixelClock_:108
ModeInfo: w: 640, h: 400, d: 15 pixel clock 43655040
arg ModeInfo 43655040
Mode 640x 400x15@60 is not supported at the given frequency
functions.c:_CalculateBytesPerRow_:71
Task 0x60DDA850 (dummy) bad access @ 0x00000046, pc = 0x7FC7EA30, lr = 0x7FC7EA30,
functions.c:_ResolvePixelClock_:108
ModeInfo: w: 640, h: 480, d: 8 pixel clock 25200000
arg ModeInfo 25200000
functions.c:_CalculateBytesPerRow_:71
Task 0x60DDA850 (dummy) bad access @ 0x00000046, pc = 0x7FC7EA30, lr = 0x7FC7EA30,
functions.c:_ResolvePixelClock_:108
ModeInfo: w: 640, h: 480, d: 24 pixel clock 25200000
arg ModeInfo 25200000
functions.c:_CalculateBytesPerRow_:71
Task 0x60DDA850 (dummy) bad access @ 0x00000046, pc = 0x7FC7EA30, lr = 0x7FC7EA30,
functions.c:_ResolvePixelClock_:108
ModeInfo: w: 640, h: 480, d: 16 pixel clock 25200000
arg ModeInfo 25200000

(NutsAboutAmiga)

Basilisk II for AmigaOS4
AmigaInputAnywhere
Excalibur
and other tools and apps.
Go to top
Re: I like to write graphic-card.chip file of my own, how do I start?
Not too shy to talk
Not too shy to talk


See User information
Can't see enough to make out what it could be. Do you have -gtabs enabled? Would recommend to compile all your objects with debug info. Also stack trace would give clue.

With debug info the stack track should contain your function names. So you can trace it back. Then addr2line with section and offset to find line in your source.

Also, try the new Spotless on the Depot. For once I got it to work! With a simple Hello file. I did keep my old install as it has icons and more files. Your experience might differ.

Go to top
Re: I like to write graphic-card.chip file of my own, how do I start?
Home away from home
Home away from home


See User information
@Hypex
Quote:

With debug info the stack track should contain your function names. So you can trace it back. Then addr2line with section and offset to find line in your source.


If we compile with -gstabs, then there no needs to use addr2line, because GR will show which file and which line.

Quote:

Also, try the new Spotless on the Depot.


While it may work, this one didnt' have stack-trace information for now, Alfkil in the process of dealing with.

Join us to improve dopus5!
AmigaOS4 on youtube
Go to top
Re: I like to write graphic-card.chip file of my own, how do I start?
Home away from home
Home away from home


See User information
@Hypex

It’s not possible

dummy.card is library I wrote.
dummy is renamed monitor driver, with different tool types.
I can debug dummy.card (card driver), but not dummy (monitor file).

its not really dummy.card its crashing some where else in the dummy (monitor file).

(and the intuition is hanging when, try press test video mode.)

(NutsAboutAmiga)

Basilisk II for AmigaOS4
AmigaInputAnywhere
Excalibur
and other tools and apps.
Go to top
Re: I like to write graphic-card.chip file of my own, how do I start?
Not too shy to talk
Not too shy to talk


See User information
@kas1e
Quote:
If we compile with -gstabs, then there no needs to use addr2line, because GR will show which file and which line.


I still used to use it form time to time. It's mostly useful for decoding C++ names.

Quote:
While it may work, this one didnt' have stack-trace information for now, Alfkil in the process of dealing with.


Whist I only tested a simple binary the only main issue I had was I clicked on some global gadget on the bottom left and it just exited immediately.

Go to top
Re: I like to write graphic-card.chip file of my own, how do I start?
Not too shy to talk
Not too shy to talk


See User information
@LiveForIt

Okay, I understand. You need to reach it indirectly. I also misread your log earlier and thought it was a stack trace, but I see it was a log of bad access and your function.

So, is the bug isolated to _CalculateBytesPerRow?

I'm not sure if Spotless can do it but GCC could debug a running process. If you could attach it like that it would be easier to trace it indirectly. In that case your "bad" function just needs to output some debug info on task address and you can grab it. Then it could do a Wait() before it goes further. Provided nothing else is using it SIGF_SINGLE is useful for this and should be cleared before use. Or just allocate a signal and output it as well for use.

If you have an XE you could try GDB. Alternatively, using ether a real PPC Amiga or more conveniently UAE, you can run GDB on that. GDB works on OS4 Classic so if you have a working setup you can debug on that if you get desperate.

http://os4depot.net/?function=showfil ... nt/debug/sdk-53.1-gdb.lha

Go to top

  Register To Post
« 1 (2)

 




Currently Active Users Viewing This Thread: 1 ( 0 members and 1 Anonymous Users )




Powered by XOOPS 2.0 © 2001-2024 The XOOPS Project