易码技术论坛

 找回密码
 加入易码
搜索
楼主: dragon_

最终版Tc808硬件4灰度驱动程序 附重要资料:SPLD803B的DATASHEET

[复制链接]
 楼主| 发表于 2007-6-13 11:06:27 | 显示全部楼层
顶起来看看……
超级玛莉4灰度版里用的就是这个。
发表于 2007-6-13 23:26:32 | 显示全部楼层
支持啊,LZ真的是强人啊~~
发表于 2007-6-14 00:00:25 | 显示全部楼层
你顶我也顶
支持啊
发表于 2007-6-14 00:17:03 | 显示全部楼层
大家顶才是真的顶~~
 楼主| 发表于 2007-6-14 16:33:07 | 显示全部楼层
顶顶更健康……
发表于 2007-6-14 20:28:29 | 显示全部楼层
顶破头也要顶
发表于 2007-6-15 09:27:15 | 显示全部楼层
[glow=255,red,2]好东西,我都想买台TC808了![/glow]
 楼主| 发表于 2007-6-15 09:48:01 | 显示全部楼层
停产了,几乎没得买……
发表于 2007-6-15 11:30:42 | 显示全部楼层
诶,不是吧,我们着好多啊!
几乎没人买的几台!
 楼主| 发表于 2007-6-15 11:35:57 | 显示全部楼层
但它的确是停产了……
不过也不排除GGV重新生产的可能性。
 楼主| 发表于 2007-6-15 11:37:40 | 显示全部楼层
哈,楼上上的签名……
有意思。
发表于 2007-6-15 11:45:33 | 显示全部楼层
左边的是李小龙吗?
发表于 2007-6-15 17:28:33 | 显示全部楼层
ls姓李?
发表于 2007-6-17 19:31:51 | 显示全部楼层
TC808的东东顶一下。
停产了?
还好我买了一台。
发表于 2007-6-28 20:45:23 | 显示全部楼层
谢谢谢谢,,我的就是TC808,,,这下可真是有事做了啊
发表于 2007-6-28 21:26:47 | 显示全部楼层
怎么还是两屏啊?
发表于 2007-7-7 15:10:11 | 显示全部楼层
NC3K能用否?
 楼主| 发表于 2006-11-19 22:22:43 | 显示全部楼层 |阅读模式
4_Gray就是切换至硬件4灰度模式的子程序。超级玛莉4灰度版里面用的就是这个。

