Was there an NES expansion chip like SA-1

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

Moderator: Moderators

User avatar
Dwedit
Posts: 4411
Joined: Fri Nov 19, 2004 7:35 pm
Contact:

Re: Was there an NES expansion chip like SA-1

Post by Dwedit » Sat Jan 23, 2021 12:52 pm

While FM has a lot of registers, not that many actually need to be written to play a note.
Here come the fortune cookies! Here come the fortune cookies! They're wearing paper hats!

strat
Posts: 389
Joined: Mon Apr 07, 2008 6:08 pm
Location: Missouri

Re: Was there an NES expansion chip like SA-1

Post by strat » Sat Jan 23, 2021 5:43 pm

There's a rumor that Color Dreams planned a Hellraiser game with a z80 co-processor. The only "evidence" of it I feel right linking to is this blog post with magazine ads for the game. It figures a company like that would put out ads for a game barely even in development.

https://littlebitsofgaming.com/2017/10/ ... never-got/
Image

Erockbrox
Posts: 384
Joined: Sun Nov 23, 2014 12:16 pm

Re: Was there an NES expansion chip like SA-1

Post by Erockbrox » Sat Jan 23, 2021 10:12 pm

Could you make a more advanced PPU expansion chip then?

User avatar
Gilbert
Posts: 454
Joined: Sun Dec 12, 2010 10:27 pm
Location: Hong Kong
Contact:

Re: Was there an NES expansion chip like SA-1

Post by Gilbert » Sat Jan 23, 2021 10:15 pm

I've heard that in Compile's original Aleste/Power Strike for the SMS, players can choose whether FM tunes are used, as the slowdowns are so severe when FM is used. Also, the MSX2 version of Wanderer from Ys doesn't support FM for the same reason, so having FM music could still cause a hit in performance, especially in demanding games.

I think putting a faster processor in a game cart just for the sake of sound is not very justified though, but could be reasonable for a general addon such as the FDS32X.

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

Re: Was there an NES expansion chip like SA-1

Post by lidnariq » Sat Jan 23, 2021 10:49 pm

Erockbrox wrote:
Sat Jan 23, 2021 10:12 pm
Could you make a more advanced PPU expansion chip then?
Please read these following two quotes closely:
tepples wrote:
Fri Jan 22, 2021 9:44 am
There is a mapper in the works called MXM that provides 8x1-pixel attribute areas for backgrounds. It runs on INL's Gowin FPGA-based boards and looks to provide about as much of an improvement over conventional NES graphics as MSX screen 2 graphics provide over ZX Spectrum graphics. If you can find jekuthiel, ask him about it.
tokumaru wrote:
Fri Jan 22, 2021 11:58 am
Yeah, you can do all kinds of little background enhancements - or even big background enhancements, since you can implement completely new versions of the name/attribute/pattern tables, with lots of tiles, flipping and finer palette selection - but that still doesn't do squat for sprites or the palette count, so that's still not a very effective overall visual update.
The fact of the matter is, the best the PPU can do is: the same sprites it's ever had, and something that resembles a single 12-or-13-color background but is much harder to work with. You're going to be underwhelmed, up until the point where you ask if it's actually a NES game at all anymore.

Drag
Posts: 1335
Joined: Mon Sep 27, 2004 2:57 pm
Contact:

Re: Was there an NES expansion chip like SA-1

Post by Drag » Sun Jan 24, 2021 12:30 am

za909 wrote:
Sat Jan 23, 2021 10:27 am
I'd say a complex FM chip is something that takes enough time to process a routine for that it starts to become noticeable in your overall cycle-budget.
Gilbert wrote:
Sat Jan 23, 2021 10:15 pm
I've heard that in Compile's original Aleste/Power Strike for the SMS, players can choose whether FM tunes are used, as the slowdowns are so severe when FM is used. Also, the MSX2 version of Wanderer from Ys doesn't support FM for the same reason, so having FM music could still cause a hit in performance, especially in demanding games.
Wow, yeah, you're right, I didn't even think about that. It could also be why the SMS and the VRC7 use FM chips with fixed patch banks.

Out of curiosity, I ran some numbers:
Clock Frequency (MHz): NES - 1.79, YM3812 - 3.58, YMF-262 - 14.32
1 NES cycle = 2 YM3812 cycles, 8 YMF-262 cycles.
YM3812 requires 12 of its cycles after address write, 84 cycles after data write (noted in YM3812 application manual, not datasheet).
YMF-262 requires 32 of its cycles after address writes and data writes.

