Giter VIP home page Giter VIP logo

bsnes-classic's People

Contributors

awjackson avatar bazz1tv avatar devinacker avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

bsnes-classic's Issues

V-Sync Issues: Input Lag vs Screen Tearing

Hi, sorry if this is a dumb question or not, but is it possible to reduce input lag without so much screen tearing? I'm talking about vsync. If I enable it, screen tearing is eliminated, but the input lag is quite noticeable, If I disable vsync the input lag isn't nearly as bad, but then screen tearing becomes a problem, especially in side scrollers. Is there any way around this dilemma?

carts with special chips can crash bsnes if memory::cartram is too small

There are a few special chip memory implementations (for SA1, SuperFX, OBC1 and SPC7110) that make assumptions about the size/presence of on-cartridge RAM, which is always present in commercial games that use the chips, but may never be allocated depending on the ROM header contents.

http://media.smwcentral.net/Alcaro/zsnes/windows.sfc
Here's an example of a ROM which (intentionally) makes the SA1 access BWRAM with a cartridge RAM size of zero, resulting in a segfault.

Seems like the cheap fix would be to just enforce a minimum (or fixed) RAM size for certain cartridge types, but that's obviously not very elegant (and would probably have a negative impact on emulation accuracy), so I'm interested in finding a more fitting solution. What do you think?

clang no longer builds libco/amd64_gcc.c

It seems that llvm made some changes w/r/t what is allowed to be done in naked functions:
http://llvm.org/viewvc/llvm-project?view=revision&revision=217199
http://llvm.org/viewvc/llvm-project?view=revision&revision=217200

As a result, people reported that newer versions of xcode/clang now emit errors when building amd64_gcc.c:

clang++ -xc -std=gnu99 -I. -Isnes -O3 -fomit-frame-pointer -DNDEBUG -march=native -DNDEBUG -Wno-switch -Wno-absolute-value -Wno-parentheses -march=native -DPROFILE_COMPATIBILITY -DDEBUGGER -c libco/libco.c -o obj/libco.o
In file included from libco/libco.c:22:
libco/amd64_gcc.c:135:17: error: parameter references not allowed in naked functions
    : [to] "r" (to), [from] "r" (from)
                ^
libco/amd64_gcc.c:66:6: note: attribute is here
void NAKED co_switch(cothread_t to) {
     ^
libco/amd64_gcc.c:61:34: note: expanded from macro 'NAKED'
    #define NAKED __attribute__((naked))
                                 ^
libco/amd64_gcc.c:67:3: error: non-ASM statement in naked function is not supported
  register cothread_t from __asm__("rdx") = co_active_handle;
  ^
libco/amd64_gcc.c:66:6: note: attribute is here
void NAKED co_switch(cothread_t to) {
     ^
libco/amd64_gcc.c:61:34: note: expanded from macro 'NAKED'
    #define NAKED __attribute__((naked))
                                 ^

I advised defining LIBCO_NO_INLINE_ASM as a temporary workaround, but I'm not familiar enough with llvm/clang (or inline asm semantics in general) to know if there's a simple enough fix that'll still let the same file be built with clang and gcc.

(cc @Optiroc, @CarterLi)

Gamepad Mapping Issue

Hi new user here. I've only used sharknnth's fork bsnes-classic-6xBRZ.073u6-x64, but since I can't submit a new issue on sharknnth's page I want to say here that I can't map controls onto my Logitech Gamepad F310. Nothing happens when I would press any button in order to try to assign.

So that leaves me being able to only play on the QWERTY keyboard.

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.