Gameboy的显存和地址

  • Gameboy和显示相关的地址是8KB大小的空间0x8000~0x9FFF。
    Gameboy Color中可以通过开关实现16KB显存。


    0x8000~0x97FF储存的是用来给屏幕显示的图案。
    0x8000~0x8FFF 一般用来储存精灵图案(图案编号从00H到FFH共100H个,即10进制的0~255共256个)
    0x8800~0x97FF 一般用来显示背景图案(图案编号从80H到7FH共100H个,即10进制的-127~127共256个)
    大家可以发现0x8800~0x8FFF是重合的部分 :shock: ,这部分空间由精灵和背景共享。


    0x9800~0x9BFF 是第一幅背景(储存的是前述的图案编号)
    0x9C00~0x9FFF 是第二幅背景(储存的是前述的图案编号)


    理解0x8000~0x97FF这部分的功能,可以参考下图。
    虽然一个8*8的画片只占用8个字节,但是每一个像素包含4种灰度信息(如GB中的白,浅灰,深灰,黑),因此8个字节扩展为16字节。如下图中0x8000~0x800F这16个字节表达了颜色信息全为“11”的R注册商标符号。


Join us

Have your own thoughts on this discussion? Wanna help others, avoid the mistakes you met before? Wanna contribute more to this or other topic? Just join us! Registration is free. Join us!