English Amiga Board


Go Back   English Amiga Board > Coders > Coders. General

 
 
Thread Tools
Old 03 February 2014, 15:08   #41
Cowcat
Registered User
 
Join Date: Apr 2013
Location: Mallorca
Posts: 293
:@matthey
Gained 2 or 4 bytes with -opt-fconst
Just yesterday making all ppc asm code to allow vasmppc to compile it. No difference. "Sudoku Sunday"
@Phx Tight code.
Cowcat is offline  
AdSense AdSense  
Old 22 February 2014, 20:40   #42
Michael
A1260T/PPC/BV/SCSI/NET

Michael's Avatar
 
Join Date: Jan 2013
Location: Moscow / Russia
Posts: 600
(version4) Window mode problems...



Quake face is printed at top centre of screen

And two corners have artefacts going outside the window!
As a result, some memory trashing, and cannot quit.

Full screen mode seems to be working fine.
Attached Thumbnails
Click image for larger version

Name:	amiga-wb-win-quake1-v4.png
Views:	704
Size:	253.6 KB
ID:	39137  
Michael is offline  
Old 22 February 2014, 21:35   #43
Cowcat
Registered User
 
Join Date: Apr 2013
Location: Mallorca
Posts: 293
Yes, I know it

Windowmode on all old glquake, blitz, etc, 68k or WOS do that. The new update (5) should correct the bug. And more. New beta build for WOS in a moment, and you can tell me.

Don't know about WOS problems on closing program: Only 68k build on slow 040/25 has some of that. Please test.

Last edited by Cowcat; 11 June 2016 at 15:41.
Cowcat is offline  
Old 23 February 2014, 10:00   #44
Michael
A1260T/PPC/BV/SCSI/NET

Michael's Avatar
 
Join Date: Jan 2013
Location: Moscow / Russia
Posts: 600
Works good, no corruption in window mode.
Window mode is about 5% slower then fullscreen with same command line as offered in archive.

Feature requests/Bug fixes:

Start up console text, one line is out of alignment (extra space in front GL_EXT_COMP...)
Version in console window, a good idea to have it change with version updates (not just beta 1.0 every time)

Console window transparent (as in other GL versions?) when in half screen mode
It also looks like it is drawn without 3D, since when it's open the FPS penalty is huge in higher res mode.

TIMEREFRESH is broken in all GL ports, it would be nice to see it render GFX when rotating the view (like normal 2D versions)

Comparing to the only other working WOSW3D (beta10) version, this one has some nicer effects and with same settings is up to 10% faster in 640x480 and a whooping 38% faster in 320x240! (603e/180 Mhz) DEMO1 - 29 FPS

PS: Works solid with standard pack files, ran for more then 2 hours in test loop, no problems. Will be interesting to see if Malice works well with it.

Any plans to update Quake2 W3D ? It works, but stability is poor.
Michael is offline  
Old 23 February 2014, 10:38   #45
Bamiga2002
BlizzardPPC'less

Bamiga2002's Avatar
 
Join Date: May 2004
Location: Finland
Age: 40
Posts: 3,211
Send a message via MSN to Bamiga2002
Will do some tests also and compare executables with FullWin-hack too
Bamiga2002 is offline  
Old 23 February 2014, 11:33   #46
Michael
A1260T/PPC/BV/SCSI/NET

Michael's Avatar
 
Join Date: Jan 2013
Location: Moscow / Russia
Posts: 600
I am doing some other hacking at the moment, and while at it I have discovered that the screen refresh rate set in CGXMode effects a lot of FPS test, in some cases it does not make any difference, in others it can be up to 20% different! (Mostly played around 640x480, at 60, 75, 85, 100, 120, 180 Hz) Refresh rate seems to have greater effect on OS functions (P96speed, SysSpeed GFX tests). As for 3D, 100Hz gave me the best FPS, yet 60Hz was faster then 75 or 85 or 180 but the difference is usually 1 FPS. So I hoped to find some connections but now I am completely clue less since it's not linear. And with 2D tests it is even worse, some test give better results at high Hz while others are better at min Hz with diffs of 10-20%!, and some test are not effected at all.
Michael is offline  
Old 23 February 2014, 13:02   #47
Cowcat
Registered User
 
Join Date: Apr 2013
Location: Mallorca
Posts: 293
Love to see people testing it & making suggestions: That's the way to see if "We" are going in the right direction.

Bear in mind that the code has been as far as I know, untouched for 12 years & I, having my old A1200 unplugged for years, decide to restore it & learn to program Miggy from a "0" level.

