Homebrew [NDS] Yet Another nds-bootstrap Forwarder: more than 40 forwarders are now possible

SpaceLion

Member
Newcomer
Joined
Feb 28, 2022
Messages
8
Trophies
0
Age
33
Location
United States
XP
61
Country
United States
I'm on Windows 10, also suddenly having issues with the forwarder (GUI and the latest CLI nightly posted here). I've been using the latest GUI just fine until now. The GUI says:

Checking API if a custom banner or sound is provided...
No banner provided. Checking GameTDB for standard boxart...
Resizing banner...
Creating banner...
ERROR: Could not load image file: can't fopen.

If I try the same thing while providing my own custom boxart (properly sized), I get the same error message, but without the second line (of course).


CLI says:


Traceback (most recent call last):
File "C:\hostedtoolcache\windows\Python\3.10.4\x64\lib\site-packages\PIL\Image.py", line 3072, in open
AttributeError: 'NoneType' object has no attribute 'seek'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "C:\hostedtoolcache\windows\Python\3.10.4\x64\Lib\site-packages\cx_Freeze\initscripts\__startup__.py", line 113, in run
File "C:\hostedtoolcache\windows\Python\3.10.4\x64\Lib\site-packages\cx_Freeze\initscripts\Console.py", line 15, in run
File "generator.py", line 383, in <module>
File "generator.py", line 344, in start
File "generator.py", line 238, in resizebanner
File "C:\hostedtoolcache\windows\Python\3.10.4\x64\lib\site-packages\PIL\Image.py", line 3074, in open
AttributeError: 'NoneType' object has no attribute 'read'
 

lifehackerhansol

i write working(?) code
OP
Member
Joined
Oct 2, 2021
Messages
353
Trophies
0
XP
725
Country
Canada
I'm on Windows 10, also suddenly having issues with the forwarder (GUI and the latest CLI nightly posted here). I've been using the latest GUI just fine until now. The GUI says:

Checking API if a custom banner or sound is provided...
No banner provided. Checking GameTDB for standard boxart...
Resizing banner...
Creating banner...
ERROR: Could not load image file: can't fopen.

If I try the same thing while providing my own custom boxart (properly sized), I get the same error message, but without the second line (of course).


CLI says:


Traceback (most recent call last):
File "C:\hostedtoolcache\windows\Python\3.10.4\x64\lib\site-packages\PIL\Image.py", line 3072, in open
AttributeError: 'NoneType' object has no attribute 'seek'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "C:\hostedtoolcache\windows\Python\3.10.4\x64\Lib\site-packages\cx_Freeze\initscripts\__startup__.py", line 113, in run
File "C:\hostedtoolcache\windows\Python\3.10.4\x64\Lib\site-packages\cx_Freeze\initscripts\Console.py", line 15, in run
File "generator.py", line 383, in <module>
File "generator.py", line 344, in start
File "generator.py", line 238, in resizebanner
File "C:\hostedtoolcache\windows\Python\3.10.4\x64\lib\site-packages\PIL\Image.py", line 3074, in open
AttributeError: 'NoneType' object has no attribute 'read'
I messed up that last nightly. I'll fix it again.

Man I really don't know what happened with this one, this has to be the worst release lol

Also, if possible, can you post the full CLI log? like from start of the command until finish (or error)

EDIT: nightly should be up
 
Last edited by lifehackerhansol,

Yrouel

Well-Known Member
Newcomer
Joined
Apr 16, 2019
Messages
97
Trophies
0
Age
36
XP
290
Country
Italy
@lifehackerhansol I just got the "Failed to open file for CWAV conversion" error and I tried the latest nightly and... SPACES STRIKE AGAIN!

Code:
Creating banner...
Using arguments: bannertool makebanner -i "data/banner.png" -a /Users/max/Downloads/Dragon Quest IV/YIVP/YIVP.wav -o "data/banner.bin"


ERROR: Failed to open file for CWAV conversion: No such file or directory