这几天总发现有人在看这个帖子,我想说:现在4灰度的技术基本已经成熟了,那些汇编代码已经固定了,这个帖子已经没什么用了的…… dragon_ 2008.1.6
  1. 4_Gray:
  2. JSR L_4017
  3. JSR L_C004
  4. RTS
  5. L_4017:LDA #$60
  6. STA $05
  7. STA $0432
  8. LDA #$20
  9. ORA #$00 ;原值为#$10,改后可大大降低屏幕闪烁,但还是有一丁点闪……
  10. STA $0B
  11. STA $043B
  12. LDA #$38 ;原值为#$83,可以修改,只要每次递减5,比如设为#$7e、#$79、#$74等。我怀疑这个值与显存地址有一定关系,因为设为#$38时显存地址正好在$1380……
  13. STA $06
  14. LDA #$A0 ;原值为#$50,这个应该就是调整行宽的了。但是我试了之后发现只有在值为#$40,#$50,#$A0时方有效。#$40就是让行宽等于16个字节。
  15. STA $0D
  16. RTS
  17. L_C004:PHP
  18. SEI
  19. JSR L_CD5B
  20. PLP
  21. PHP
  22. PHA
  23. LDA $3D
  24. AND #$FC
  25. ORA #$03
  26. STA $3D
  27. PLA
  28. PLP
  29. LDA $043D
  30. STA $3A
  31. LDA $043C
  32. STA $3C
  33. RTS
  34. L_CD5B:JSR L_CE62
  35. LDA #$A6
  36. STA $50
  37. JSR L_CE16
  38. LDA #$A6
  39. STA $50
  40. JSR L_CDC0
  41. JSR L_CDEE
  42. BCS L_CDA4
  43. LDX #$00
  44. L_CD73:LDA L_CEDE,X
  45. STA $50
  46. JSR L_CDC0
  47. JSR L_CDEE
  48. BCS L_CDA4
  49. LDA L_CEE8,X
  50. CPX #$02
  51. BNE L_CD8D
  52. LDY $03E9
  53. LDA L_CEF2,Y
  54. L_CD8D:STA $50
  55. JSR L_CDC0
  56. JSR L_CDEE
  57. BCS L_CDA4
  58. INX
  59. CPX #$0A
  60. BCC L_CD73
  61. JSR L_CE38
  62. JSR L_CDA5
  63. CLC
  64. L_CEDD:RTS
  65. L_CDA4:RTS
  66. L_CDA5:PHP
  67. PHA
  68. LDA $3D
  69. AND #$FC
  70. ORA #$03
  71. STA $3D
  72. PLA
  73. PLP
  74. LDA $3A
  75. AND #$F3
  76. ORA #$02
  77. STA $3A
  78. LDA $3C
  79. ORA #$02
  80. STA $3C
  81. RTS
  82. L_CDC0:LDA $3A
  83. ORA #$0C
  84. STA $3A
  85. LDA #$08
  86. STA $51
  87. LDA $3C
  88. L_CDCC:ASL $50
  89. BCC L_CDD5
  90. ORA #$08
  91. JMP L_CDD7
  92. L_CDD5:AND #$F7
  93. L_CDD7:AND #$FB
  94. STA $3C
  95. JSR L_CF02
  96. ORA #$04
  97. STA $3C
  98. JSR L_CF02
  99. AND #$FB
  100. STA $3C
  101. DEC $51
  102. BNE L_CDCC
  103. RTS
  104. L_CDEE:LDA $3A
  105. AND #$F7
  106. ORA #$04
  107. STA $3A
  108. JSR L_CF02
  109. LDA $3C
  110. ORA #$04
  111. STA $3C
  112. JSR L_CF02
  113. LDA $3C
  114. AND #$08
  115. BEQ L_CE0E
  116. AND #$08
  117. STA $3C
  118. SEC
  119. RTS
  120. L_CE0E:LDA $3C
  121. AND #$FB
  122. STA $3C
  123. CLC
  124. RTS
  125. L_CE16:LDA $3A
  126. ORA #$0C
  127. STA $3A
  128. LDA $3C
  129. ORA #$0C
  130. STA $3C
  131. JSR L_CF02
  132. LDA $3C
  133. AND #$F7
  134. STA $3C
  135. JSR L_CF02
  136. LDA $3C
  137. AND #$F3
  138. STA $3C
  139. JSR L_CF02
  140. RTS
  141. L_CE38:PHP
  142. PHA
  143. LDA $3D
  144. AND #$FC
  145. ORA #$03
  146. STA $3D
  147. PLA
  148. PLP
  149. LDA $3A
  150. ORA #$0C
  151. STA $3A
  152. LDA $3C
  153. AND #$F3
  154. STA $3C
  155. JSR L_CF02
  156. ORA #$04
  157. STA $3C
  158. JSR L_CF02
  159. ORA #$08
  160. STA $3C
  161. JSR L_CF02
  162. RTS
  163. L_CE62:LDA $043B
  164. ORA #$01
  165. STA $0B
  166. STA $043B
  167. LDA $0432
  168. ORA #$08
  169. ORA #$04
  170. ORA #$10
  171. STA $05
  172. STA $0432
  173. LDA #$26
  174. STA $3E
  175. LDA #$00
  176. STA $3F
  177. PHP
  178. PHA
  179. LDA $3D
  180. AND #$FC
  181. ORA #$02
  182. STA $3D
  183. PLA
  184. PLP
  185. LDA #$00
  186. STA $3C
  187. PHP
  188. PHA
  189. LDA $3D
  190. AND #$FC
  191. ORA #$03
  192. STA $3D
  193. PLA
  194. PLP
  195. LDA $3A
  196. ORA #$02
  197. STA $3A
  198. LDA $3C
  199. ORA #$02
  200. STA $3C
  201. RTS
  202. L_CF02:PHA
  203. TXA
  204. PHA
  205. L_CF05:TYA
  206. PHA
  207. LDX #$80
  208. L_CF09:NOP
  209. NOP
  210. INX
  211. BNE L_CF09
  212. PLA
  213. TAY
  214. PLA
  215. TAX
  216. PLA
  217. RTS
  218. L_CEDE:.DB $00,$01,$02,$03,$10,$11,$20,$21,$22,$23
  219. L_CEE8:.DB $0F,$00,$00,$03,$08,$00,$00,$05,$0A,$0F
  220. L_CEF2:.DB $01,$02,$03,$04,$05,$06,$07,$08,$09,$0A,$0B,$0C,$0D,$0E,$0F,$10
复制代码
简单说明:
$00,$05,$0A,$0F指的是灰度调色板。
$0F,$00,$00,$03,$09……中将03改为02或更小可以大幅提高屏幕亮度。将09改为08,就是灰度模式。
spld803支持32级屏幕亮度。

再增加两个小程序(当然还是仅适用于Tc808的,跟单词精灵学的):
关闭屏幕显示:
lda $0432
and #$f7
sta $0432
sta $05
打开屏幕显示:
lda $0432
ora #$08
sta $0432
sta $05

[ 本帖最后由 dragon_ 于 2009-4-21 22:15 编辑 ]

硬件4灰度.part1.rar

489 KB, 下载次数: 2109

硬件4灰度.part2.rar

489 KB, 下载次数: 466

硬件4灰度.part3.rar

171 KB, 下载次数: 465

NEW.txt

3 KB, 下载次数: 565

您需要登录后才可以回帖 登录 | 加入易码

本版积分规则

Archiver|手机版|小黑屋|EMAX Studio

GMT+8, 2024-4-19 07:57 , Processed in 0.011956 second(s), 20 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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