GithubHelp home page GithubHelp logo

smw's People

Contributors

cowsoftware avatar fitzroyx avatar impeeza avatar kiritodv avatar qurious-pixel avatar snesrev 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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

smw's Issues

Audio latency is a little high

Describe your bug here. And how to reproduce it.

(First of all, holy cow, this project is surreal... My brain is not used to instant load times in this game!)

Playing for a bit, I'm noticing that the audio latency is a little higher than you'd expect (~80+ ms?) playing this. Just a guess, is the buffer you're using for your audio sized too conservatively?

What is your build target?

Linux

Switch .ini is missing a line for gamepad

Describe your bug here. And how to reproduce it.

The .ini file for Nintendo Switch is missing this line in order to use joycons:

# Whether the gamepads will be enabled. The game will not use them unless they're on.
EnableGamepad1 = true

See attached .ini modified.

Thanks for making it possible!
smw.ini.zip

What is your build target?

Nintendo Switch

strange behavior when exiting a pipeline

Describe your bug here. And how to reproduce it.

Super Mario World

you can replicate this by going to the level "yoshi's island 1" and entering the level pipe, when you exit the background music will be that of a bonus stage instead of the overworld theme.

log.txt

I was able to replicate the bug on Linux and Windows.

What is your build target?

Linux

240p support

What feature do you want to get added? And how it will work?

The NTSC version of the game hides the bottom row of tiles on each map. The PAL version shows them, but loses 10fps. We've never been able to play this game at 60fps and 240p at the same time.

Nintendo 3DS Port

So Is it possible for you guys to create a N3DS port?
If not, how do I get the port working myself?

smw (U) ! smc requires restool -f

Describe your bug here. And how to reproduce it.

according to the build:
A Super Mario World rom (Make sure to rename it to smw.sfc)
which does not specify Universal (US) Europe (E) or Japan (J)

my file: SMW (U) !.smc
cdd3c8c37322978ca8669b34bc89c804 smw.sfc
its possibly a very old file, SMC file versus SFC, im looking for a SFC (U) file to test against

USA:
MD5 CDD3C8C37322978CA8669B34BC89C804
JAPAN:
MD5 4E4F8F4CFDAABFFDDE20C8053202D4F0
EUROPE v1.1:
MD5 7BB0487EACDB78D6635E89D797E5AB74
EUROPE v1.0:
MD5 4F17A1A17A098D0A5312703B55AD134B

i also have smw (E) v1.1 d1c9b36495c7126ea2bc5b5b648faea5

Extracting game resources
/usr/bin/env python3 assets/restool.py
cc smb1/smb1_02.o smb1/smb1_00.o smb1/smb1_08.o smb1/smb1_cpu_infra.o smb1/smb1_spc_player.o smb1/smb1_01.o smbll/smbll_08.o smbll/smbll_cpu_infra.o smbll/smbll_01.o smbll/smbll_02.o smbll/smbll_00.o smbll/smbll_0b.o src/smw_cpu_infra.o src/smw_02.o src/smw_04.o src/smw_07.o src/lm.o src/smw_0c.o src/common_rtl.o src/smw_0d.o src/opengl.o src/smw_03.o src/main.o src/common_cpu_infra.o src/smw_spc_player.o src/smw_00.o src/util.o src/glsl_shader.o src/smw_01.o src/config.o src/tracing.o src/smw_rtl.o src/smw_05.o src/snes/dsp.o src/snes/spc.o src/snes/ppu.o src/snes/snes_other.o src/snes/cart.o src/snes/snes.o src/snes/cpu.o src/snes/apu.o src/snes/dma.o src/snes/ppu_old.o third_party/gl_core/gl_core_3_1.o -o smw  -lSDL2 -lm
cc: error: smb1/smb1_02.o: No such file or directory
cc: error: smb1/smb1_00.o: No such file or directory
cc: error: smb1/smb1_08.o: No such file or directory
cc: error: smb1/smb1_cpu_infra.o: No such file or directory
cc: error: smb1/smb1_spc_player.o: No such file or directory
cc: error: smb1/smb1_01.o: No such file or directory
cc: error: smbll/smbll_08.o: No such file or directory
cc: error: smbll/smbll_cpu_infra.o: No such file or directory
cc: error: smbll/smbll_01.o: No such file or directory
cc: error: smbll/smbll_02.o: No such file or directory
cc: error: smbll/smbll_00.o: No such file or directory
cc: error: smbll/smbll_0b.o: No such file or directory
cc: error: src/smw_cpu_infra.o: No such file or directory
cc: error: src/smw_02.o: No such file or directory
cc: error: src/smw_04.o: No such file or directory
cc: error: src/smw_07.o: No such file or directory
cc: error: src/lm.o: No such file or directory
make: *** [Makefile:22: smw] Error 1

