Elektroda.com
Elektroda.com
X

KrzysioCart Micro SD - a revolution for fans of the Pegasus / Famicom console.

phanick 79290 106
This content has been translated flag-pl » flag-en View the original version here.
  • KrzysioCart Micro SD - a revolution for fans of the Pegasus / Famicom console.

    I present to you my latest creation - KrzysioCart MicroSD - a cartridge for the Pegasus console, which will be the last one you will buy - no other will be needed. The card supports 82% of all games released on the NES / Famicom / Pegasus console. The following mappers (chips that extend the capabilities of the console) are supported:
    
    Częstość     | ID      | Nazwa             | Ilość   | % całości
    występowania | mappera |                   | tytułów | 
    -------------+---------+-------------------+---------+----------
    1            | 1       | MMC1              | 804     | 24,62
    2            | 4       | MMC3              | 765     | 23,42
    3            | 0       | NROM              | 434     | 13,29
    4            | 2       | UNROM             | 336     | 10,29
    5            | 3       | CNROM             | 236     | 7,23
    6            | 7       | ANROM             | 60      | 1,84
    ...
    17           | 71      | CAMERICA          | 14      | 0,43
    ...
    30           | 232     | CAMERICA Quattro  | 8       | 0,24
    ...
    43           | 15      | 100-in-1/168-in-1 | 4       | 0,12
                                                        
    SUMA:                                                  81.48 
    


    In addition, only this cartridge supports the famous 168-in-1 compilation, without which no Polish fan of this console would imagine dozens of hours spent playing - this is my tribute to Polish users.
    KrzysioCart Micro SD - a revolution for fans of the Pegasus / Famicom console. KrzysioCart Micro SD - a revolution for fans of the Pegasus / Famicom console.

    For the impatient, there is good news right away - the cartridge can be purchased from me (I invite you to the end of the article for details). The kit includes:
    - cartridge in the housing
    - 4 GB MicroSD memory card
    - MicroSD card reader for USB, enabling recording to the card
    So that's all you need.

    The cartridge has been tested on the most popular console models:
    - MT777DX
    - IQ502 rev2 / 3
    - SP60 (on the scalaku)
    - RINCO (Thompsonic)
    - two no-name glutes
    It works without any problems on each of them. Additionally, it has the built-in option to update the software directly from the SD card - just select the appropriate file! Nobody else came up with something like this in Europe, and I was the second in the world to start working on this topic in 2012, when no one was thinking too much about flash-carts!

    History
    I took my first serious steps in the subject of Pegasus in 2012, when I created a huge cartridge, which is my master's thesis. It was based on a module with the Xilinx XC3S400 (Spartan 3) system. In the final phase, the cartridge handled over 95% of titles, including even MMC5 and VRC6. However, due to its complicated construction, it remained the only prototype specimen.
    KrzysioCart Micro SD - a revolution for fans of the Pegasus / Famicom console.

    A few years later I decided to create a slightly simpler medium - based on the Xilinx XC9572XL chip - 72 macrocells (more here: https://www.elektroda.pl/rtvforum/topic3094839.html)
    KrzysioCart Micro SD - a revolution for fans of the Pegasus / Famicom console. KrzysioCart Micro SD - a revolution for fans of the Pegasus / Famicom console.
    Initially, it was supposed to support only the 168-in-1 compilation and the games from Złota 5 and 4 (mapper Camerica # 71 and # 232) and UNROM. What all these games had in common was that they had 8 KB of CHR-RAM. Later, support for NROM games was added, consisting in modifying the software so that after selecting a game, and before transferring control to it, the processor would record the graphics from that game to RAM (NROM has 8kB of ROM memory). Then, by changing the SRAM memory from 6264 (8 kB) to 62256 (32 kB) and connecting the two highest address lines, the CNROM mapper could be operated. Another light software modification was to add MMC1 support (but only games with 8 kB CHR-RAM). By adding 8kB of PRG-RAM ($ 6000- $ 7FFF), you could still run MMC1 games with additional RAM, such as Legends of Zelda, Dyna Blaster. Adding MMC1 support with CHR-ROM and MMC3 mapper was not possible due to insufficient resources in the CPLD chip and the lack of legs - I used all of the available I / O ports and still had to resort to some tricks, e.g.. multiplexing: Y 2 minutes). The loading time of the game consists of:
    - clearing the Flash memory (a few seconds),
    - reading from the selected ROM with the game of data portions to the PRG-ROM memory (sector by sector) and its programming (byte by byte),
    - reading from the selected ROM with the game portions of data to the CHR-RAM memory and its writing.

    Initially, the write algorithm consisted in reading one byte, programming it, and then checking:
    - do you need to load a new sector,
    - do you need to change the bank to memory,
    - or maybe it's the end of programming?
    The series of checks after each byte was extremely inefficient. I remember spending one of the evenings pondering and changing this way. After all, if it was possible to program the whole instead of `byte-by-byte`, divide it into programming blocks of 256 bytes, followed by checking the above conditions, then it would work much faster. However, before programming each block, define how many bytes should be programmed in a given iteration (1-256) and store it in the Y register. Then the main programming loop could look like this:
    
    	;w Y - ilość bajtów do zaprogramowania
    program_chunk_loop:
    	lda (ptr_src), Y
    	sta (ptr_dst), Y
    	iny
    	bne program_chunk_loop
    

    Even if the initial block length calculation takes a while, we still have an advantage, because each iteration of the above loop is incredibly fast. But can it be further accelerated? Yes! - because the entire programming subroutine is executed in RAM anyway (you cannot simultaneously program ROM and execute code from it), if a long, five-cycle indirect read / write command (through the zero-page pointer and the Y register) - `` lda ( ptr_src), y` convert to absolute read command: `lda $ ffff, y` (where the address $ ffff will be cleverly changed in RAM before each entry to the block loop), then we gain 2 cycles for each revolution (and the rotation is 256) .

    Programming the game Super Mario Bros 3 (256 KB PRG-ROM + 128 KB CHR-ROM): 17 seconds:
    KrzysioCart Micro SD - a revolution for fans of the Pegasus / Famicom console.
    Rapprochement:
    KrzysioCart Micro SD - a revolution for fans of the Pegasus / Famicom console.
    Another close-up:
    KrzysioCart Micro SD - a revolution for fans of the Pegasus / Famicom console.
    Comparison with CHR-RAM programming:
    KrzysioCart Micro SD - a revolution for fans of the Pegasus / Famicom console.

    Additional mappers
    Adding support for more mappers is not possible due to the almost complete use of the FPGA chip. However, the board has been designed in such a well-thought-out way (connecting all address lines from the CPU to FPGA) that it can also serve as a testing platform for other rarer mappers and possibly implement such mappers instead of the current ones (eg VRC6).

    Summary
    After making a fully functional prototype copy as expected, I thought that all console owners are waiting for such an invention. A hard-to-reach and expensive competitive product (everdrive) is not within the reach of most people, so my project may be unique - I made a dozen or so pieces for other 'gaming enthusiasts' and decided to do it too.

    KrzysioCart Micro SD - a revolution for fans of the Pegasus / Famicom console. KrzysioCart Micro SD - a revolution for fans of the Pegasus / Famicom console. KrzysioCart Micro SD - a revolution for fans of the Pegasus / Famicom console. KrzysioCart Micro SD - a revolution for fans of the Pegasus / Famicom console. KrzysioCart Micro SD - a revolution for fans of the Pegasus / Famicom console. KrzysioCart Micro SD - a revolution for fans of the Pegasus / Famicom console.
    KrzysioCart Micro SD - a revolution for fans of the Pegasus / Famicom console.





    -------------------------------------------------- ----------
    KrzysioCart Micro SD - FAQ :

    1. How to order
    Send an email to: krzysiocart(malpa)gmail.com

    2. What is the price, what do I get in the set
    The price is PLN 250 with shipping included. The set includes: a cartridge in the housing (random color) + 4 GB MicrosSD memory card (random manufacturer) + MicroSD card reader for USB (random look)

    3. What games are supported?
    Mapper # 0 (NROM), # 1 (MMC1), # 2 (UNROM / UOROM), # 3 (CNROM), # 4 (MMC3), # 7 (ANROM / AOROM), # 15 (Contra 100/168-in -1), # 71 (Camerica), # 232 (Camerica Quattro).
    The cartridge has 1 MB PRG-ROM + 256 kB CHR-RAM / ROM + 8 kB PRG-RAM
    4 screen mirroring and RAM protection with a battery after a power failure are not supported.


    4. Will it work on my console?
    The cartridge has been tested on the most popular console models:
    - MT777DX
    - IQ502 rev2 / 3
    - SP60 (on the scalaku)
    - RINCO (Thompsonic)
    - two no-name glutes
    He didn't cause any problems at all. I can not guarantee that it will work on every one, because console manufacturers use various 'tricks' to reduce the cost of its production, resulting in reduced compatibility (e.g. replacement of the 7805 stabilizer with a zener diode, skipping the SND-OUT / IT line, omitting the CIRAM- line! CE), but on 99% of consoles it should work fine.


    5. Is the cartridge safe for my console?
    Yes! The cartridge is made on a 1 mm thick PCB, so it does not push the contacts out of the socket, and the tight housing keeps the cartridge in the socket. The buffers used in it, converting the voltage levels of 5 V (from those present on the cartridge connectors) to 3.3 V (for low-voltage systems) protect the console and the systems and do not cause excessive current consumption (e.g. if resistors are used)

    6. Will another (larger) memory card work?
    Any microSD cards up to 32 GB, formatted in the FAT16 or FAT32 file system with an allocation unit (cluster) size from 512 bytes to 64 KB, are supported. The card must enable communication in SPI mode. Some cards (especially from SanDisk) have a non-standard SPI mode and thus cause problems, which has been taken into account. Most cards should work fine.

    7. Why the game X works properly on the emulator, and the cartridge does not work at all / displays incorrectly / does not display the image.
    Emulators:
    i. idealize situations (e.g. they assume that RAM is zeroed after startup),
    ii. block illegal game operations (e.g. if the game uses CHR-ROM, attempts to write to CHR-ROM are ignored),
    iii. try to fix invalid headers in games (e.g. if the NES header declares it is 128KB CHR-ROM and the game tries to
    refer to further banks, they are taken modulo 128).

    The case of i. Usually concerns unlicensed (amateur) games, which the developers did not test on the hardware. In this case, please contact the game developer directly to release the fix.
    Case ii. it may concern, for example, Doki Doki Amusement Park, Krusty's Fun House games (in both the initial screen has a few tiles blurred because the game is trying to save something to CHR-ROM).
    On the other hand, amateur games from Shiru (eg Aleter Ego, Zooming Secretary) have a wrong initialization function that clears the entire CHR-ROM area, as a result the game displays a black image. Patches for these games have already been released on forums.nesdev.com


    8. Why is the progress bar not showing while loading the game, only the screen changing colors?
    The processor, programming the PRG / CHR memory, intensively switches the PRG and CHR banks, so an attempt to display anything would involve the need to reload the set of tiles to a new bank, which would slow down the programming process.

    9. What is the issue of legality?
    By law, game ROMs are subject to copyright laws (and so are computer programs). You can have ROMs of games with original cartridges (backup is allowed). The memory card supplied with Krzysiocart is empty - the buyer himself records the games he / she is entitled to. In addition to thousands of licensed games, there are tons of legal, free fan-made games available on the internet (homebrew production)
    About Author
    phanick
    Level 28  
    Offline 
    phanick wrote 2602 posts with rating 2597, helped 61 times. Live in city Warszawa. Been with us since 2007 year.
  • #2
    Ronin64
    Level 35  
    Bravo for skill, persistence and execution :) Programming optimization. The 6502 is a real coder :)
  • #3
    robig
    Level 21  
    Beautiful work, craftsmanship and a masterpiece! Each time you read a colleague's post with flushed face :) Ten years ago I tried to do with the self-made C64 cartridge, but it did not live up to what I see here.
  • #4
    maliniak80
    Level 17  
    Mr. friend phanick, maybe you could publish your book about fpga, something for beginners, I would definitely buy it, because how to learn it from the best :D
  • #5
    szymon122
    Level 38  
    I have a question, maybe weird, because I haven't had much contact with Pegasus.
    What is mapper? What is he responsible for? For example, what is the difference between mmc1 and mmc2? On the page you provide, there is supposed to be information, but very limited.
  • #6
    r03c10
    Level 11  
    A very nice design. However, I have a question. Does a colleague protect the pads entering the cartridge slot with something? They will fall asleep over time and there will be no contact. It would be worth preventing this. The paint is peeling off, but at least these tips have to be tinned.
  • #7
    szymon122
    Level 38  
    r03c10 wrote:
    Does a colleague protect the pads entering the cartridge slot with something?

    If it would be a ready / finished project, you can order a printed circuit board with gold plating of the contacts, the difference in price is negligible.
  • #8
    sosarek

    Level 43  
    I suggest sending one piece to Arhn.eu :)
  • #9
    gulson
    System Administrator
    Amazing presentation, great idea. Contact me to pick up new electrode gadgets, in addition to 300 points you will also get gadgets.
  • #10
    mobor
    Level 23  
    Although the project is interesting, I regret to notice that there are already better ready-made items. Starting from the original Nintendo mini-NES (cost about PLN 450 - I bought this console for PLN 310 - before the increase - which is cheaper than the "Cart" offered here) to which you can upload the entire NES rom-set to Far Eastern combines via USB (complete, multi-platform consoles) operating on the principle of android emulation (I recommend the last test on arhn.eu)
    That's why I give 10 points for the execution / idea, but in commercial terms I consider it a misfire
  • #11
    rascal0pl
    Level 10  
    mobor wrote:
    Although the project is interesting, I regret to notice that there are already better ready-made items. Starting with the original Nintendo mini-NES

    What are you even comparing? Emulator for the actual console and the actual cartridge?
    You can do such an emulator for PLN 30-40. This is not the point.
  • #12
    mobor
    Level 23  
    For most users, what counts is the end result, i.e. the ability to play their favorite games. Preferably on original equipment and in original games. Today it is unreal as everyone knows. Half measures are left.
    The mini Nes Classic is the closest to the original in terms of the idea and the manufacturer (straight from NINTENDO !!!). For me, this is the best option and I chose this one. The best because from Nintendo, the best because it provides great HDMI output, i.e. I connect it to a modern TV and not via CVBS or a modulator. And it's a hardware emulator? And what? The bottom line is that it works 100%!
    I have a Nintendo console, I have a Nintendo gamepad and I play a Nintendo game.
    You offer a prosthesis for a pirate console for space money. As long as you did it for yourself or as an MA work - the project had a completely different character and in this category it could collect and collect positive opinions. The moment you enter a commercial store, you have to face competitive solutions - whether you like it or not. This is what the free market is all about.
  • #13
    Tommy82
    Level 41  
    @mobor
    People are different, for some it is important to play and for others to play hardware. One will want to go somewhere for the pleasure of driving and what counts is to go, and the other will want to go in his big Fiat and even if he doesn't go anywhere, just burying in the garage will improve his mood ...
  • #14
    mobor
    Level 23  
    Well, but I wrote clearly that you can buy a COMPLETE, NEW CONSOLE from Nintendo for 4 hundred and upload the entire NES romset to it
    The entire design, equipment and workmanship is from Nintendo, so probably no one doubts that such a solution is better in every respect than playing on 20-year-old pirate consoles through a modulator or Composite ... and it is also more profitable
  • #15
    Anonymous
    Anonymous  
  • #16
    mobor
    Level 23  
    I understand the fun and I wrote about it after all. Also about commerce. I am only criticizing this last aspect
  • #17
    Anonymous
    Anonymous  
  • #18
    mobor
    Level 23  
    How can that not be criticized? :) You want to buy it - just for yours.
    Time will show who was right
  • #19
    Ronin64
    Level 35  
    mobor wrote:
    upload the entire NES romset to it


    Are these ROMs from emuparadise or Nintendo adding them? :)
  • #20
    atek000
    Level 17  
    Nice :)
    A lot of work, but the pleasure of playing retro equipment must give you satisfaction.
    A few weeks ago I missed my old consoles, so I dug out my banana pi, gave a 16GB card, threw Lakki and now I have NES, SNES, ATARI2600 (remember Rambo and that joystic), MEMA, N64, PlayStation and many more. The fact is that it's just an emulator and it's raining from Xbox, but it's fun to play and show my 8-year-old daughter what daddy played when he was young. Roms and CD images are available on the internet. Retro pads and USB joysticks are for little money. All combined in one device. Yes, I know HDMI and the high definition of current TVs without that blur effect. Everything too sharp and pixelated. On old CRTs after composit it looked better or years later I only have such an impression.
    I do not criticize and even praise your project and commitment, not to mention the knowledge acquired and acquired during the project implementation. However, I would not be tempted to buy one myself, once the price (330 PLN a banana Pi, card and pad is roughly 250 PLN), two - I do not have a pegasus anymore and I have many consoles in one of the very nice menu - pure laziness. But good luck, retro hobbyists or geeks are definitely here.
  • #21
    mobor
    Level 23  
    Ronin64 wrote:
    mobor wrote:
    upload the entire NES romset to it


    Are these ROMs from emuparadise or Nintendo adding them? :)



    You tried to flash your intellect but it did not work ... And the content on this SD card for this Pegasus is where? From the Nintendo Store?
  • #22
    RaStro
    Level 13  
    The truth is that if it is to be commercial, even in a very small series, it would be appropriate for the board to be done properly, some soldermask, secured edge joint. I respect the effort put into the project, I respect the effort I put into making the tile myself ... but the toy will lie a little in a drawer, a little in the wardrobe somewhere, it will catch more humidity and turn beautifully green and stop working. Even in an expensive domestic tiling factory, the price for its implementation with gilding etc. should not significantly increase the unit costs of the project. Not to mention the time saved.
  • #23
    Anonymous
    Anonymous  
  • #24
    Ronin64
    Level 35  
    mobor wrote:
    You tried to flash your intellect but it did not work ... And the content on this SD card for this Pegasus is where? From the Nintendo Store?


    Answer the question instead of playing rhetoric on the "Janusz" level.
  • #25
    gemiel
    Level 25  
    rascal0pl wrote:
    mobor wrote:
    Although the project is interesting, I regret to notice that there are already better ready-made items. Starting with the original Nintendo mini-NES

    What are you even comparing? Emulator for the actual console and the actual cartridge?
    You can make such an emulator for PLN 30-40. This is not the point.


    For me, the matter is simple. Either the original console with original accessories and cartridges, or any combination of equipment that allows you to play without the atmosphere of using "museum" equipment.
    If we add synthesis and an LCD display to the old tube radio, some people will probably enjoy it, and the collector will get a heart attack.
  • #26
    mobor
    Level 23  
    Ronin64 wrote:
    mobor wrote:
    You tried to flash your intellect but it did not work ... And the content on this SD card for this Pegasus is where? From the Nintendo Store?


    Answer the question instead of playing rhetoric on the "Janusz" level.


    I do not have to answer because when I buy an ORIGINAL console from Nintendo (mini Nes Classic) I have 30 fully licensed games on it at once ...
    Leave the epithets to yourself because you clearly drove yourself into a corner, dragging out the subject of legality
  • #27
    Ronin64
    Level 35  
    I asked you a simple question that you couldn't answer right away, was it some kind of aphasia? Anyway, it's a pity for the keyboard on "internet warriors". The topic is about what passion and skills can lead to. My friend phanick is doing a great job and he deserves credit for that :)
  • #28
    Belialek
    Level 22  
    @mobor "upload the entire romset of NES" 30 games is not the entire romset, and to add something to the NES mini you have to hack it (and this action also breaks the license). By the way - if you want to have "the whole NES romset" then I do not understand the sense of buying a NES mini, because you can throw such a romset on any device with android, linux, windows, first xbox, x360 or many other devices. Of course, if you want to fully legally play 30 licensed games, it's clear, you buy a NES mini, but then let go of the full romance :)

    KrzysioCart will surely find a crowd of fans, although the price is high, the hardware support for games is priceless for some. Apart from the fact that emulators are not always able to faithfully reproduce the image / sound that was generated on the famicon.
  • #29
    mobor
    Level 23  
    By buying a 30-game console from Nintendo, I am definitely more legal than someone who is going stolen from start to finish. Probably no one will deny that
    I have nowhere written with my console I hacked. However, I am aware that not only can I do it, but it is also completely safe and, most importantly, reversible.
    Not only that - you can even run snesa roms ...
    Anyway, the discussion becomes sterile and tiring because I am not going to explain to anyone what is the difference between playing Nintendo games on Nintendo hardware (using their hardware solution and NINTENDOWSKI software emulator) and, for example, on a PC
    If someone wants to invest in old pegasuses - his business. Ultimately, he pays on his own, not mine :)
  • #30
    Anonymous
    Anonymous