Of course, Blitz never worked for (some) Wos+Permedia users as me, so....

Some of the suggestions are things that today I don't know how to resolve (give me a couple of days ) So, if someone fellow coder wants to help, this is the thread: MattHey jumped in to help & his knowledge is now embedded in Blitz

Enough story.

P.S.:

A little secret: Did you know that one of the things that crashed old blitz, was the bloody
"little quake disc loading picture" (the one that appeared like the bug commented before)?

Last edited by Cowcat; 23 February 2014 at 13:08.
Cowcat is offline  
Old 23 February 2014, 16:39   #48
Bamiga2002
BlizzardPPC'less

Bamiga2002's Avatar
 
Join Date: May 2004
Location: Finland
Age: 40
Posts: 3,211
Send a message via MSN to Bamiga2002
Here's the results with my setup for "timedemo demo1":

Blitz WOS:
fullscreen: 29,9fps
window: 33,9fps
FullWin: 37,7fps

vbcc WOS:
fullscreen: 28,9fps
window: 33,0fps
FullWin: 35,4fps

This seems to be optimized for BVision, no?
Bamiga2002 is offline  
Old 23 February 2014, 17:39   #49
Cowcat
Registered User
 
Join Date: Apr 2013
Location: Mallorca
Posts: 293
There's nothing like an optimized versions for one or other gfx. No change has been done on the original engine. Maybe the changes to "cure" window bugs affects full screen mode for Mediator users? Rare, because it's only an independent draw function made for "disk icon". In fact, when found the buggy thing, the original code that starts screen was reenabled as it was originally (no pipelined transformations, faster), and to my eyes made more stable frame rate (strange drop and up framerates where witnessed in the same session on old builds)..........but..................

FullWin:
Thats something @Bamiga2002 addressed:
Windowmode is faster at the same resolution than full screen? Not for me (or Permedia users): Full Screen is allways faster for all Amiga games AFAIK.

Of course, seeing those results, my personal guess is that mediator+w3d drivers are not like they should be. It's not about Blitz, it's about that particular hardware configuration (so FullWin exists and is used for different games)

Apart from that, Blitz it's a work in progress: Probably a new future vbcc keeps with old gcc in terms of speed (in terms of size all binaries are smaller). Blitz is one program that is used to test the new features added for vbcc (specially for 68k). Anyway I'm using new vasm for all builds done, just to be "updated".


Just a note: For FullWin you should disable "pointer" command & prefs (the pointer is already disabled for window gaming in "new blitz").

Last edited by Cowcat; 23 February 2014 at 17:59.
Cowcat is offline  
Old 23 February 2014, 21:16   #50
Bamiga2002
BlizzardPPC'less

Bamiga2002's Avatar
 
Join Date: May 2004
Location: Finland
Age: 40
Posts: 3,211
Send a message via MSN to Bamiga2002
FullWin-patch also affects other W3D-games positively fps-wise such as Quake 2, Heretic 2 & Wipeout 2097 on Med+Voodoo. Quake is not the only exception. So far there's no one explaining why that is.
Bamiga2002 is offline  
Old 24 February 2014, 04:39   #51
Michael
A1260T/PPC/BV/SCSI/NET

Michael's Avatar
 
Join Date: Jan 2013
Location: Moscow / Russia
Posts: 600
It looks like it's an issue with the way the Med+Voodoo drivers work. In window mode they do not lock the screen an render directly while in FS they need to do something else and thus a small penalty. But this is a guess, the people behind the drivers can probably explain why ;-) Unless it's just a stupid a bug.
Michael is offline  
Old 24 February 2014, 13:32   #52
Cowcat
Registered User
 
Join Date: Apr 2013
Location: Mallorca
Posts: 293
Quote:
Window mode is about 5% slower then fullscreen
It's an OS thing: There's no real doublebuffer or tripleb. for window draw. Minigl lib (embedded in Blitz or GlQuake) has only a ClipBlit directive for that & full screen uses buffers.
Guess what happens with mediator+drivers....

Quote:
Console window transparent (as in other GL versions?) when in half screen mode
It also looks like it is drawn without 3D, since when it's open the FPS penalty is huge in higher res mode.
One of the aspects that make Blitz faster is the use of (MGL_FLATFAN) draw function whenever is possible instead of (GL_QUADS): It's a simple & faster way.

