utility: Fixed Bank Creator, for use with 32kB PRG banks

Discuss technical or other issues relating to programming the Nintendo Entertainment System, Famicom, or compatible systems.

Moderator: Moderators

User avatar
rainwarrior
Posts: 7822
Joined: Sun Jan 22, 2012 12:03 pm
Location: Canada
Contact:

Re: utility: Fixed Bank Creator, for use with 32kB PRG banks

Post by rainwarrior » Fri Nov 16, 2018 2:33 pm

I've never run into a problem like that with Python on Windows, but sure I can believe that Dropbox did something screwy with it at some point (though I've used both for a long while now). In general I've found it fairly easy to install, the 10 times or so I've done it... and the installer itself has gotten a lot better over the years.

...but here's some problems that I have had with it:

1. The Python 2 vs 3 schism. That manifest as a whole host of problems but this actually seems to be disappearing finally. The Python 2 holdouts seem to be very few by now. (For a long while the Windows version had a much harder time switching between the two, if you had both installed, but that was eventually mostly "solved", too.)

2. Basic Python was generally fine, but installing extra libraries (in particular PIL / Pillow for images) has never been "easy". It eventually became a bit better with the command line PIP utility being ported to Windows, but it remains something that I would never ask a "typical" user to do. I'm happy to tell someone "just install Python" to run a script, but if there's an extra library you have to install, I just wouldn't recommend it at all unless the person was a habitual Python user already.

To elaborate a little on that: at best the user has to figure out where and how to run a command line utility to install a package. With a common library like Pillow, it'll probably go smoothly as long as you can get that far. With less common libraries it's still a crapshoot. A lot of stuff is only really maintained for Linux and the installer will fail cryptically with internal jargon or sometimes fail and also make a mess on Windows. Depends on the package, who maintains it, etc. but there's a lot of Python library stuff out there that just doesn't work, or doesn't work reliably on Windows.

(There's also plenty of libraries accessible to PIP that will fail to install properly on Linux too, though. This has always been a mess, in my experience. PIP is a jungle.)

4. As far as solutions for compiling Python to a Windows EXE, in my experience these have always been terrible, and they still were the last time I looked at it. I've successfully gotten programs to run this way, but I've never produced something I would dare distribute to others with these tools. YMMV.

5. The Python documentation is horribly organized. I always have a hard time looking things up in it. Additionally, the online official docs are more or less unsearchable because it mixes in all sorts of cryptic results from documents for internals experts for almost any common keyword.


I find it an extremely useful tool though, and as long as libraries are out of the picture I think it's a pretty reasonable install for a lot of users.

(Of course for the case at hand... I wouldn't mix Python and an EXE, I'd just update the EXE, or rewrite the whole thing in Python. :P)

User avatar
Bregalad
Posts: 7889
Joined: Fri Nov 12, 2004 2:49 pm
Location: Chexbres, VD, Switzerland

Re: utility: Fixed Bank Creator, for use with 32kB PRG banks

Post by Bregalad » Sat Nov 17, 2018 2:27 am

koitsu wrote: *IX is not Windows, and Windows is not *IX.
You mean, *I*X (*); which is absurd since UNIX is completely obsolete and nobody uses this anymore so you might just as well say Linux.

(*) Even this is wrong if you are case sensitive, in which case it should be * but nobody would understand what you're taking about.
Last edited by Bregalad on Mon Nov 19, 2018 12:45 am, edited 1 time in total.

User avatar
koitsu
Posts: 4218
Joined: Sun Sep 19, 2004 9:28 pm
Location: A world gone mad

Re: utility: Fixed Bank Creator, for use with 32kB PRG banks

Post by koitsu » Sat Nov 17, 2018 3:57 am

Just because you believe everything uses Linux and nobody uses UNIX any more doesn't make it true. I said *IX and I meant *IX.

tepples
Posts: 22014
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: utility: Fixed Bank Creator, for use with 32kB PRG banks

Post by tepples » Sat Nov 17, 2018 6:26 am

Solaris is UNIX certified, as is macOS. Another pattern I've seen is "*n?x".

lidnariq
Posts: 9494
Joined: Sun Apr 13, 2008 11:12 am
Location: Seattle

Re: utility: Fixed Bank Creator, for use with 32kB PRG banks

Post by lidnariq » Sat Nov 17, 2018 12:07 pm

BSD is as opposed to "system V", which are both *n*xes :p

User avatar
Bregalad
Posts: 7889
Joined: Fri Nov 12, 2004 2:49 pm
Location: Chexbres, VD, Switzerland

Re: utility: Fixed Bank Creator, for use with 32kB PRG banks

Post by Bregalad » Mon Nov 19, 2018 12:47 am

koitsu wrote:Just because you believe everything uses Linux and nobody uses UNIX any more doesn't make it true. I said *IX and I meant *IX.
Since you are apparently for whathever reason excluding Linux, you could as well call "UNIX" by it's whole name instead of using periphrases.

User avatar
koitsu
Posts: 4218
Joined: Sun Sep 19, 2004 9:28 pm
Location: A world gone mad

Re: utility: Fixed Bank Creator, for use with 32kB PRG banks

Post by koitsu » Mon Nov 19, 2018 1:21 am

Or I could say *IX which encapsulates UNIX, UNIX-like, and Linux all in one string. Here's some history of the term, where the upvoted answer is correct/accurate. But real/true UNIX systems are still in use today. So once again: I said what I meant, and I meant what I said. Heck, in my initial reply I even cited one, right alongside Linux in the same sentence. This conversation no longer serves any value.

User avatar
Punch
Posts: 362
Joined: Sat Feb 16, 2013 11:52 am

Re: utility: Fixed Bank Creator, for use with 32kB PRG banks

Post by Punch » Sun Jan 05, 2020 7:54 am

Just passing by to say thanks, I've finally got time to play with my AN1ROM game and your .exe saved my skin, because having to deal with the 32kb bankswitch is already annoying as it is... if I had to write my own python script or similar for this I'd probably have abandoned the idea of using that mapper.

Thanks again :beer:
This is a block of text that can be added to posts you make. There is a 255 character limit.

Post Reply