If you added a YM3812 (OPL2) to an NES cart, you would need to burn 6 CPU cycles after address write, and 42 cycles after data write, which is pretty slow.

If you added a YMF-262 (OPL3) to an NES cart, you would need to burn 4 CPU cycles after each address or data write, which is negligible.

YM2151 is similar to YM3812, but only needs 34 CPU cycles after data write. There's no info on how much time is needed after address write.

User avatar
Yoey
Posts: 14
Joined: Mon Jan 13, 2020 7:28 am

Re: Was there an NES expansion chip like SA-1

Post by Yoey » Mon Jan 25, 2021 3:38 pm

Perkka and I are working on an expansion port YM2608, he has hardware and emulator implementation done (Mesen)

The biggest thing I can see being particularly taxing is needing to load channel instruments on the fly, coupled with the wait times between writes. I haven't had much time to play with it lately due to school and a compo project, though

Perkka's been messing with a YMF288 variant of the board (afaik just a YM2608 without ADPCM), and has mentioned that the wait times were more or less gone. Hopefully that'll relieve some of the strain, but we don't have the revised boards yet so it'll need to wait to be tested

turboxray
Posts: 147
Joined: Thu Oct 31, 2019 12:56 am

Re: Was there an NES expansion chip like SA-1

Post by turboxray » Mon Jan 25, 2021 4:12 pm

strat wrote:
Sat Jan 23, 2021 5:43 pm
There's a rumor that Color Dreams planned a Hellraiser game with a z80 co-processor. The only "evidence" of it I feel right linking to is this blog post with magazine ads for the game. It figures a company like that would put out ads for a game barely even in development.

https://littlebitsofgaming.com/2017/10/ ... never-got/
Image
Z80 on the nes??? Gross haha



There are some nice things you can do.. that acts like a built-in co-processor to the 6502. You need a device that monitors the 6502 and know what instructions it's trying to execute (so it needs to be in sync, thus there are 'sync' commands). And you use illegal opcodes, with whatever bytes defined afterwards. The device monitoring the bus, would take over the bus and insert 'nop' for the illegal instruction. And then replace the '.db' with instructions like lda #nn. Thus, you can add additional instructions to the cpu, such as 'long addressing', 16bit adds/ops, etc. This isn't my idea. This was done with the 65x on some embedded product I was reading about years ago. They did exactly this. You could also setup a thing where you do a series of lda #nn, sta port.. and the device on the bus replaces the #nn with a value from one of its auto-incrementing address registers.

User avatar
Gilbert
Posts: 454
Joined: Sun Dec 12, 2010 10:27 pm
Location: Hong Kong
Contact:

Re: Was there an NES expansion chip like SA-1

Post by Gilbert » Mon Jan 25, 2021 5:51 pm

