Giter Site home page Giter Site logo

Comments (10)

alunbestor avatar alunbestor commented on August 15, 2024

Hi Saleck, could you be more specific: which game is pictured, and which other games have you noticed the same problem in?

This is likely not a general graphical bug in Boxer but a game-specific incompatibility, or indeed simply a bug in the original game(s) themselves that would manifest on original hardware. I need to know the particular games in order to diagnose the issue further.

from boxer.

Saleck avatar Saleck commented on August 15, 2024

Hey :)

The game pictured is Sword of the Samurai. I compiled the Boxer and Boxer Standalone from source. The problem only seems to appear when running the game in Boxer Standalone. Running just a regular .boxer file does not create the problem.

I've also noticed the problem (but its not as noticable) in Wizardry 6, Genghis Khan 2 and The Elder Scrolls: Arena

from boxer.

alunbestor avatar alunbestor commented on August 15, 2024

Ah ok, then this is indeed a glitch in Boxer itself. So you've built both Boxer and Standalone from the latest master, and it's only Standalone that's exhibiting the problem?

Also, which OSX and XCode version are you compiling this on? (This may make a difference as to which SDK it's compiled against.)

from boxer.

JoshuaPettus avatar JoshuaPettus commented on August 15, 2024

I have noticed this too, and is a problem on normal Boxer as well. I have 10.10, but have noticed this as early as 10.8.

Games like Tie fighter Collectors CD, Sonekeep, Silpheed, Epic Pinball, The need for speed. Sometimes setting it to skip a few frames can help, but not always. To be honest It has been getting a little better lately with the latest code changes.

from boxer.

alunbestor avatar alunbestor commented on August 15, 2024

By "normal Boxer" do you mean Boxer 1.3.2, or non-standalone builds of the 2.x branch?

This smells like a bug in the way Boxer handles "dirty" scanlines. DOSBox keeps a list of which lines in the framebuffer were drawn into by the emulated video hardware during the current frame, and Boxer checks that list to decide which regions of its OpenGL frame texture to update. (This optimisation avoids updating the whole texture for frames that only changed a small area of the framebuffer, which was a common optimisation for DOS games.) It looks like that check may be off by one in some situations.

from boxer.

JoshuaPettus avatar JoshuaPettus commented on August 15, 2024

Oops good point, It's only a problem when compiling off the 2.x branch. 1.3.2 is fine.

from boxer.

alunbestor avatar alunbestor commented on August 15, 2024

Ah well that narrows it down, that probably means it's a regression from when I rewrote the renderer's frame-texture-updating code.

from boxer.

Saleck avatar Saleck commented on August 15, 2024

I'm running 10.10 and I compiled the code in XCode 6.1, the latest you can get.

from boxer.

alunbestor avatar alunbestor commented on August 15, 2024

Commit 48c13ac disables the dirty check, forcing a full texture refresh for each frame. This appears to have eliminated the stuck-pixels problem, but please let me know if the problem persists.

from boxer.

JoshuaPettus avatar JoshuaPettus commented on August 15, 2024

Thanks Alun, that works great!

from boxer.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.