editing Makefile:33 add restool.py -f allows compilation
sed -i 's/restool.py/restool.py -f/g' Makefile

What is your build target?

x64 linux

Use physical keys

Describe your bug here. And how to reproduce it.

When a non-QWERTY keyboard layout is used, the keys don't work. This can be fixed by using SDL's physical keys

What is your build target?

Linux

macOS Ventura (13.5.1) make errors

Describe your bug here. And how to reproduce it.

Make errors:

cc -c -O2 -fno-strict-aliasing -Werror  -I/usr/local/include/SDL2 -D_THREAD_SAFE -DSYSTEM_VOLUME_MIXER_AVAILABLE=0 -I. -Wno-strict-prototypes smb1/smb1_00.c -o smb1/smb1_00.o
smb1/smb1_00.c:963:12: error: result of comparison of constant 7 with expression of type 'bool' is always true [-Werror,-Wtautological-constant-out-of-range-compare]
    if (v5 < 7)
        ~~ ^ ~
1 error generated.
make: *** [smb1/smb1_00.o] Error 1

What is your build target?

Mac

My feature requests

What feature do you want to get added? And how it will work?

  • Widescreen & Ultra-Widescreen support
  • SA-1 patch support
  • MSU-1 support
  • ROM Hack support
  • GBA enhancements
  • Quit with Escape key

And also, do you have any plans on reverse-engineering Super Mario All-Stars, Super Mario World 2: Yoshi's Island, and/or any other SNES game?

Audio has aliasing issues?

Describe your bug here. And how to reproduce it.

