git.y1.nz

gbdk-2020

GameBoy Development Kit
download: https://git.y1.nz/archives/gbdk.tar.gz
README | Files | Log | Refs | LICENSE

gbdk-lib/libc/targets/sm83/init_tt.s

      1         .include        "global.s"
      2 
      3         .area   _HOME
      4 
      5         ;; Initialize window tile table with B
      6 .init_wtt::
      7         LDH     A,(.LCDC)
      8         AND     #LCDCF_WIN9C00
      9         JR      Z,.is98
     10         JR      .is9c
     11         ;; Initialize background tile table with B
     12 .init_btt::
     13         LDH     A,(.LCDC)
     14         AND     #LCDCF_BG9C00
     15         JR      NZ,.is9c
     16 .is98:
     17         LD      HL,#0x9800      ; HL = origin
     18         JR      .init_tt
     19 .is9c:
     20         LD      HL,#0x9C00      ; HL = origin
     21 
     22 .init_tt::
     23         LD      DE,#0x0400      ; One whole GB Screen
     24 
     25 .init_vram::
     26         SRL     D
     27         RR      E
     28         JR      NC, 1$
     29 
     30         WAIT_STAT
     31         LD      A, B
     32         LD      (HL+),A
     33 1$:
     34         LD      A, D
     35         OR      E
     36         RET     Z
     37         
     38         INC     D
     39         INC     E
     40         JR      2$
     41 3$:
     42         WAIT_STAT
     43         LD      A, B
     44         LD      (HL+),A
     45         LD      (HL+),A
     46 2$:
     47         DEC     E
     48         JR      NZ, 3$
     49         DEC     D
     50         JR      NZ, 3$
     51         
     52         RET

This webpage is intended to be an accessible preview of this repository. To get a fuller picture, clone it and use the git CLI.