![]() |
|||||||||
| coding | |||||||||
|
There's not much here I'm afraid, aside from some S-NES utils and very old code examples. I hope one day, after my translation commitments are completed, to add more and dirverse stuff to this section. S-NES ASM 2 IPS Method.Wishing to code S-NES ASM to patch directly to translations, or modify
data/code in S-NES games? Then download this archive! ;) Old S-NES Projects #1This archive contains:
NotesPlease be aware that these were written when I was first learning programming, and were written without the aid of emulators or debuggers (just a disk and a copier!). The results were more educational than anything. Moreover, I *still* use the RAM Editor to this day for testing on a real S-NES. Here's some stuff you can all try with the RAM Editor - either on a real S-NES or emulator: RAM Editor ExplorationsThe RAM Editor allows you to explore your S-NES Hardware. Here is one document, widely available on the Internet and one of the earliest, which was copied from the S-NES Development Manual and gives you the PPU Register List (btw,the majority of early 'original' S-NES documents were plagarised from the Dev' Manual.. so much for l33tness :p ). Use it to refer to the following RAM-Editor examples: snesmap.txt. Here's an article I did on using the RAM editor a long while ago: =======================================================================
Mosaic Effects
==============
Here's an example of S-NES code using mosaic effects:
lda #$11 ; $xy: x=Mosaic Level, y=BG enable.
sta $002106 ; Store in 'Mosaic' Register.
The above code can be entered as follows:
1. Set "Address" to $002106
2. Press TR
3. Set "Write Value" as $11
4. Press B
You'll notice the picture has broken up into a mosaic effect.
If you wish to increase the effect, simply increase the value
of the high part (or nibble) of the byte, ie.: $21,$31,$41,etc.
========================================================================
Scrolling Effects
=================
Here's some example S-NES code of scrolling a Background by 128 ($80) pixels
to the left. S-NES scroll registers are "16-bit write twice" registers, in that
they take a 16-bit value in two 8-byte writes. (Best way to think of it is of a
Mail Man tearing a letter in half, and putting the two halves in one at a time! =P )
lda #$80 ; load low part of #$0080.
sta $00210d ; Store in 'Background 1 Horizontal Scroll' Register.
lda #$00 ; load high part of #$0080.
sta $00210d ; Store in 'Background 1 Horizontal Scroll' Register.
The above code can be entered in RAM-Editor as follows:
1. Set "Address" to $00210d
2. Press TR
3. Set "Write Value" as $80
4. Press B
5. Set "Write Value" as $00
6. Press B
==========================================================================
Colour Effects.
===============
lda #$02 ; Parameter for 'Fixed Colour Add/Sub' Enable.
sta $002130 ; Store in 'Initial Settings for Colour Add/Sub' Register.
lda #$71 ; Affect BG1 and Background colour.
sta $002131 ; Store in 'Designation of Colour Add/Sub' Register.
lda #$f7 ; %111 00111: RGB component set to 7.
sta $002132 ; Store in 'Fixed Colour Data' Register.
I'll leave this one for you to try!! =)
Please just try experimenting with any of the settings, and refer
to the S-NES PPU Register Reference!!
I hope you found this fun to play with some of that Hardware that's behind
those games you know 'n luv!! I would like to know if you found it
of any use! :)
-- FH
|
|||||||||