The audio sounds a tad off from what you'd hear from an emulator, whether it's mixing at 32 kHz or some higher sample rate. I could be wrong, but it sounds somewhat like aliasing issues (audio isn't being resampled to the target sample rate in a smooth way).

What is your build target?

Linux

Compilation failure.

Describe your bug here. And how to reproduce it.

Can't seem to compile the game it's spitting out errors.
image
Simply compile the game by typing make

What is your build target?

Windows

Switch building

Hello there, Thanks for all your effort.

On the Building.md on SWITCH section is stated you build switch version executing the command>

CD to switch folder by typing cd src/platfrom/switch in the terminal on the smw root folder.

but the actual and past code doesn't have the src/platfrom/switch folder.

Thanks a lot.

OpenGL backend and linear filter don´t work

Describe your bug here. And how to reproduce it.

modifying the configuration file to change the backend or activate the linear filter has no effect. it still runs with SDL and no filter.

makes it impossible to use shaders

What is your build target?

Windows

input lag

Describe your bug here. And how to reproduce it.

nuff said

What is your build target?

Windows

This is really cool.

What feature do you want to get added? And how it will work?

I'm not actually writing to ask to add something but I just wanna say this is really cool and impressive. I do have a question though. Is this fully native or is it still running off of emulation?

Audio doesn't seem to play when enabiling autosave.

Describe your bug here. And how to reproduce it.

Description:

When you enable autosave and run the game, the audio doesn't play until a full restart.

How to reproduce:

Enable autosave, play the game, exit and launch it again, audio isn't there.

What is your build target?

Windows

Optional Gamepad Background Input

What feature do you want to get added? And how it will work?

In a number of games it is possible to enable a Background Input setting so that the game can still be controlled while it is not the currently focused application.

I believe this is possible with SDL2.

This is a really useful feature for multitasking, for example with multiple monitors, so that the keyboard can be used elsewhere quickly, while the gamepad continues to control the game.

Lunar Magic Support

What feature do you want to get added? And how it will work?

I'm ecstatic about this port!

I want to know if there could be compatibility with Lunar Magic, such that we could use it as the level editor. Or at least perhaps a version of Lunar Magic that's targeted for this specific PC Port version.

I have a 16 year old Romhack that I'd love to be able to easily port over to the PC Version. However it used a lot of custom graphics and behaviors. For example one of the early levels was a water level with new enemies, a screen waving BG effect, custom sprites, custom BG and FG graphics, etc.

I'd love to be able to implement new features through scripting on the PC version and have those be instantly picked up by Lunar Magic (as if using any modern game engine).

It's been ages since I last engaged with SMW modding, so forgive me if things have changed drastically in the last 10+ years.

What do you think?

second player not working

Describe your bug here. And how to reproduce it.

There seems to be no settings for player 2 input.
There is no detection for the second player.
Could someone please add the detection of the second joypad, and add the input config to the ini file?

What is your build target?

Windows

On Arch Linux the build is broken with the latest SDL2

cc -c -O2 -fno-strict-aliasing -Werror -I/usr/include/SDL2 -D_REENTRANT -DSYSTEM_VOLUME_MIXER_AVAILABLE=0 -I. src/main.c -o src/main.o
src/main.c: In function ‘main’:
src/main.c:389:10: error: lvalue required as left operand of assignment
389 | kRom = ReadWholeFile(argv[0], &size);
| ^
make: *** [Makefile:25: src/main.o] Error 1

Errors building Switch version

Describe your bug here. And how to reproduce it.

As reported on Discord, when you try to build Switch version on latest commits including eae20c6, you get errors:

C:/msys64/home/Impeeza/smw/src/types.h:4: warning: ignoring '#pragma warning ' [-Wunknown-pragmas]
    4 | #pragma warning(disable: 4244)
      |
switch_impl.c
gl_core_3_1.c
linking smw.elf
C:/msys64/opt/devkitpro/devkitA64/bin/../lib/gcc/aarch64-none-elf/13.2.0/../../../../aarch64-none-elf/bin/ld.exe: main.o: in function `main':
main.c:(.text.startup.main+0xe6c): undefined reference to `SmasSpcPlayer_Create'
C:/msys64/opt/devkitpro/devkitA64/bin/../lib/gcc/aarch64-none-elf/13.2.0/../../../../aarch64-none-elf/bin/ld.exe: common_cpu_infra.o: in function `SnesInit':
common_cpu_infra.c:(.text.SnesInit+0x274): undefined reference to `kSmbllGameInfo'
C:/msys64/opt/devkitpro/devkitA64/bin/../lib/gcc/aarch64-none-elf/13.2.0/../../../../aarch64-none-elf/bin/ld.exe: common_cpu_infra.c:(.text.SnesInit+0x278): undefined reference to `kSmbllGameInfo'
C:/msys64/opt/devkitpro/devkitA64/bin/../lib/gcc/aarch64-none-elf/13.2.0/../../../../aarch64-none-elf/bin/ld.exe: common_cpu_infra.c:(.text.SnesInit+0x2ec): undefined reference to `kSmb1GameInfo'
C:/msys64/opt/devkitpro/devkitA64/bin/../lib/gcc/aarch64-none-elf/13.2.0/../../../../aarch64-none-elf/bin/ld.exe: common_cpu_infra.c:(.text.SnesInit+0x2f0): undefined reference to `kSmb1GameInfo'
collect2.exe: error: ld returned 1 exit status
make[1]: *** [/opt/devkitpro/libnx/switch_rules:81: /home/Impeeza/smw/src/platform/switch/smw.elf] Error 1
make: *** [Makefile:167: bin] Error 2

Impeeza@Titan MINGW64 ~/smw/src/platform/switch```


![image](https://github.com/snesrev/smw/assets/41979604/9303090c-3eb4-4c56-a830-491aa16bc44f)

With the help of @GodReborn a new Makefile was created some little tweaks was made:

![image](https://github.com/snesrev/smw/assets/41979604/ef904499-c025-4502-bf65-d39674d7fd50)


Creating a PR including these changes.

### What is your build target?

Nintendo Switch

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.