Code Monkey home page Code Monkey logo

libgba's People

Contributors

btuduri avatar elementw avatar illegalleft avatar lunarlambda avatar maraflush avatar mic- avatar rawr51919 avatar shumon84 avatar wintermute avatar

Stargazers

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

Watchers

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

libgba's Issues

WStrict-Prototypes compilation warnings

Compiling with WStrict-Prototypes leads to all kinds of warnings due to parameterless function signatures/declarations in the include files not having "void" in the parameters.
This can be a problem because it prevents using WError with WStrict-Prototypes.

Sound channel 3 is referred to as Triangle channel, but it isn't

Triangle Channel Control Register

Sound channel 3 is a programmable wave table, but is referred to in the header as a triangle channel.
Pinobatch says:
"It's because when I wrote the header that that header was based on, I had recent experience with the Nintendo Entertainment System and I started by using the wavetable channel to replicate the capability of the NES triangle channel until I realized that the GBA internal speaker's 800 Hz high pass characteristic wouldn't let the typical applications of the NES triangle wave through"

I don't know if this is being kept as a fun historical quirk, or if nobody's actually thought about it.

Registers not marked as volatile

gba_video.h

#define	REG_BG0HOFS		*((u16 *)(REG_BASE + 0x10))	// BG 0 H Offset
#define	REG_BG0VOFS		*((u16 *)(REG_BASE + 0x12))	// BG 0 V Offset
#define	REG_BG1HOFS		*((u16 *)(REG_BASE + 0x14))	// BG 1 H Offset
#define	REG_BG1VOFS		*((u16 *)(REG_BASE + 0x16))	// BG 1 V Offset
#define	REG_BG2HOFS		*((u16 *)(REG_BASE + 0x18))	// BG 2 H Offset
#define	REG_BG2VOFS		*((u16 *)(REG_BASE + 0x1a))	// BG 2 V Offset
#define	REG_BG3HOFS		*((u16 *)(REG_BASE + 0x1c))	// BG 3 H Offset
#define	REG_BG3VOFS		*((u16 *)(REG_BASE + 0x1e))	// BG 3 V Offset

#define	REG_BG2PA	*((s16 *)(REG_BASE + 0x20))
#define	REG_BG2PB	*((s16 *)(REG_BASE + 0x22))
#define	REG_BG2PC	*((s16 *)(REG_BASE + 0x24))
#define	REG_BG2PD	*((s16 *)(REG_BASE + 0x26))
#define	REG_BG2X	*((s32 *)(REG_BASE + 0x28))
#define	REG_BG2Y	*((s32 *)(REG_BASE + 0x2c))
#define	REG_BG3PA	*((s16 *)(REG_BASE + 0x30))
#define	REG_BG3PB	*((s16 *)(REG_BASE + 0x32))
#define	REG_BG3PC	*((s16 *)(REG_BASE + 0x34))
#define	REG_BG3PD	*((s16 *)(REG_BASE + 0x36))
#define	REG_BG3X	*((s32 *)(REG_BASE + 0x38))
#define	REG_BG3Y	*((s32 *)(REG_BASE + 0x3c))

These registers should be volatile.

Game Boy File System??

So one team put the tools need for this into gba-tools, but you didn't bother to add the libraries that makes the tool actually useful? You support other libraries/modules but you don't like gbfs?

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.