在机顶盒上实现红白游戏的方法及其装置的制作方法

文档序号:7757455阅读:306来源:国知局
专利名称:在机顶盒上实现红白游戏的方法及其装置的制作方法
技术领域
本发明涉及数字机顶盒技术领域,尤其涉及一种在机顶盒上实现红白游戏的方法 及其装置。
背景技术
红白游戏,即NES类型游戏,是日本任天堂公司1983年开发的游戏,在80年代 和90年年代曾风靡中国,深受玩家喜爱。目前大部分机顶盒都包含有一些例如贪吃蛇,推箱子等简单游戏,加之现在的机 顶盒已经具有USB接口,因此,机顶盒能否为用户提供更多种类的游戏,成为研发人员着重 要解决的问题。

发明内容
为此,本发明所要解决的技术问题是提供一种在机顶盒上实现红白游戏的方法 及其装置,以实现在机顶盒上玩红白游戏的目的。为此,本发明提供了一种在机顶盒上实现红白游戏的方法,该方法包括
步骤a,查找存储器中是否有*. NES文件,若有,则打开该文件并读取文件头部以判断 该文件是否是游戏文件;
步骤b,若是游戏文件,则从所述文件中读取游戏指令,并将游戏指令存放到机顶盒 ROM缓冲区中;
步骤c,建立一个在运行游戏的同时可以响应按键和执行菜单操作的游戏线程,并启动 游戏同步计时器。其中,所述步骤c中,建立一个在运行游戏的同时可以响应按键和执行菜单操作 的游戏线程包括
步骤c 1,根据用于指向当前执行指令地址的PC值从机顶盒ROM缓冲区读取游戏指令并 进行指令运算,同时和机顶盒的RAM缓冲区、声音缓冲区进行指令交互;
步骤c2,计算在显示缓冲区中显示一行数据所需的指令条数,当行数小于240行时,在 显示缓冲区中显示一行,当行数等于240行时,将显示缓冲区内容更新到实际的屏幕上,等 行数等于243行时,将声音缓冲区内容进行播放;
步骤c3,读取按键状态,若是退出键,则执行步骤c4 ;
步骤c4,检测游戏同步计时器,若未超时,则将游戏线程挂起,等待游戏同步计时器超 时,若超时,则从步骤cl开始循环执行。上述游戏指令包括用于存储游戏记录的SRAM、用于存储游戏中代码部分的ROM 和用于存储游戏中视频部分的VR0M。上述寄存器为机顶盒内置存储器或者外接移动存储器。
根据所述*. NES文件中开始字节判断该文件是否是游戏文件,若开始字节为NES\ xla,则*. NES文件是游戏文件。本发明还提供了一种在机顶盒上实现红白游戏的装置,该装置包括 查找读取单元,用于查找存储器中是否有*. NES文件,若有,则打开该文件并读取;
判断读取单元,根据查找读取单元读取的文件,根据文件头部信息判断该文件是否是 游戏文件;若是游戏文件,则从所述文件中读取游戏指令,并将游戏指令存放到机顶盒ROM 缓冲区中;
游戏建立单元,根据机顶盒ROM缓冲区中存放的游戏指令,建立一个在运行游戏的同 时可以响应按键和执行菜单操作的游戏线程;
游戏同步计时器,用于对运行的游戏进行计时;
退出单元,用于响应按键和执行菜单操作的退出键,停止游戏线程。其中,所述游戏建立单元包括
运算交互单元,用于根据PC值从机顶盒ROM缓冲区读取游戏指令并进行指令运算,同 时和机顶盒的RAM缓冲区、声音缓冲区进行指令交互;
判断执行单元,用于计算在显示缓冲区中显示一行数据所需的指令条数,当行数小于 240行时,在显示缓冲区中显示一行,当行数等于240行时,将显示缓冲区内容更新到实际 的屏幕上,等行数等于243行时,将声音缓冲区内容进行播放;
按键读取单元,用于读取按键状态,若是退出键,则通知计时器监测单元; 计时器监测单元,用于监测游戏同步计时器计时的时间,若接到按键读取单元发送的 指令,而此时游戏同步计时器未超时,则通知退出单元停止游戏,若接到按键读取单元发送 的指令,而此时游戏同步计时器超时,则通知运算交互单元重新开始执行游戏线程。上述游戏指令包括用于存储游戏记录的SRAM、用于存储游戏中代码部分的ROM 和用于存储游戏中视频部分的VR0M。上述寄存器为机顶盒内置存储器或者外接移动存储器。其中,查找读取单元根据所述*. NES文件中开始字节判断该文件是否是游戏文 件,若开始字节为NES\xla,则*. NES文件是游戏文件。本发明所述一种在机顶盒上实现红白游戏的方法及其装置,通过读取寄存器上的 *. NES文件游戏指令,并将其存放到机顶盒ROM缓冲区中,建立一个游戏线程,实现了在机 顶盒上玩*. NES文件游戏的目的。