The problem of doing fancy things, like transparency (at least what I tried) is that you need complete GL_QUADS function, not a reduced faster one: Yeah, totally transparent effect if you want but with a lot of overhead, more than expected. Still slow using MGL_FLATFAN (yes it's a 3D function). Will look to that but I suspect there's always an unavoidable penalty.
Cowcat is offline  
Old 27 February 2014, 04:53   #53
matthey
Banned
 
Join Date: Jan 2010
Location: Kansas
Posts: 1,284
I have compiled 68040 and 68060 versions of BlitzQuake for testing. There are icons for full screen and window mode which now works for me thanks to Cowcat. The height and width may need to be changed to suit your display modes. I tried to choose common ones. You need at least the Quake demo files in an /id1 directory from the BlitzQuake files. You need Warp3D installed and Workbench in a mode supported by 3D for the window mode to work. BlitzQuake now uses exec.library CopyMem() so you should have patched. I recommend CopyMem which has 68060 and 68040 specific patches:

http://aminet.net/util/boot/CopyMem.lha

There are faster patched versions of Warp3D.library and Voodoo 3+ drivers here:

http://www.heywheel.com/matthey/Amiga/Warp3D.lha

You should probably test with and without this if you are having problems with bugs. We are trying to figure out what is in common with some bugs. I don't have any sound. Cowcat's 68040 version crashes on exit. If you have a problem then please tell us about your system. My info:

Amiga 3000T NTSC
CSMK3 68060@75MHz (no PPC or WOS)
Mediator 3000T/4000T with Voodoo 4
P96 drivers from http://lilliput.amiga-projects.net/Picasso96.htm
Warp3D drivers from the archive above
No Paula or AHI sound, it has come on during game play in very rare cases

Thanks for any help.
Attached Files
File Type: lha BlitzQuake060.lha (277.6 KB, 101 views)
File Type: lha BlitzQuake040.lha (296.1 KB, 82 views)
matthey is offline  
Old 27 February 2014, 18:24   #54
Cowcat
Registered User
 
Join Date: Apr 2013
Location: Mallorca
Posts: 293
Ok big builds!
One way of testing those crashes is when you use a resolution like 640x400 on full screen, just when you do a full timedemo 1 and quit the game. Low resolutions don't do that.

Bear in mind that this happens to me on a really slow cpu (040/25) & have found a way to temporary solve this. Higher cpu's should cope with that issue.

As a side note: Yes, Malice works.
Cowcat is offline  
Old 01 March 2014, 01:43   #55
matthey
Banned
 
Join Date: Jan 2010
Location: Kansas
Posts: 1,284
@Cowcat
Well, I guess no one else is having our problems. Maybe they are too busy playing the game .

Quote:
Originally Posted by Cowcat View Post
As a side note: Yes, Malice works.
I wonder if Hexen II would work also.
matthey is offline  
Old 02 March 2014, 17:24   #56
Michael
A1260T/PPC/BV/SCSI/NET

Michael's Avatar
 
Join Date: Jan 2013
Location: Moscow / Russia
Posts: 600
The beta4 - 68060 build does not crash any more, but there are lots of hits, and that's why the sound is interrupted.

Also the Full screen startup line is running Q1 in a very unusual mode

Name: "Background CLI" CLI: "glquake68060_vbcc" Hunk 0000 Offset 0000B27A
02-Mar-14 19:01:58
WARNING: ENFORCER HIT!
LONG-READ from 3F800000 PC: 44DCC524
USP: 458B27A8 SR: 0000 FLSW: 01010200 TCB: 44C2A5F8
Data: 00000001 00000001 00000080 00000000 44BDD600 00000001 00000060 01000000
Addr: 44E4C038 44DC1C54 3F800000 00000001 00000000 457F2950 44000AE8 458B27A8
Stck: 45A79998 44E4C018 44E4C024 44E4C030 44E4C0BC 40050000 9340CF39 8E970718
Stck: 40050000 9340CF39 8E970718 44DD01F2 45A79998 45A7998C 3F800000 00000001
Stck: 00000000 42B40000 00000000 44DD0918 00000080 00000000 44E355E6 44E35696
Stck: 00000080 40050000 9340CF39 8E970718 44E3585C 3F4BD70A 00000080 00000000
----> 44DCC524 - "Work:Games/Quake/glquake68060_vbcc" Hunk 0000 Offset 0000B25C
----> $44dcc524: FMUL.S (A2),FP0
----> $44dcc528: FMOVE.S $44e4c028.L,FP1
----> $44dcc530: FMUL.S $0004(A2),FP1
----> $44dcc536: FADD.X FP1,FP0
----> 44E4C018 - "Work:Games/Quake/glquake68060_vbcc" Hunk 0005 Offset 0000B978
----> $44e4c018: MOVE.W (A1),A1
----> $44e4c01a: BCHG D5,D6
----> $44e4c01c: MOVE.W D0,$00(A7,D0.W)
----> $44e4c020: ORI.B #$00,D0
----> 44E4C024 - "Work:Games/Quake/glquake68060_vbcc" Hunk 0005 Offset 0000B984
----> $44e4c024: MOVE.W D0,$00(A7,D0.W)
----> $44e4c028: CMP.W (A1),D1
----> $44e4c02a: BCHG D5,D6
----> $44e4c02c: OR.B D0,D0
----> 44E4C030 - "Work:Games/Quake/glquake68060_vbcc" Hunk 0005 Offset 0000B990
----> $44e4c030: ORI.B #$00,D0
----> $44e4c034: OR.B D0,D0
----> $44e4c036: ORI.B #$a7,D0
----> $44e4c03a: SUBX.L -(A4),-(A4)
----> 44E4C0BC - "Work:Games/Quake/glquake68060_vbcc" Hunk 0005 Offset 0000BA1C
----> $44e4c0bc: MOVE.W (A1),A1
----> $44e4c0be: BCHG D5,D6
----> $44e4c0c0: MOVE.W D0,$00(A7,D0.W)
----> $44e4c0c4: ORI.B #$00,D0
----> 44DD01F2 - "Work:Games/Quake/glquake68060_vbcc" Hunk 0000 Offset 0000EF2A
----> $44dd01f2: FMUL.S #4,FP0
----> $44dd01fa: MOVE.L $44e4c094.L,A0
----> $44dd0200: FMOVE.S FP0,$0008(A0)
----> $44dd0206: MOVE.L $44e4c080.L,A0
----> 44DD0918 - "Work:Games/Quake/glquake68060_vbcc" Hunk 0000 Offset 0000F650
----> $44dd0918: ADDQ.L #$1,D3
----> $44dd091a: ADDI.L #$00002048,$4572780c.L
----> $44dd0924: CMP.L $44e4c0e8.L,D3
----> $44dd092a: BLT.W $44dd086e
----> 44E355E6 - "Work:Games/Quake/glquake68060_vbcc" Hunk 0000 Offset 0007431E
----> $44e355e6: TST.L $44e4c100.L
----> $44e355ec: BNE.S $44e35606
----> $44e355ee: MOVEQ #$01,D0
----> $44e355f0: CMP.L $44e4c0e8.L,D0
----> 44E35696 - "Work:Games/Quake/glquake68060_vbcc" Hunk 0000 Offset 000743CE
----> $44e35696: TST.L $44e4c0fc.L
----> $44e3569c: BNE.S $44e356a4
----> $44e3569e: JSR $44e3e850.L
----> $44e356a4: FMOVE.D $45727844.L,FP0
----> 44E3585C - "Work:Games/Quake/glquake68060_vbcc" Hunk 0000 Offset 00074594
----> $44e3585c: ADDQ.W #$4,A7
----> $44e3585e: BRA.W $44e3592e
----> $44e35862: JSR $44dc6a5c.L
----> $44e35868: FMOVE.X FP0,FP2
Attached Thumbnails
Click image for larger version

Name:	q1.png
Views:	189
Size:	144.6 KB
ID:	39243  
Michael is offline  
Old 02 March 2014, 21:50   #57
matthey
Banned
 
Join Date: Jan 2010
Location: Kansas
Posts: 1,284
Quote:
Originally Posted by Michael View Post
The beta4 - 68060 build does not crash any more, but there are lots of hits, and that's why the sound is interrupted.
You say the sound is interrupted. Does that mean it starts and then stops? It is probably a different problem than mine then. My sound doesn't work on Frank Wille's or Hyperion's Quake so my problem is not the hits. In relation to the hits, I know of several problem areas that need to be fixed and it looks like you found more. It is a work in progress. These versions have plenty of bugs and are slower than some of the earlier vbcc builds but Cowcat fixed the window mode and I didn't get any crashes.

Quote:
Also the Full screen startup line is running Q1 in a very unusual mode
Is it because of the 640x480 selection or because you have no textures? I have textures with that startup line on mine. Does a different startup line bring back your textures?

Quote:
Name: "Background CLI" CLI: "glquake68060_vbcc" Hunk 0000 Offset 0000B27A
02-Mar-14 19:01:58
WARNING: ENFORCER HIT!
LONG-READ from 3F800000 PC: 44DCC524
USP: 458B27A8 SR: 0000 FLSW: 01010200 TCB: 44C2A5F8
Data: 00000001 00000001 00000080 00000000 44BDD600 00000001 00000060 01000000
Addr: 44E4C038 44DC1C54 3F800000 00000001 00000000 457F2950 44000AE8 458B27A8
Stck: 45A79998 44E4C018 44E4C024 44E4C030 44E4C0BC 40050000 9340CF39 8E970718
Stck: 40050000 9340CF39 8E970718 44DD01F2 45A79998 45A7998C 3F800000 00000001
Stck: 00000000 42B40000 00000000 44DD0918 00000080 00000000 44E355E6 44E35696
Stck: 00000080 40050000 9340CF39 8E970718 44E3585C 3F4BD70A 00000080 00000000
----> 44DCC524 - "Work:Games/Quake/glquake68060_vbcc" Hunk 0000 Offset 0000B25C
----> $44dcc524: FMUL.S (A2),FP0
----> $44dcc528: FMOVE.S $44e4c028.L,FP1
----> $44dcc530: FMUL.S $0004(A2),FP1
----> $44dcc536: FADD.X FP1,FP0
----> 44E4C018 - "Work:Games/Quake/glquake68060_vbcc" Hunk 0005 Offset 0000B978
----> $44e4c018: MOVE.W (A1),A1
----> $44e4c01a: BCHG D5,D6
----> $44e4c01c: MOVE.W D0,$00(A7,D0.W)
----> $44e4c020: ORI.B #$00,D0
----> 44E4C024 - "Work:Games/Quake/glquake68060_vbcc" Hunk 0005 Offset 0000B984
----> $44e4c024: MOVE.W D0,$00(A7,D0.W)
----> $44e4c028: CMP.W (A1),D1
----> $44e4c02a: BCHG D5,D6
----> $44e4c02c: OR.B D0,D0
----> 44E4C030 - "Work:Games/Quake/glquake68060_vbcc" Hunk 0005 Offset 0000B990
----> $44e4c030: ORI.B #$00,D0
----> $44e4c034: OR.B D0,D0
----> $44e4c036: ORI.B #$a7,D0
----> $44e4c03a: SUBX.L -(A4),-(A4)
I'm surprised this hit didn't crash. This is surely data being executed as code. The OR.B #$00,D0 is 0L, OR.B D0,D0 is useless and SUBX -(A4),-(A4) is rare. Usually when the PC gets lost you get an illegal instruction GURU.

I'll see what I can make of those hits. Thanks.
matthey is offline  
Old 02 March 2014, 22:22   #58
phx
Natteravn

phx's Avatar
 
Join Date: Nov 2009
Location: Herford / Germany
Posts: 1,004
Just FYI: the Enforcer hit happens at $44dcc524, shown in the first section. A2 is a bad pointer.

The following three sections are backtraces to possible callees, which Segtracker tried to find. This is not always correct. You can ignore that.
phx is offline  
Old 03 March 2014, 00:39   #59
matthey
Banned
 
Join Date: Jan 2010
Location: Kansas
Posts: 1,284
Quote:
Originally Posted by phx View Post
Just FYI: the Enforcer hit happens at $44dcc524, shown in the first section. A2 is a bad pointer.

The following three sections are backtraces to possible callees, which Segtracker tried to find. This is not always correct. You can ignore that.
Thanks. I'm so used to the MuForce/MuGuardianAngel output format that I missed that. I thought that code looked funny .
matthey is offline  
Old 03 March 2014, 05:11   #60
Michael
A1260T/PPC/BV/SCSI/NET

Michael's Avatar
 
Join Date: Jan 2013
Location: Moscow / Russia
Posts: 600
The hits happen probably 2 times a second. The sound is interrupted during the process, even if enforcer is off, the sound is non continuous.
As for FS, yes, a normal startup line works fine, the one in archive has some *_RGB added that does the funny rendering mode.
Michael is offline  
AdSense AdSense  
 


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

Similar Threads
Thread Thread Starter Forum Replies Last Post
BlitzQuake - Flashing White Screen? fitzsteve support.Games 20 22 October 2010 00:49
Blitzquake (GLquake) mouse look Angus support.Games 0 11 October 2008 01:46
BlitzQuake Install Coolit support.Games 0 02 September 2005 22:33

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 20:40.


Powered by vBulletin® Version 3.8.8 Beta 1
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Page generated in 0.26670 seconds with 13 queries