lorom ORG $8BA0EF ;#$A0EF TABLE (sprite init. setup; pointer to code (typically RTS), pointer to sprite graphic AI) DW $9CBC,$9CCF,$A03D ;1994 DW $9D4A,$93D9,$A055 ;Nintendo DW $9DC3,$93D9,$A079 ;Presents DW $9E45,$93D9,$A09D ;Metroid 3 DW $9EB3,$93D9,$A0C5 ;super metroid title logo, long frame delay DW $9ED6,$93D9,$A0D3 ;nintendo logo, long frame delay DW $9EFF,$93D9,$A0E1 ;'(C) 1994 Nintendo', long frame delay DW $9B1A,$93D9,$A0CB ;super metroid title logo, short frame delay DW $9B2D,$93D9,$A0D9 ;nintendo logo, short frame delay DW $9B40,$93D9,$A0E7 ;'(C) 1994 Nintendo', short frame delay ;TEXT ON SCREEN-------------------------------------------------- ;"1994" ORG $8BA03D ;sprite graphic AI DW $003C,$0000 ;Frame delay before text begins appearing DW $0008,$8862 ;Frame delay and pointer to tilemap in $8C DW $0008,$886E ;Frame delay and pointer to tilemap in $8C DW $0008,$8884 ;Frame delay and pointer to tilemap in $8C DW $002D,$88A4 ;Frame delay and pointer to tilemap in $8C DW $9CE1 ;set up $1F51 (first jump in gamestate 01 main loop) scrolling and zoom for mode7 slide DW $9438 ;delete sprite object header ORG $8B9CBD DW $0081 ;text starting point on screen, x-position ORG $8B9CC3 DW $0070 ;text starting point on screen, y-position ORG $8B9CC9 DW $0200 ;text palette indexing ;"NINTENDO" ORG $8BA055 ;sprite graphic AI DW $0008,$88CE ;Frame delay and pointer to tilemap in $8C DW $0008,$88DA ;Frame delay and pointer to tilemap in $8C DW $0008,$88F0 ;Frame delay and pointer to tilemap in $8C DW $0008,$8910 ;Frame delay and pointer to tilemap in $8C DW $0008,$893A ;Frame delay and pointer to tilemap in $8C DW $0008,$896E ;Frame delay and pointer to tilemap in $8C DW $0008,$89AC ;Frame delay and pointer to tilemap in $8C DW $002D,$89F4 ;Frame delay and pointer to tilemap in $8C DW $9D5D ;set up $1F51 (first jump in gamestate 01 main loop) scrolling and zoom for mode7 slide DW $9438 ;delete sprite object header ORG $8B9D4B DW $0081 ;text starting point on screen, x-position ORG $8B9D51 DW $0070 ;text starting point on screen, y-position ORG $8B9D57 DW $0200 ;text palette indexing ;"PRESENTS" ORG $8BA079 ;sprite graphic AI DW $0008,$8A46 ;Frame delay and pointer to tilemap in $8C DW $0008,$8A52 ;Frame delay and pointer to tilemap in $8C DW $0008,$8A68 ;Frame delay and pointer to tilemap in $8C DW $0008,$8A88 ;Frame delay and pointer to tilemap in $8C DW $0008,$8AB2 ;Frame delay and pointer to tilemap in $8C DW $0008,$8AE6 ;Frame delay and pointer to tilemap in $8C DW $0008,$8B24 ;Frame delay and pointer to tilemap in $8C DW $002D,$8B6C ;Frame delay and pointer to tilemap in $8C DW $9DD6 ;set up $1F51 (first jump in gamestate 01 main loop) scrolling and zoom for mode7 slide DW $9438 ;delete sprite object header ORG $8B9DC4 DW $0081 ;text starting point on screen, x-position ORG $8B9DCA DW $0070 ;text starting point on screen, y-position ORG $8B9DD0 DW $0200 ;text palette indexing ;"METROID_3" ORG $8BA09D ;sprite graphic AI DW $0008,$8BBE ;Frame delay and pointer to tilemap in $8C DW $0008,$8BCA ;Frame delay and pointer to tilemap in $8C DW $0008,$8BE0 ;Frame delay and pointer to tilemap in $8C DW $0008,$85C8 ;Frame delay and pointer to tilemap in $8C DW $0008,$85F2 ;Frame delay and pointer to tilemap in $8C DW $0008,$867D ;Frame delay and pointer to tilemap in $8C DW $0008,$86BB ;Frame delay and pointer to tilemap in $8C DW $0008,$8703 ;Frame delay and pointer to tilemap in $8C DW $0078,$874B ;Frame delay and pointer to tilemap in $8C DW $9E58 ;set up $1F51 (first jump in gamestate 01 main loop) scrolling and zoom for mode7 slide DW $9438 ;delete sprite object header ORG $8B9E46 DW $0081 ;text starting point on screen, x-position ORG $8B9E4C DW $0070 ;text starting point on screen, y-position ORG $8B9E52 DW $0200 ;text palette indexing ;"SUPER METROID" TITLE LOGO ORG $8BA0C5 ;sprite graphic AI DW $0020,$879D ;Frame delay and pointer to tilemap in $8C DW $9ECD ORG $8B9EB4 DW $0080 ;sprite position on screen, x-position ORG $8B9EBA DW $0030 ;sprite position on screen, y-position ORG $8B9EC0 DW $0400 ;palette indexing ;"SUPER METROID" TITLE LOGO ORG $8BA0CB ;sprite graphic AI DW $0001,$879D ;Frame delay and pointer to tilemap in $8C DW $94BC DW $A0CB ORG $8B9B1B DW $0080 ;sprite position on screen, x-position ORG $8B9B21 DW $0030 ;sprite position on screen, y-position ORG $8B9B27 DW $0400 ;palette indexing ;"NINTENDO" LOGO ORG $8BA0D3 ;sprite graphic AI DW $0020,$80BB ;Frame delay and pointer to tilemap in $8C DW $9EF0 ORG $8B9ED7 DW $0080 ;sprite position on screen, x-position ORG $8B9EDD DW $0051 ;sprite position on screen, y-position ORG $8B9EE3 DW $0200 ;palette indexing ;"NINTENDO" LOGO ORG $8BA0D9 ;sprite graphic AI DW $0001,$80BB ;Frame delay and pointer to tilemap in $8C DW $94BC DW $A0D9 ORG $8B9B2E DW $0080 ;sprite position on screen, x-position ORG $8B9B34 DW $0051 ;sprite position on screen, y-position ORG $8B9B3A DW $0200 ;palette indexing ;'(C) 1994 Nintendo' ORG $8BA0E1 ;sprite graphic AI DW $0020,$8103 ;Frame delay and pointer to tilemap in $8C DW $9F19 ORG $8B9F00 DW $0080 ;text starting point on screen, x-position ORG $8B9F06 DW $00C4 ;text starting point on screen, y-position ORG $8B9F0C DW $0800 ;text palette indexing ;'(C) 1994 Nintendo' ORG $8BA0E7 ;sprite graphic AI DW $0001,$8103 ;Frame delay and pointer to tilemap in $8C DW $94BC DW $A0E7 ORG $8B9B41 DW $0080 ;text starting point on screen, x-position ORG $8B9B47 DW $00C4 ;text starting point on screen, y-position ORG $8B9B4D DW $0800 ;text palette indexing ;Mode7 sliding scenes-------------------------------------------------------------- ;RAM addresses used: ;$198F adjusts zoom level (#$0100 is fullscreen normal view) (stored to $78 and $7E) ; (7E:0078 First value for $211B with 'A' Mode 7 Matrix Parameter A. always changed while zooming and while rotating) ; (7E:007E First value for $211E with 'A' Mode 7 Matrix Parameter D. always seems to be the same like $78) ;$1991 (horizontal frame counter flag?) ;$1993 (stored to $B1 - Value for $210D (X scroll of BG 1)) ;$1995 (vertical frame counter flag?) ;$1997 (stored to $B3 - Value for $210E (Y scroll of BG 1)) ;$1999 (value added to horizontal frame counter flag? typically #$8000) ;$199B added to $1993 to adjust x-scrolling of BG-1 (negative value will scroll left, positive will scroll right) ;$199D (value added to vertical frame counter flag? typically #$8000) ;$199F added to $1997 to adjust y-scrolling of BG-1 (negative will scroll up, positive will scroll down) ;low slide R-to-L, first sliding sequence ORG $8B9CF0 DW $0048 ;zoom level ORG $8B9CF6 DW $013B ;X-scroll of BG-1, stored to $1993 (starting x position on screen) ORG $8B9CFF DW $00E1 ;Y-scroll of BG-1, stored to $1997 (starting y position on screen) ORG $8B9D08 DW $FFFE ;added to $1993 to adjust x-scrolling of BG-1 each frame (negative value will scroll left, positive will scroll right) ORG $8B9D2B DW $FFF9 ;compared to $1993 (stopping x position of horizontal slide) ;high slide R-to-L, 2nd sliding sequence ORG $8B9D6C DW $$0060 ;zoom level ORG $8B9D72 DW $$002C ;X-scroll of BG-1, stored to $1993 (starting x position on screen) ORG $8B9D7B DW $$FF65 ;Y-scroll of BG-1, stored to $1997 (starting y position on screen) ORG $8B9D84 DW $FFFE ;added to $1993 to adjust x-scrolling of BG-1 each frame (negative value will scroll left, positive will scroll right) ORG $8B9DA4 DW $FF50 ;compared to $1993 (stopping x position of horizontal slide) ;vertical slide T-to-B, 3rd sliding sequence ORG $8B9DE5 DW $0060 ;zoom level ORG $8B9DEB DW $FF4F ;X-scroll of BG-1, stored to $1993 (starting x position on screen) ORG $8B9DF4 DW $FF60 ;Y-scroll of BG-1, stored to $1997 (starting y position on screen) ORG $8B9E03 DW $0001 ;added to $1997 to adjust y-scrolling of BG-1 each frame (negative will scroll up, positive will scroll down) ORG $8B9E26 DW $00A3 ;compared to $1997 (stopping y position of vertical slide) ;title appear - zoom out from center, 4th "sliding" sequence ORG $8B9E67 DW $0043 ;zoom level, this value is incrimented every frame until it reaches #$0100 (full screen) ;values above #$0100 may cause screen rotations or have other drastic effects