(when I moved the files the command is bannertool makebanner -i "data/banner.png" -a /Users/max/Desktop/YIVP/YIVP.wav -o "data/banner.bin" so I'm pretty sure the problem are those pesky spaces)

EDIT: It was indeed because of spaces in the path of the sound file, made a PR



Code:
[email protected] generator % ./generator -p /roms/nds/2642\ -\ Dragon\ Quest\ -\ The\ Chapters\ of\ the\ Chosen\ \(Europe\)\ \(En,Fr,De,Es,It\).nds -b /Users/max/Downloads/Dragon\ Quest\ IV/YIVP/YIVP.png -s /Users/max/Downloads/Dragon\ Quest\ IV/YIVP/YIVP.wav /Users/max/Downloads/2642\ -\ Dragon\ Quest\ -\ The\ Chapters\ of\ the\ Chosen\ \(Europe\)\ \(En,Fr,De,Es,It\).nds
Getting gamecode...
Extracting and resizing icon...
generator.py:63: DeprecationWarning: LINEAR is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.BILINEAR instead.
Getting ROM titles...
Creating SMDH...
Resizing banner...
generator.py:243: DeprecationWarning: ANTIALIAS is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.LANCZOS instead.
Creating banner...


ERROR: Failed to open file for CWAV conversion: No such file or directory


[email protected] generator % ./generator -p /roms/nds/2642\ -\ Dragon\ Quest\ -\ The\ Chapters\ of\ the\ Chosen\ \(Europe\)\ \(En,Fr,De,Es,It\).nds -b /Users/max/Desktop/YIVP/YIVP.png -s /Users/max/Desktop/YIVP/YIVP.wav /Users/max/Downloads/2642\ -\ Dragon\ Quest\ -\ The\ Chapters\ of\ the\ Chosen\ \(Europe\)\ \(En,Fr,De,Es,It\).nds
Getting gamecode...
Extracting and resizing icon...
generator.py:63: DeprecationWarning: LINEAR is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.BILINEAR instead.
Getting ROM titles...
Creating SMDH...
Resizing banner...
generator.py:243: DeprecationWarning: ANTIALIAS is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.LANCZOS instead.
Creating banner...
Creating romfs...
Generating UniqueID...
Running makerom...
CIA generated.
 
Last edited by Yrouel,

SpaceLion

Member
Newcomer
Joined
Feb 28, 2022
Messages
8
Trophies
0
Age
33
Location
United States
XP
61
Country
United States
I messed up that last nightly. I'll fix it again.

Man I really don't know what happened with this one, this has to be the worst release lol

Also, if possible, can you post the full CLI log? like from start of the command until finish (or error)

EDIT: nightly should be up
The latest nightly (CLI) works! When trying to generate a forwarder with a custom sound, though, I still get the same error @Yrouel reported ("Failed to open file for CWAV conversion: No such file or directory"). If I remove the spaces from the sound's path, the CIA generates fine--although when installed, the sound doesn't play properly at all (could be some mistake on my end, although it's a 16 bit .wav file that's only 1.3s long, so I have no idea what the problem could be).
 

Yrouel

Well-Known Member
Newcomer
Joined
Apr 16, 2019
Messages
97
Trophies
0
Age
36
XP
290
Country
Italy
although when installed, the sound doesn't play properly at all (could be some mistake on my end though).

I'm guessing you are hearing a chirping sound. That happens when the file is slightly longer than 3 seconds or "marginal" in some other way (if you make it significantly longer the whole thing won't render).

