Ballmerpeak devblog

Software development, related stuff and others

Debugging HyperZ and fixing a radeon drm linux kernel module

June 19, 2019 — Richárd Thier

It was only a few days ago I have finished debugging a really heavy bug making as big of a mesa performance hit in the userland radeon driver that it became a news article on Phoronix. Back then while still on the heavy journey for getting my performance back I saw HyperZ was also not enabled for me, but if I enable it I gain 10-15% more performance - and an unplayable 3D screen.

On the original blog post I have also written about how to troubleshoot a performance issue generally, but what to do if you know about a performance increasing functionality - just you see it destroys the 3D picture?

Read on if you are interested in linux graphics internals once again ;-)

Read more...

Tags: drm, hyperz, r300, radeon, linux, kernel, mesa, arch, 32bit, linux, debug, glitches, fix, contribute, open-source, graphics, stack, analysis, 3D, optimization, tutorial, system, internals, hackerman, opengl, zbuffer, hiz, zmask, documentation

Debugging mesa and the linux 3D graphics stack

June 11, 2019 — Richárd Thier

Have you ever wanted to troubleshoot or even contribute to the linux graphics stack? Were you ever interested in doing a deep dive? Read on if you dare, but do not fear - I was rookie on the topic myself before I went for my hunt on a 50-1000% slowdown after some updates and a distro change.

I wanted to document the process of delving deep into open source drivers. I just wanted to put things together as it might be valuable for others wanting to do similar things - I was and still is a rookie for these things after all.

The power of open source: We can fix a more than decade old hardware getting a slowdown as easily as a new one! Fuck you planned obsolesence haha!

Read more...

Tags: mesa, arch, 32bit, linux, debug, slowdown, contribute, open-source, graphics, stack, analysis, 3D, optimization, tutorial, system, internals

Make it work 2: GT 97 Racing - "playing" the game

January 19, 2019 — Richárd Thier

After creating the NO-CD version of the game it was time to play some is not it? It started out really hard and after perfecting the game while making it run without any lag... I have found that it is unbeatable on the first level even with a perfect drive!

It seems the internet is also complaining on this: People write on various places that there are versions which are unbeatable and versiouns which are beatable. Instead of finding a right versioun I thought it is best to go and 'play' a bit differently - 'play' with some debuggers and reverse engineering tools.

After all this became a much longer and harder journey than removing the no-cd code. The results are presented in this post, but if you are only interested in downloading the final binaries, scroll down to the posts end!

Also if you just want to see how I removed the CD-checks, look for the earlier post on this very same blog.

Read more...

Tags: retro, gaming, dosbox, crack, gtracing, hacking, assembly, debug, hack, linux, cdemu, make-it-work, gt, 97, racing, trainer, fix, patch, bugfix, checkpoint, time, issues, too, little, bonus, no, cd, no-cd, problem, cannot, beat, pwn, h4x00r, hackerman

Make it work: GT97 Racing

January 16, 2019 — Richárd Thier

Once I had this game (GT97 Racing) and now found it in nrg image format so I thought it is time to retroplay a bit with it, to find out sadly that the game does not work because of copy protection complains when trying with the NRG, cdemu, linux, dosbox environment.

The game uses CD checking in a way that does not work when the .nrg image is mounted with cdemu on linux and its drive directory is mounted with dosbox!

This is because the CD is a mixed-mode CD with audio tracks and allegedly the length of the tracks are used as copy protection.

Read more...

Tags: retro, gaming, dosbox, crack, gtracing, hacking, assembly, debug, hack, linux, cdemu, make-it-work, gt, 97, racing