turboxray wrote:
Mon Jan 25, 2021 4:12 pm
Z80 on the nes??? Gross haha
Or like what the Z-80 card for the Apple ][ does - to run business software for the CP/M operating system.
I used to have an Apple ][ clone which supposed to have such a card permanently assigned to slot 4 on the mainboard, and a number of games froze because they autodetected a Mocking Board and thought they found one.

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

Re: Was there an NES expansion chip like SA-1

Post by tepples » Mon Jan 25, 2021 6:41 pm

Mockingboard? AY-3-8910 on a card for a 6502 computer? What a gimmick. But then again, if you have a Z80 and an AY-3-8910, you're halfway to an MSX computer anyway.

User avatar
Gilbert
Posts: 454
Joined: Sun Dec 12, 2010 10:27 pm
Location: Hong Kong
Contact:

Re: Was there an NES expansion chip like SA-1

Post by Gilbert » Mon Jan 25, 2021 10:33 pm

The Mocking Board was a Holy Grail to me which I eventually never got (which could impress other people if you plug more than one MB on your Apple, for games that supported that, like some minor games called Ultima :roll: ).
But my problem above was not about getting the MB. It's about one of the clones I owned BiTD had the Z80 board included in the motherboard, permanently mapped to Slot 4, so that games which autodetected a MB would freeze, even though I didn't care whether I had a MB and just wanted to play them. In particular, one of these games would ask me whether I had a MB in Slot 4 and still did that autodetect thing and froze. I'd asked the author (it was a game included with a magazine developed by one of the contributers) but there was no intention in fixing this.

Anyway, the Z80 board was only useful for people who'd like to use business software but not some random kids like me who just wanted to play games (maybe also useful to hobbyists to run some compilers, which I was not equipped to be one at that time). Also, I didn't know that until today, that I have one more thing to hatethank Micro$oft for, apart from their snail speed Applesoft Basic. If that Z80 was used in parallel with the 6502 to bring enhancements (such as, I don't know, better 3-D games? I had some (mis)conception BiTD that the Z80 is much better in doing Maths than the 6502) that could be good, but unfortunately it's not used like that.

Oziphantom
Posts: 1080
Joined: Tue Feb 07, 2017 2:03 am

Re: Was there an NES expansion chip like SA-1

Post by Oziphantom » Mon Jan 25, 2021 11:12 pm

Yeah the Mocking Board was to improve the Apple ][s audio from being above "PC Speaker". Sadly they are not even compatible with themselves due to multiple models, and are not really that useful except that one game that you can almost convince yourself you are better than the C64 on ;)

Well to be fair to Apple, they did give you a Apple BASIC, but everybody wanted the MS BASIC, but you could switch back to Apple BASIC if you wanted to. It is a little faster. BASIC is slow no matter what you do( well if you compile it, it gets a lot faster)

User avatar
Gilbert
Posts: 454
Joined: Sun Dec 12, 2010 10:27 pm
Location: Hong Kong
Contact:

Re: Was there an NES expansion chip like SA-1

Post by Gilbert » Mon Jan 25, 2021 11:41 pm

Oziphantom wrote:
Mon Jan 25, 2021 11:12 pm
Apple BASIC
Yeah, but the confusing part was that the original BASIC written by Steve Woz for the Apple ][ was just called BASIC and reasonably referred to as 'Apple BASIC' here but it didn't have decimal/floating point arithmetic, so they hired Bill GatesM$ to port MicorSoft BASIC (with floating point support) to the Apple, which ended up called Applesoft BASIC, which many could confuse with the original Apple Basic. That the original BASIC was later called 'Integer BASIC' didn't help.
Another headache was that the files for these two languages weren't even compatible, even though they shared some similarities in structure. In Integer BASIC the codes were saved as text source (Edited: hmm it seems that the codes in Integer BASIC were tokenised as well, but they're not compatible with Applesoft anyway), whereas in Applesoft BASIC the codes were immediately tokenised after you entered them, so there was no easy amateur way in converting between the two unless you type all the things again.

Anyway, back to topic. It seemed there WAS indeed a processor card (equipped with an Intel 8088) which could boot CP/M (like M$'s Z80 card), speed up calculations of the base system (mainly arithmetic in Applesoft BASIC) and act as a RAM disk. Niiiice.
Last edited by Gilbert on Wed Jan 27, 2021 1:58 am, edited 1 time in total.

Oziphantom
Posts: 1080
Joined: Tue Feb 07, 2017 2:03 am

Re: Was there an NES expansion chip like SA-1

Post by Oziphantom » Tue Jan 26, 2021 10:35 pm

I couldn't see how an 8080 which is worse than a z80 would speed up floating point math operations. It's not a 8080 but an 8088 and at 5mhz, very different. I would be interesting to know what impact it had on the Apple ][ at large. People like to muse what would have happened to the C128 it if had a an 8088 not an Z80.

User avatar
Gilbert
Posts: 454
Joined: Sun Dec 12, 2010 10:27 pm
Location: Hong Kong
Contact:

Re: Was there an NES expansion chip like SA-1

Post by Gilbert » Wed Jan 27, 2021 2:07 am

Oziphantom wrote:
Tue Jan 26, 2021 10:35 pm
8080
It was a typo though. Instead it's a 8088 as mentioned in the linked Wikipedia page. I've since fixed my original post.
The problem was, even though the Z80 card might have some potential to help with the Apple ][ when used in parallel with the 6502, this area was never explored. The only purpose of M$'s card was to run CP/M and it never helped with the Apple ][ in other department (okay, it also brought 80 column capability in later revisions, but it had nothing to do with the Z80).
The 8088 card on the other hand, beside making the Apple to run CP/M, the extra processor could also be used in parallel with the original hardware to speed up existing software (though not ALL software for obvious reasons).

Edit:
Anyway, just adding a fast CPU to a Famicom game cart could be useful. The question is whether it's worth doing it considering factors such as cost, complexity, etc. (Also, need to think of it being in the 80s/early 90s.) An additional fast processor could help speeding up the logic of say, strategy, simulation or board games.
This HAD happened for SFC games. They used extra processors just to beat blast processing for faster AI alone (and not other stuff such as graphics manipulations, etc.) in some of the strategy games or chess/board games. (Of course, extra custom chips also acted as a copy-protection feature.)

Post Reply