The sound MUST be at most 3 seconds or less (it's not forgiving if you go above EXACTLY 3 seconds), stereo, 16 bit PCM wav (I use Audacity to produce such files)

And just as a reminder the image should be 256x128 png (you'd want transparency to look nice)
 

SpaceLion

Member
Newcomer
Joined
Feb 28, 2022
Messages
8
Trophies
0
Age
33
Location
United States
XP
61
Country
United States
I'm guessing you are hearing a chirping sound. That happens when the file is slightly longer than 3 seconds or "marginal" in some other way (if you make it significantly longer the whole thing won't render).

The sound MUST be at most 3 seconds or less (it's not forgiving you have to be exact), stereo, 16 bit PCM wav (I use Audacity to produce such files)

And just as a reminder the image should be 256x128 png (you'd want transparency to look nice)
Ah, it wasn't a stereo track! That was the problem, it looks and sounds perfect on console now. Thanks. I'm actually having trouble getting the first argument path right (the forwarder tells me it's pointing at nothing when I run it), but that's a me-problem lol.
 
  • Like
Reactions: Yrouel

Yrouel

Well-Known Member
Newcomer
Joined
Apr 16, 2019
Messages
97
Trophies
0
Age
36
XP
290
Country
Italy
Ah, it wasn't a stereo track! That was the problem, it looks and sounds perfect on console now. Thanks. I'm actually having trouble getting the first argument path right (the forwarder tells me it's pointing at nothing when I run it), but that's a me-problem lol.

I'm happy you fixed it :)

Regarding the custom rom path, basically if you have /roms/nds/game.nds in the microsd you use -p "/roms/nds/game.nds" in other words you use the POSIX notation (/ instead of \) and no need for drive letter.

I made a suggestion to @lifehackerhansol to further streamline this by using a default path (/roms/nds) and doing the -p stuff "automagically" so the command in its simplest form would become just generator game.nds
 
  • Like
Reactions: SpaceLion

lifehackerhansol

i write working(?) code
OP
Member
Joined
Oct 2, 2021
Messages
353
Trophies
0
XP
725
Country
Canada
@lifehackerhansol I just got the "Failed to open file for CWAV conversion" error and I tried the latest nightly and... SPACES STRIKE AGAIN!

Code:
Creating banner...
Using arguments: bannertool makebanner -i "data/banner.png" -a /Users/max/Downloads/Dragon Quest IV/YIVP/YIVP.wav -o "data/banner.bin"


ERROR: Failed to open file for CWAV conversion: No such file or directory


(when I moved the files the command is bannertool makebanner -i "data/banner.png" -a /Users/max/Desktop/YIVP/YIVP.wav -o "data/banner.bin" so I'm pretty sure the problem are those pesky spaces)

EDIT: It was indeed because of spaces in the path of the sound file, made a PR



Code:
[email protected] generator % ./generator -p /roms/nds/2642\ -\ Dragon\ Quest\ -\ The\ Chapters\ of\ the\ Chosen\ \(Europe\)\ \(En,Fr,De,Es,It\).nds -b /Users/max/Downloads/Dragon\ Quest\ IV/YIVP/YIVP.png -s /Users/max/Downloads/Dragon\ Quest\ IV/YIVP/YIVP.wav /Users/max/Downloads/2642\ -\ Dragon\ Quest\ -\ The\ Chapters\ of\ the\ Chosen\ \(Europe\)\ \(En,Fr,De,Es,It\).nds
Getting gamecode...
Extracting and resizing icon...
generator.py:63: DeprecationWarning: LINEAR is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.BILINEAR instead.
Getting ROM titles...
Creating SMDH...
Resizing banner...
generator.py:243: DeprecationWarning: ANTIALIAS is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.LANCZOS instead.
Creating banner...


ERROR: Failed to open file for CWAV conversion: No such file or directory


[email protected] generator % ./generator -p /roms/nds/2642\ -\ Dragon\ Quest\ -\ The\ Chapters\ of\ the\ Chosen\ \(Europe\)\ \(En,Fr,De,Es,It\).nds -b /Users/max/Desktop/YIVP/YIVP.png -s /Users/max/Desktop/YIVP/YIVP.wav /Users/max/Downloads/2642\ -\ Dragon\ Quest\ -\ The\ Chapters\ of\ the\ Chosen\ \(Europe\)\ \(En,Fr,De,Es,It\).nds
Getting gamecode...
Extracting and resizing icon...
generator.py:63: DeprecationWarning: LINEAR is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.BILINEAR instead.
Getting ROM titles...
Creating SMDH...
Resizing banner...
generator.py:243: DeprecationWarning: ANTIALIAS is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.LANCZOS instead.
Creating banner...
Creating romfs...
Generating UniqueID...
Running makerom...
CIA generated.
Finally fixed the space issue. I still don't know why other people are having issues with boxart images though, but I'm hoping the 10 log messages I added helps.
 
  • Like
Reactions: Yrouel
v1.6.1

lifehackerhansol

i write working(?) code
OP
Member
Joined
Oct 2, 2021
Messages
353
Trophies
0
XP
725
Country
Canada

YANBF v1.6.1

https://github.com/YANBForwarder/YANBF/releases/tag/v1.6.1

What's new?​

  • @spitzeqc: added custom path support to the GUI.
    • SD card dependency is now fully removed.

Bug fix​

  • @Pk11: fixed unicode paths for bannertool.
  • Fixed an exception where converting images would write nowhere

Known issues​

  • DSiWare is not supported, as GameTDB does not provide box art for them (of course they don't, they don't come in a box.)
 

Darthagnon

Member
Newcomer
Joined
Dec 21, 2020
Messages
23
Trophies
0
XP
56
Country
United Kingdom
Does this work in any way with the fullscreen hacks used in TwilightMenu? It would be nice to avoid a secondary menu, but fullscreen is a must for me where possible
 

Yrouel

Well-Known Member
Newcomer
Joined
Apr 16, 2019
Messages
97
Trophies
0
Age
36
XP
290
Country
Italy
Does this work in any way with the fullscreen hacks used in TwilightMenu? It would be nice to avoid a secondary menu, but fullscreen is a must for me where possible
Yes make sure to have Widescreen.cxi inside sdmc://_nds/ntr-forwarder/

To change the per-game settings you can hold Y after launching the forwarder shortcut, also if you use the sdcard.nds linked here you can use the "Forced" option for some games that don't have an explicit widescreen patch but still might look good. For example Chrono Trigger looks very nice in that mode
 
Last edited by Yrouel,
  • Like
Reactions: Darthagnon
General chit-chat
Help Users
  • KenniesNewName @ KenniesNewName:
    #BringBackMexicanPizza
    Gift
  • mthrnite @ mthrnite:
    we sell mediterranean food at my joint but all the cooks are mexican
    Gift
  • Dark_Phoras @ Dark_Phoras:
    Maybe I haven't eaten proper spanish food yet, but I tried paella and tortilla and never again
    Gift
  • mthrnite @ mthrnite:
    and awesome, masters of the culinary arts, they can make good stuff outta next to nothing, it's amazing
    Gift
  • Dark_Phoras @ Dark_Phoras:
    Crema catalana is a very tasty dessert, I dare say
    Gift
  • mthrnite @ mthrnite:
    well i think southern desserts are very special, quite fond of banana puddin
    Gift
  • mthrnite @ mthrnite:
    and chocolate eclair pie, and anniversary cake, shit makes you fat in minutes tho
    Gift
  • Dark_Phoras @ Dark_Phoras:
    Banana pudding looks good, it reminds me of tiramisu and bolo de bolacha
    Gift
  • mthrnite @ mthrnite:
    tiramisu rocks
    Gift
  • KenniesNewName @ KenniesNewName:
    I'm out of ranch D:
    Gift
  • Gift
  • KenniesNewName @ KenniesNewName:
    Lol $300 for the win600 get fucked anbernic
    Gift
  • Veho @ Veho:
    That's not that bad.
    Gift
  • Veho @ Veho:
    Initial reviews of the prototype model say it's a decent gaming thingy.
    Gift
  • KenniesNewName @ KenniesNewName:
    Yeah but we all know what people will say
    Gift
  • KenniesNewName @ KenniesNewName:
    Spend the extra $100 for GabesDick
    Gift
  • Veho @ Veho:
    Extra $100 and then an extra $200 for shipping and then wait a year to get it? Nah.
    Gift
  • KenniesNewName @ KenniesNewName:
    It's a decent price for over seaers I guess 250 woulda been better
    Gift
  • Veho @ Veho:
    I don't know how much shipping costs these days, $200 seemed outragoues enough as it is.
    Gift
  • Veho @ Veho:
    But it's not unlikely that it's more nowadays.
    Gift
  • Veho @ Veho:
    Anyway, fuck all that, I'll wait for a cheap Qualcomm phone and then stick Windows 11 on it.
    Gift
  • KenniesNewName @ KenniesNewName:
    My s22+ should be here Wednesday 8 gen 1 looks like a beast
    Gift
  • KenniesNewName @ KenniesNewName:
    8+gen1 is already thing lol
    Gift
  • Skelletonike @ Skelletonike:
    I'm still happy with my BS3
    Gift
  • KenniesNewName @ KenniesNewName:
    Lol google still has my nexus 4 order way back from 2013
    Gift
    KenniesNewName @ KenniesNewName: Lol google still has my nexus 4 order way back from 2013