电玩DIY [ VG DIY ] - Video Game Do It Yourself

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11781|回复: 12

开工做FC的烧录卡,希望前辈们给些资料。

[复制链接]
发表于 2018-12-4 21:45:11 | 显示全部楼层 |阅读模式
买到了两张原装的游戏卡,一张是MMC3B的,一张是MMC1A的,还找出了一堆vcd的解码板,打算做两张烧录卡,希望得到各位前辈的支持。( m( l$ m! ]3 `2 b: [

/ l. R0 g4 S; n& S1 t; A) i6 m8 X6 b! V/ Z6 \* {& f

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复

使用道具 举报

发表于 2018-12-13 09:50:06 | 显示全部楼层
正版卡改烧录卡,首先要有烧录器。, o3 O% W9 H0 j2 y

+ x6 e2 q9 s( l看到你的VCD解码板上有Winbond的W27C010,这是1Mbit的EPROM芯片,可以用来烧录,但需要专门的烧录器。如果你打算使用这些EPROM芯片的话,去X宝买个EPROM烧录器,价格约30~150左右。
+ k, q; X6 r- C6 l; U8 |9 b不过最好的方案还是使用Flash芯片+Kazzo烧录器。拆机Flash芯片非常便宜,X宝一片约2元。Kazzo烧录器完全开源,可以自己制作,也可以X宝买现成的,价格约75元。自己做的话不到40元。7 N6 {- d" b$ _% M8 b8 i
( t- y" a1 x5 z7 K
EPROM烧录需要在VPP引脚加+12V高电压才能烧录。所以如果使用了EPROM的话,想换游戏就得把芯片拆下来,放到烧录器上烧完再放到卡带上面去。你可以给卡带上装芯片插座,方便取下。
4 B, J: Y/ ^7 {* [5 zFlash芯片烧录不需要高电压,给出往特定的地址写特定的命令就能烧录。所以无需拆芯片,可以直接把芯片焊死在卡带板子上。而Kazzo烧录器也正是为了实现方便烧录而开发出来的。
+ J. k: E) J" w2 @' V8 {: i7 Z  r2 M6 c
我个人建议你选择使用Flash+Kazzo。

评分

参与人数 1贡献 +1 Diy币 +1 热血 +100 收起 理由
xunxun + 1 + 1 + 100

查看全部评分

回复

使用道具 举报

发表于 2018-12-13 10:13:01 | 显示全部楼层
买Flash芯片的话,最好选择AM29F040B这个Flash芯片。它是4Mbit的flash,DIP封装,32脚。& |. N, Q$ w  F- Q4 Z
Kazzo对这个芯片的支持最好。! T% D& r: {: K+ x/ {* {% s
其他芯片虽然也不是不能用,但是你可能会面临所谓“A10/A14”高位地址的问题,导致那些芯片未必能够用在你的烧录卡上,徒增浪费。所以还是使用被广大群众证实过好用的芯片为上策。" |$ _5 r! C( P% f( m3 |
X宝上这个拆机芯片价格约2元/片,全新芯片约7~15元。一般来说没必要买全新芯片,因为这种Flash芯片写入寿命非常长,最少也有上万次甚至上十万次的寿命。而拆机芯片基本上不可能把这些寿命都用尽。所以使用拆机芯片是比较经济且靠谱的。% Z# V9 S" l- H
6 G7 Q% ?: H# K2 v/ g. m" ]
买来flash芯片和kazzo烧录器之后我再继续教你怎么改成烧录卡。
2 h% y: t: x) B7 ~7 w* E  Y( l% {
8 N. s  v- O9 s1 b
/ Z6 N0 `0 a2 m3 k8 T
3 c# r# @1 J" P: u2 m+ h
! b- r& \7 s' N

2 i) H- z  ?3 @* n& I题外话:从对游戏的兼容性上来说,你这两盘卡带并不好。那个MMC1的卡带,板子上写着SGROM,说明它是128K/256KByte的PRG ROM+8KByte的CHR RAM。没有WRAM,没有后备电池,很多mapper1的游戏都不能玩。MMC3的卡带,TLROM,说明它是128K/256KByte的PRG ROM+128K/256KByte的CHR ROM。同样没有WRAM和后备电池,能玩大部分mapper4的游戏,但还有很多mapper4的游戏需要CHR RAM或WRAM的,也不能玩。0 a9 h, [4 X4 t2 y' L
当然,只要你愿意,而且胆大心细手艺高,完全也可以把缺少的元件加上,再配合一些逻辑电路,甚至可以做出几乎全兼容那个mapper的卡带。我自己手里的几盘卡带几乎都是“全兼容”。
回复

使用道具 举报

 楼主| 发表于 2018-12-16 18:34:11 | 显示全部楼层
本帖最后由 pllyq52 于 2018-12-16 18:35 编辑
0 l. Z# O9 u; @. u& }0 K4 V( g
雷精灵2046 发表于 2018-12-13 10:13
1 @! S* E, {( R买Flash芯片的话,最好选择AM29F040B这个Flash芯片。它是4Mbit的flash,DIP封装,32脚。' `: x& @& y& y2 p
Kazzo对这个芯片的 ...

* P0 _4 E* D, U+ j1 D/ U9 Q' W2 S) r- _6 Y# P/ W
谢谢指点,在某宝上搜了一下“kazzo烧录器”,什么也没现,怎么没见有卖呢?所以就把MMC1卡的PRG拆了下来,发现情况比想象要糟糕,板上的A17地址线是接在Vcc上的,那芯片在编程器(普通编程器不是kazzo),发现上64K和下64K的数据果然是一样的,看来只能玩的游戏就更少了,如何补齐逻辑电路还得麻烦您指点一下。- H  G2 {( D! m4 c

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复

使用道具 举报

发表于 2018-12-17 12:57:03 | 显示全部楼层
原来你有基础,手艺也不错,那就太好了,省了我很多事。% T2 i6 N) G1 V) N+ d
7 t+ v( d" C% y$ {" P( Y
首先说一下关于kazzo烧录器。你可以在闲鱼上搜索“kazzo”,有一家保定的,75块钱。虽然是闲鱼,但实际上是店主自制的全新kazzo,非量产,并非二手货。可以放心购买。
" j, e* |& @% v1 J$ [然后解释一下你遇到的现象。你那个MMC1的卡带上的PRG ROM芯片丝印是HFC-RT-0,板子是HVC-SGROM-02,查数据库可以断定这是《サラダの国のトマト姫》(沙拉国的土豆公主)。
9 R0 ~: D; d; @$ ~6 j注意,事实上这个游戏的PRG ROM是256K,而你只读了128K的内容,而且读出来的数据,前后64K都是相同的。造成这个问题的原因是,Mask ROM的引脚排列,并不遵守JEDEC标准。换句话说,这个Mask ROM并不能直接放到烧录器插座上读数据,而是需要飞线。
  g( F" m+ _9 o7 r) I3 k8 R1 P
  1.     PRG Mask ROM                          EPROM7 U9 b; L' U; }
  2.        ---_---                           ---_---. H# G: ?5 ~  N7 A. T) V  C
  3. A17 - |01   32| - +5V             VPP - |01   32| - +5V
    5 }* B: v  M" k+ K1 R0 ~
  4. /CE - |02   31| - +5V             A16 - |02   31| - PGM
    & p: K6 @8 w0 `% O
  5. A15 - |03   30| - +5V             A15 - |03   30| - NC
    # P4 e: A2 }' z) k% Z9 ?
  6. A12 - |04   29| - A14             A12 - |04   29| - A14
    ( i2 v+ s8 O( q3 X+ Z$ Y, M1 L) U
  7. A7  - |05   28| - A13             A7  - |05   28| - A13
    " ]: u2 r: z0 W
  8. A6  - |06   27| - A8              A6  - |06   27| - A8/ n& _4 ^2 ?, b5 q$ `5 N5 l' h
  9. A5  - |07   26| - A9              A5  - |07   26| - A9
    ( R  O  Z6 v3 R6 ]. G
  10. A4  - |08   25| - A11             A4  - |08   25| - A11. o6 g  @2 }0 c. L% {$ G
  11. A3  - |09   24| - A16             A3  - |09   24| - /OE7 t- _( y) O$ e7 @6 ^
  12. A2  - |10   23| - A10             A2  - |10   23| - A10
      r1 \1 l+ [- B" @  J$ b) n! |
  13. A1  - |11   22| - /CE             A1  - |11   22| - /CE2 k$ @+ h, x+ T( k: |% i
  14. A0  - |12   21| - D7              A0  - |12   21| - D77 @$ y$ [  D) s* H0 Y3 ~4 p
  15. D0  - |13   20| - D6              D0  - |13   20| - D65 z2 a- n0 c2 c0 Y4 g8 t
  16. D1  - |14   19| - D5              D1  - |14   19| - D5
    3 F" K% C1 @. S4 v# L9 N8 \% ~
  17. D2  - |15   18| - D4              D2  - |15   18| - D4
    0 W* G0 i) c9 }5 D0 X; J  ?
  18. GND - |16   17| - D3              GND - |16   17| - D3
    * V2 b/ N8 B& L" O* G* U6 @
  19.        -------                           -------
复制代码

7 \' M6 I3 g+ ?0 B这是32脚的PRG Mask ROM和32脚的EPROM引脚对比图。相比之下,Mask ROM没有/OE引脚,而多出一个A17引脚,所以32脚的PRG Mask ROM容量为256K,而EPROM只有128K。
4 }. y* @9 u, _0 C, W这就解释了你读Mask ROM的结果。对于通用编程器来说,它不知道你插到锁紧座上的是Mask ROM,它只把这个芯片当成是符合JEDEC标准的EPROM来对待。于是在读的时候,编程器给1脚加了高电平,24脚低电平,30脚电平未知,暂且假设是高电平,31脚低电平。
$ q) A5 B! h: G. t* C" V可见,Mask ROM的A16和A17都被定死了电平,所以你只能读出芯片容量(256K)的四分之一的数据,也就是64K。8 v  t' F% x. Z
而当编程器把芯片当成EPROM读到高64K的时候,2脚高电平。但对于Mask ROM来说,2脚等效于22脚,而22脚是片选,始终是低电平。对于常见的单片机来说,低电平的灌电流能力比高电平的拉电流能力强,于是2脚被强制拉低,于是和读低64K的情况一样。所以读出的高64K和低64K数据相同。

评分

参与人数 1贡献 +1 Diy币 +1 热血 +100 收起 理由
xunxun + 1 + 1 + 100

查看全部评分

回复

使用道具 举报

发表于 2018-12-17 13:22:40 | 显示全部楼层
如果你能理解上面我分析的原因,那么你就肯定知道该怎么办了。
5 b: n% [& }6 m& o& ^% n9 ?& @3 R6 R
8 ]4 C+ u/ c! Z# [既然你有通用编程器,那么不买kazzo也无妨。就是换游戏的时候有点费劲,得在板子上装插座,方便拆芯片。此外,你还得飞线。
% p& x# t3 Q2 E% e你得买256K的EPROM,在编程器上烧好ROM,然后把1、2、24、30、31脚掰起来,不能插到板子的插座里面,然后芯片的1脚接+5V,2脚接板子的24孔洞,24脚接地,30脚接板子的1孔洞,31脚接地。
: Q6 b& g8 K* U: b6 Q' x这样引脚就对正了。卡带就能正常运行了。5 _; a5 w( _# ~( t2 _
; M3 G& ~1 f1 ^% E
如果你买了kazzo,那么你就要买flash芯片。flash芯片可以在线编程,不需要拆下来。换游戏很方便。如果你愿意使用这种方法的话,那么我再教你如何给flash芯片飞线。
回复

使用道具 举报

 楼主| 发表于 2018-12-19 15:08:16 | 显示全部楼层
    谢谢指点,马上开工,首先当然是要找一片256K的EPROM,很遗憾,没找到,
" E8 |( @; @2 b' u9 i
5 Y) I0 P3 U8 T" T128的倒有不少。还好在一块老电脑主板上找到一片AT49F002,百度一下,这应. N1 z! ~, K! @# v% }) l0 O
+ F  T9 l, e/ q. A! F" R
该是一片256K的fiash,看看引脚定义和EPROM的也是相差无几,姑且试试,往
" c8 M8 R4 o, t/ I! A: A4 s6 k
  s- H! R# }0 Y$ g6 j! u& G$ }/ y里面随便烧了一个mapper1的游戏,1脚复位(低电平有效)就接在Vcc吧(后来
6 x) T- R! K' H8 Y4 a) K$ ^+ _, ^% g4 K9 c. w) _  R
发现接在GND也是可以的),2脚A16接在24孔,24脚接在GND,30脚A17接在1孔4 [6 \$ j5 Z/ s
( ?: Q6 }- l0 e' d3 N) ^: e
,31脚应该是写入允许(低电平有效)就接在Vcc吧。上机一试,成功了,哈哈
( ]% q3 {8 P; n3 C* W
4 P2 ^/ y* S/ D; u, g) J,好像烧进去的是一个日文的RPG的游戏。) N+ ]6 [! D/ t6 V1 ~7 F
- T$ K# r+ d$ [
    小时候玩过《重装机兵》,感觉这种游戏很强大(因为游戏里面还有小游5 p; j' m. A# m5 v4 Y( N% Z0 q; P2 I" v
" a0 X/ n" }1 W: ^% H0 G5 D, n8 F
戏)没想到却只有256K,那个卡带里面是有电池的,但是现在电池应该装在那) C6 f6 a" M* e