图1为本发明实施例所述一种在机顶盒上实现红白游戏的方法流程图; 图2为本发明实施例所述一种在机顶盒上实现红白游戏的装置结构示意图。
具体实施例方式下面,结合附图对本发明进行详细描述。本实施例提供了一种在机顶盒上实现红白游戏的方法,该方法包括
步骤11,查找存储器中是否有*. NES文件,即是否有红白游戏文件,若为是,则执行步 骤12,若为否,则执行步骤16;步骤12,若有,则打开该文件并读取文件头部以判断该文件是否是游戏文件;若没有, 则直接执行步骤16 ;
步骤13,若是游戏文件,则从所述文件中读取游戏指令,并将游戏指令存放到机顶盒 ROM缓冲区中;
步骤14,建立一个在运行游戏的同时可以响应按键和执行菜单操作的游戏线程; 步骤15,启动游戏同步计时器timer ;
步骤16,结束。即弹出没有找到游戏文件提示框,并退出游戏功能。
其中,上述游戏指令包括用于存储游戏记录的SRAM、用于存储游戏中代码部分 的ROM和用于存储游戏中视频部分的VR0M。 其中,上述寄存器为机顶盒内置存储器或者外接移动存储器。其中,根据所述*. NES文件中开始字节判断该文件是否是游戏文件,若开始字节 为NES\xla,则NES文件是游戏文件。对于步骤14,还包括 步骤141,游戏线程循环;
步骤142,根据用于指向当前执行指令地址的PC值从机顶盒ROM缓冲区读取游戏指令 并进行指令运算;
步骤143,同时和机顶盒的RAM缓冲区、声音缓冲区进行指令交互; 步骤144,计算在显示缓冲区中显示一行数据所需的指令条数
步骤145,当行数小于240行时,在显示缓冲区中显示一行,当行数等于240行时,将显 示缓冲区内容更新到实际的屏幕上,等行数等于243行时,将声音缓冲区内容进行播放; 步骤146,读取按键状态,若是退出键,则执行步骤147 ; 步骤147,停止游戏线程,退出游戏,转向步骤142开始循环执行; 步骤148,检测游戏同步计时器,判断游戏是否超时;
步骤149,若未超时,则将游戏线程挂起,等待游戏同步计时器超时,若超时,则从步骤 142开始循环执行。可见,通过读取寄存器上的*. NES文件游戏指令,并将其存放到机顶盒ROM缓冲区 中,建立一个游戏线程,实现了在机顶盒上玩*. NES文件游戏的目的。使用上述在机顶盒上实现红白游戏的方法,本实施例还提供了一种在机顶盒上实 现红白游戏的装置,该装置包括
查找读取单元21,用于查找存储器中是否有*. NES文件,若有,则打开该文件并读取; 判断读取单元22,根据查找读取单元21读取的文件,根据文件头部信息判断该文件是 否是游戏文件;若是游戏文件,则从所述文件中读取游戏指令,并将游戏指令存放到机顶盒 ROM缓冲区中;
游戏建立单元23,根据判断读取单元22存放到机顶盒ROM缓冲区中的游戏指令,建立 一个在运行游戏的同时可以响应按键和执行菜单操作的游戏线程; 游戏同步计时器24,用于对运行的游戏进行计时; 退出单元25,用于响应按键和执行菜单操作的退出键,停止游戏线程。其中,所述游戏建立单元23包括
运算交互单元231,用于根据PC值从机顶盒ROM缓冲区读取游戏指令并进行指令运算,同时和机顶盒的RAM缓冲区、声音缓冲区进行指令交互;
判断执行单元232,用于计算在显示缓冲区中显示一行数据所需的指令条数,当行数小 于240行时,在显示缓冲区中显示一行,当行数等于240行时,将显示缓冲区内容更新到实 际的屏幕上,等行数等于243行时,将声音缓冲区内容进行播放;
按键读取单元233,用于读取按键状态,若是退出键,则通知计时器监测单元; 计时器监测单元234,用于监测游戏同步计时器计时的时间,若接到按键读取单元发送 的指令,而此时游戏同步计时器未超时,则通知退出单元停止游戏,若接到按键读取单元发 送的指令,而此时游戏同步计时器超时,则通知运算交互单元重新开始执行游戏线程。查找读取单元21在机顶盒内置存储器或者外接移动存储器中查找是否有*. NES 文件,若有,则打开该文件,判断读取单元22并读取文件头部,根据*. NES文件中开始字节 判断该文件是否是游戏文件,若开始字节为NES\xla,则*. NES文件是游戏文件,若是游戏 文件,则从所述文件中读取游戏指令,并将游戏指令存放到机顶盒ROM缓冲区中,游戏建立 单元23建立一个在运行游戏的同时可以响应按键和执行菜单操作的游戏线程,并启动游 戏同步计时器24。其中,判断读取单元22根据用于指向当前执行指令地址的PC值从机顶盒ROM缓 冲区读取游戏指令,运算交互单元231进行指令运算,同时和机顶盒的RAM缓冲区、声音缓 冲区进行指令交互;
判断执行单元232计算在显示缓冲区中显示一行数据所需的指令条数,当行数小于 240行时,在显示缓冲区中显示一行,当行数等于240行时,将显示缓冲区内容更新到实际 的屏幕上,等行数等于243行时,将声音缓冲区内容进行播放;
按键读取单元233读取按键状态,若是退出键,则通知计时器检测单元234,若未超时, 则将游戏线程挂起,等待游戏同步计时器超时,若超时,则通知运算交互单元231重新开始 循环游戏。上述游戏指令包括用于存储游戏记录的SRAM、用于存储游戏中代码部分的ROM 和用于存储游戏中视频部分的VR0M。综上所述,本实施例提供的在机顶盒上实现红白游戏的方法及其装置,通过读取 寄存器上的*. NES文件游戏指令,并将其存放到机顶盒ROM缓冲区中,建立一个游戏线程, 实现了在机顶盒上玩*. NES文件游戏的目的。 上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神 和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
一种在机顶盒上实现红白游戏的方法,其特征在于,包括步骤a,查找存储器中是否有*.NES文件,若有,则打开该文件并读取文件头部以判断该文件是否是游戏文件;步骤b,若是游戏文件,则从所述文件中读取游戏指令,并将游戏指令存放到机顶盒ROM缓冲区中;步骤c,建立一个在运行游戏的同时可以响应按键和执行菜单操作的游戏线程,并启动游戏同步计时器。
2.根据权利要求1所述的方法,其特征在于,所述步骤c中,建立一个在运行游戏的同 时可以响应按键和执行菜单操作的游戏线程包括步骤c 1,根据用于指向当前执行指令地址的PC值从机顶盒ROM缓冲区读取游戏指令并 进行指令运算,同时和机顶盒的RAM缓冲区、声音缓冲区进行指令交互;步骤c2,计算在显示缓冲区中显示一行数据所需的指令条数,当行数小于240行时,在 显示缓冲区中显示一行,当行数等于240行时,将显示缓冲区内容更新到实际的屏幕上,等 行数等于243行时,将声音缓冲区内容进行播放;步骤c3,读取按键状态,若是退出键,则执行步骤c4 ;步骤c4,检测游戏同步计时器,若未超时,则将游戏线程挂起,等待游戏同步计时器超 时,若超时,则从步骤cl开始循环执行。
3.根据权利要求1或者2所述的方法,其特征在于,所述游戏指令包括用于存储游戏 记录的SRAM、用于存储游戏中代码部分的ROM和用于存储游戏中视频部分的VR0M。
4.根据权利要求1所述的方法,其特征在于,所述寄存器为机顶盒内置存储器或者外 接移动存储器。
5.根据权利要求1所述的方法,其特征在于,根据所述*.NES文件中开始字节判断该文 件是否是游戏文件,若开始字节为NES\xla,则*. NES文件是游戏文件。
6.一种在机顶盒上实现红白游戏的装置,其特征在于,包括查找读取单元,用于查找存储器中是否有*. NES文件,若有,则打开该文件并读取; 判断读取单元,根据查找读取单元读取的文件,根据文件头部信息判断该文件是否是 游戏文件;若是游戏文件,则从所述文件中读取游戏指令,并将游戏指令存放到机顶盒ROM 缓冲区中;游戏建立单元,根据机顶盒ROM缓冲区中存放的游戏指令,建立一个在运行游戏的同 时可以响应按键和执行菜单操作的游戏线程;游戏同步计时器,用于对运行的游戏进行计时;退出单元,用于响应按键和执行菜单操作的退出键,停止游戏线程。
7.根据权利要求6所述的装置,其特征在于,所述游戏建立单元包括运算交互单元,用于根据PC值从机顶盒ROM缓冲区读取游戏指令并进行指令运算,同 时和机顶盒的RAM缓冲区、声音缓冲区进行指令交互;判断执行单元,用于计算在显示缓冲区中显示一行数据所需的指令条数,当行数小于 240行时,在显示缓冲区中显示一行,当行数等于240行时,将显示缓冲区内容更新到实际 的屏幕上,等行数等于243行时,将声音缓冲区内容进行播放;按键读取单元,用于读取按键状态,若是退出键,则通知计时器监测单元;计时器监测单元,用于监测游戏同步计时器计时的时间,若接到按键读取单元发送的 指令,而此时游戏同步计时器未超时,则通知退出单元停止游戏,若接到按键读取单元发送 的指令,而此时游戏同步计时器超时,则通知运算交互单元重新开始执行游戏线程。
8.根据权利要求6或者7所述的装置,其特征在于,所述游戏指令包括用于存储游戏 记录的SRAM、用于存储游戏中代码部分的ROM和用于存储游戏中视频部分的VR0M。
9.根据权利要求6所述的装置,其特征在于,所述寄存器为机顶盒内置存储器或者外 接移动存储器。
10.根据权利要求6所述的装置,其特征在于,查找读取单元根据所述*.NES文件中开 始字节判断该文件是否是游戏文件,若开始字节为NES\xla,则*. NES文件是游戏文件。
全文摘要
本发明提供了一种在机顶盒上实现红白游戏的方法及其装置,所述方法包括查找存储器中是否有*.NES文件,若有,则打开该文件并读取文件头部以判断该文件是否是游戏文件;若是游戏文件,则从所述文件中读取游戏指令,并将游戏指令存放到机顶盒ROM缓冲区中;建立一游戏线程,并启动游戏同步计时器。所述装置包括查找读取单元,判断读取单元,游戏建立单元,游戏同步计时器和退出单元。本发明所述在机顶盒上实现红白游戏的方法及其装置,通过读取寄存器上的*.NES文件游戏指令,并将其存放到机顶盒ROM缓冲区中,建立一个游戏线程,实现了在机顶盒上玩*.NES文件游戏的目的。
文档编号H04N5/00GK101923469SQ20101025848
公开日2010年12月22日 申请日期2010年8月20日 优先权日2010年8月20日
发明者于海波, 韩萤 申请人:康佳集团股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1