$ _( a9 J& U, F, ?- g! a% R! ~呢?
5 I2 Z$ P$ N, p' J5 }7 s) R7 R; b/ b5 m+ {, U0 g% S8 h' P0 \
7 @. c* |0 d" N/ {2 Z2 c
在试换个游戏,没想到,开机一看却只有一行日文,然后按手柄也没任何反应。怪,这日文是啥意思,谁看得懂?
8 _% A3 j4 F0 l; f8 Z5 A

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复

使用道具 举报

发表于 2018-12-20 08:31:55 | 显示全部楼层
这句话的意思就是后备存档芯片很奇怪。1 T1 g9 h5 G1 q% l" p* z( E$ b
很显然,你找了一个带存档功能的游戏烧进芯片里面了。但是板子上并没有WRAM和后备存档电池,所以游戏逻辑在检测存档的时候得到了错误的结果,于是显示出错误警告。0 i+ l2 `9 M6 j$ l3 i
如果你想玩这个游戏,那么就需要给板子上增加WRAM和后备电池。
回复

使用道具 举报

发表于 2018-12-20 09:12:56 | 显示全部楼层
由于你的板子是HVC-SGROM,配置是128K/256K PRG ROM + 8K CHR RAM,那么加上WRAM之后就变成了128K/256K PRG ROM + 8K CHR RAM + 8K WRAM + 后备电池这样的配置,也就是HVC-SNROM。) X! y4 d7 b/ _
那么改造方案就很明确了。+ o% a" E" R/ ^

6 V% A# v7 I5 |9 }. h1 ?首先准备如下元件:! j  W2 I# I; n! q# f8 Q3 w3 k
8KByte的SRAM一片。推荐型号HM6264,或者KM6264,或者UMC6264,反正只要是6264就行。. N: H  L6 N- `/ Y% B! a0 L
普通开关二极管两个。推荐型号1N4148。
# ], T8 V# i! _& |普通碳膜或金属膜电阻两个。阻值10K~100K均可。
9 [; [" ?6 o% G% @2 L4 N) c0 y普通电解电容一个。容量1uF以上即可。耐压超过10V即可。7 i$ g. o. _2 P. D
3V电池一个。建议使用2032+纽扣电池座,或者使用微型3.7V锂电池。3 t- d( h. A8 D3 Z$ `

8 V/ A: w" U. D6 \改造方法如下:
2 R" [1 H! E) C' S首先把SRAM的数据总线和地址总线,也就是D0~D7和A0~A12全部直接连接到PRG ROM的数据总线和地址总线上。一一对应。- K( @9 r" y) _  I3 f- C
SRAM的GND连接到PRG ROM的GND。
3 v7 `* y# q6 C# zSRAM的/WE连接到MMC1芯片的17脚。
4 c- D6 q! T. N- u7 U8 HSRAM的/OE接GND。# J% l9 @) b( `* _0 G0 J
SRAM的/CS1连接到MMC1芯片的11脚。* Q8 b" ~5 \! @$ @. h1 C4 ]) Z
SRAM的CS2连接到MMC1芯片的6脚。! R( [8 ]) L; U/ S% c# H5 g7 F
SRAM的VCC接二极管负极,二极管正极接板子上的VCC。
' k# O' X- _" E% [- u) ?5 O8 _3 h同时,SRAM的VCC接二极管负极,二极管正极接电阻,电阻接电池正极。
# L3 r1 V4 p9 [9 I* y6 B电池负极接GND。
* r; W& C0 M0 b& W1 W1 a; B: F电解电容正负极跨接SRAM的VCC和GND。
! M* F# ?6 U( F! C1 `7 `3 j9 W+ U最后一个电阻跨接SRAM的VCC和/CS1。( X5 r. \' \" O! W6 u5 Z6 q
. @! c" Y. d+ U
这是电路图:& {4 @% ]$ a, S3 ]$ A$ e9 @
  1.                                           C            D1    R18 k* v' Z/ T3 h5 h: P& R( V4 c" S7 z
  2.               6264               GND ----||--------+--|<|--[===]--+- 电池 -+- GND. {' y2 t, S5 n$ `, r9 X& z7 t
  3.            .----_----.                             |4 u. e7 e' ?; R5 [
  4.       NC - |01     28| - +5V ----------------------+--|<|---------- +5V
    ; d% V/ u0 v0 A& p4 W" c
  5.      A12 - |02     27| - /WE --- MMC1 17脚         |   D2
    ( E- g' T0 j9 c
  6.       A7 - |03     26| - CS2 --- MMC1 6脚          |
    . c1 _' W3 A7 T5 l4 i6 L" b# h
  7.       A6 - |04     25| - A8                        -2 l1 r: K# h. r+ F* V! u2 p
  8.       A5 - |05     24| - A9                       | | R2
    2 [" a  o/ _% u1 h6 O' S
  9.       A4 - |06     23| - A11                      | |- W8 i1 H! w: y4 g2 P; z1 H
  10.       A3 - |07     22| - /OE -- GND                |: v$ [4 L$ _( a' o3 X* u, W
  11.       A2 - |08     21| - A10                       |5 F0 `3 a/ f  w/ @! i9 }
  12.       A1 - |09     20| - /CS1 ---------------------+------- MMC1 11脚
    - \6 v/ F# y. A% h
  13.       A0 - |10     19| - D7      
    6 n* M9 f$ S: J0 Y3 G& M9 i6 W* L
  14.       D0 - |11     18| - D6      6 f6 Q8 q5 j0 `
  15.       D1 - |12     17| - D5      ) u$ [, _" f: Y# M6 T/ _; u
  16.       D2 - |13     16| - D4      
    * ^+ O3 |+ N/ x, K& [5 E( [9 j. [8 b
  17.      GND - |14     15| - D3      7 W9 E- E  f) f5 p: Q
  18.            '---------'
复制代码

评分

参与人数 1热血 +100 收起 理由
xunxun + 100

查看全部评分

回复

使用道具 举报

发表于 2018-12-27 22:10:57 | 显示全部楼层
来看牛人交火
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Video Game Do It Yourself ( 闽ICP备14000865号 )

GMT+8, 2024-4-20 16:43 , Processed in 0.076072 second(s), 17 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表