Allgemeine Hex- und ASM-Fragen

geschrieben am 11.07.2012 23:29:36
( Link )
Zitat
21614 $04:9414 2 bytes Mario physics Speed of Mario on the OW (Higher = faster). First byte is normal ground, second is stairs.
WAS, WIE, WO???? Ne, Ne ich bin nicht die Signatur ...
Ich putze hier nur.

Mein Hack:
<!-- m --><a class="postlink" href="http://www.youtube.com/user/conankun88#p/a/u/0/8vdcyGylrg0">http://www.youtube.com/user/conankun88# ... vdcyGylrg0</a><!-- m -->
geschrieben am 12.07.2012 9:55:16
( Link )
Bessere Option: das hier.
geschrieben am 12.07.2012 13:14:14
( Link )
Danke.jetzt is mario 256mal schneller xD
nein nein ,hehe.vielen dank
Signaturen sind bescheuert.
geschrieben am 12.07.2012 18:07:06
( Link )
Zitat von SMW-Central ROM-Map:
PC-Address: 21614
SNES-Address: $04:9414
Size: 2 bytes
Type: Mario physics
Description: Speed of Mario on the OW (Higher = faster). First byte is normal ground, second is stairs.

Nicht zu hoch einstellen, sonst fliegt Mario aus den Kurven, ich glaube das 1,5 fache vom Orginalwert geht noch, bin mir aber nicht sicher.

Fake EDIT: Soviel mühe :U
Tutorials: ExAnimation | YouTube: W4mp3 | Twitter: https://twitter.com/SMWW4mp3
geschrieben am 14.07.2012 22:16:24
( Link )
Hey ich hätte mal eine frage in bezug auf windowing HDMA..
weiß zufällig jemand welche werte ich in $40-$44 und in $212C-$212F
schreiben muss damit der windowing efeckt transparent ist?
WAS, WIE, WO???? Ne, Ne ich bin nicht die Signatur ...
Ich putze hier nur.

Mein Hack:
<!-- m --><a class="postlink" href="http://www.youtube.com/user/conankun88#p/a/u/0/8vdcyGylrg0">http://www.youtube.com/user/conankun88# ... vdcyGylrg0</a><!-- m -->
geschrieben am 16.07.2012 16:47:08
( Link )
Ok die frage oben hat sicher erledigt jedoch habe ich eine neue Frage...
Wie kann ich die Position des kleinen Bonus star Counters verändern (eine position nach links und der Große bonus star counter ist aus)
und ich kann keines der beiden Statusbar tools verwenden
WAS, WIE, WO???? Ne, Ne ich bin nicht die Signatur ...
Ich putze hier nur.

Mein Hack:
<!-- m --><a class="postlink" href="http://www.youtube.com/user/conankun88#p/a/u/0/8vdcyGylrg0">http://www.youtube.com/user/conankun88# ... vdcyGylrg0</a><!-- m -->
geschrieben am 16.07.2012 17:00:25
( Link )
Durchsuche einfach mal die ROM Map nach "Bonus Stars" und überprüfe die entsprechende Addresse (+/- 3) in all.log. Dann solltest du die Stelle finden, wo die Status Bar beschrieben wird und solltest ganz leicht einen Patch oder Hex Edit benutzen können, um den Counter zu verschieben.
-Das quadratische Rad neu erfinden-
Mit das quadratische Rad neu erfinden (englisch Reinventing the square wheel) bezeichnet man die Bereitstellung einer schlechten Lösung, wenn eine gute Lösung bereits existiert.

-Slowsort-
Slowsort (von engl. slow: langsam) ist ein langsamer, rekursiver Sortieralgorithmus, der nach dem Prinzip Vervielfache und kapituliere (engl. Multiply and surrender, eine Parodie auf Teile und herrsche) arbeitet.

geschrieben am 16.07.2012 18:14:21
( Link )
Das problem ist nur dadurch das ich Smallhackers Statusbar Edit benutzt habe (oder aus einem anderen grund) hat sich der code an der stelle komplett verändert... aber ich versuche mal ob ich mit einem disassambler weiter komme...
WAS, WIE, WO???? Ne, Ne ich bin nicht die Signatur ...
Ich putze hier nur.

Mein Hack:
<!-- m --><a class="postlink" href="http://www.youtube.com/user/conankun88#p/a/u/0/8vdcyGylrg0">http://www.youtube.com/user/conankun88# ... vdcyGylrg0</a><!-- m -->
geschrieben am 16.07.2012 20:09:13
( Link )
Kann den nicht Status Effect verschieben?
geschrieben am 16.07.2012 22:02:38
( Link )
sobald ich statusefeckt benutzte schmirt die rom leider ab...
aber ich habe es mitllerweile geschafft das es so aussieht wie es soll ...
nicht unbedingt auf die schönste weise aber klappt
WAS, WIE, WO???? Ne, Ne ich bin nicht die Signatur ...
Ich putze hier nur.

Mein Hack:
<!-- m --><a class="postlink" href="http://www.youtube.com/user/conankun88#p/a/u/0/8vdcyGylrg0">http://www.youtube.com/user/conankun88# ... vdcyGylrg0</a><!-- m -->
geschrieben am 22.07.2012 23:28:19
( Link )
Bei LevelASM ...

was ist der unterschied zwischen levelinitcode und levelcode?
Signaturen sind bescheuert.
geschrieben am 22.07.2012 23:46:23
( Link )
LevelCode läuft bei LevelASM auf jedem Frame, also die ganze Zeit im Level.
LevelInitCode läuft nur einmal ab, bevor das Level lädt.
Tutorials: ExAnimation | YouTube: W4mp3 | Twitter: https://twitter.com/SMWW4mp3
geschrieben am 23.07.2012 22:19:51
( Link )
Neue Frage in bezug auf den wave generator..
Code

WAVE:

REP #$20 ;\ Set processor 16 bit
LDA #$0D02 ;| $4330 = $210D
STA $4330 ;| $4331 = Mode 02
LDA #$9E00 ;|
STA $4332 ;| Destination: $7F9E00
LDY #$7F ;| (low and high byte)
STY $4334 ;|
SEP #$20 ;/ Set processor 8 bit

LDA #$08 ;\ Enable HDMA
TSB $0D9F ;/ on channel 3

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;HDMA Main Code
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

LDX #$00 ;\ Init of
LDY #$00 ;/ X and Y

SEP #$20 ;\ Set processor 8 bit
LDA $13 ;| Set speed of waves 13
LSR A ;| Adding more LSR A
LSR A ;| will make it slower
STA $00 ;/ Store in scratch RAM

PHB ;\ Push data bank
PHK ;| Push program bank
PLB ;/ Pull data bank

Wave_Loop2:
LDA #$06 ;\ Set scanline height
STA $7F9E00,x ;| for each wave
TYA ;| Transfer Y to A
ADC $00 ;| Add in scratch RAM
AND #$0F ;| and transfer #$0F bytes
PHY ;| Push Y
TAY ;/ Transfer A to Y

LDA.w Wave_Table2,y ;\ Load in wave values
LSR A ;| half of waves only
CLC ;| Clear carry flag
ADC $1462 ;| Apply to layer 1
STA $7F9E01,x ;| X position low byte
LDA $1463 ;| And add nothing to
ADC #$00 ;| layer 1 X position
STA $7F9E02,x ;/ high byte

PLY ;\ Pull Y
CPY #$25 ;| Compare with #$25 scanlines
BPL End_Wave2 ;| If bigger, end HDMA
INX ;| Increase X
INX ;| Increase X
INX ;| Increase X
INY ;| Increase Y
BRA Wave_Loop2 ;/ Do the loop

End_Wave2:
PLB ;\ Pull data bank
LDA #$00 ;| End HMDA by writing
STA $7F9E03,x ;| #$00 here
RTS ;/ Return

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;Table Settings
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

Wave_Table2:
db $00
db $01
db $02
db $03
db $04
db $05
db $06
db $07
db $07
db $06
db $05
db $04
db $03
db $02
db $01
db $00


BGWAVE:
REP #$20 ;\ Set processor 16 bit
LDA #$1002 ;| $4340 = $2110
STA $4340 ;| $4341 = Mode 02
LDA #$9F00 ;|
STA $4342 ;| Destination: $7F9F00
LDY #$7F ;| (low and high byte)
STY $4344 ;|
SEP #$20 ;/ Set processor 8 bit

LDA #$10 ;\ Enable HDMA
TSB $0D9F ;/ on channel 4

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;HDMA Main Code
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

LDX #$00 ;\ Init of
LDY #$00 ;/ X and Y

SEP #$20 ;\ Set processor 8 bit
LDA $13 ;| Set speed of waves 13
LSR A ;| Adding more LSR A
LSR A ;| will make it slower
STA $00 ;/ Store in scratch RAM

PHB ;\ Push data bank
PHK ;| Push program bank
PLB ;/ Pull data bank

Wave_Loop:
LDA #$06 ;\ Set scanline height
STA $7F9F00,x ;| for each wave
TYA ;| Transfer Y to A
ADC $00 ;| Add in scratch RAM
AND #$0F ;| and transfer #$0F bytes
PHY ;| Push Y
TAY ;/ Transfer A to Y

LDA.w Wave_Table,y ;\ Load in wave values
LSR A ;| half of waves only
CLC ;| Clear carry flag
ADC $1468 ;| Apply to layer 2
STA $7F9F01,x ;| Y position low byte
LDA $1469 ;| And add nothing to
ADC #$00 ;| layer 2 Y position
STA $7F9F02,x ;/ high byte

PLY ;\ Pull Y
CPY #$25 ;| Compare with #$25 scanlines
BPL End_Wave ;| If bigger, end HDMA
INX ;| Increase X
INX ;| Increase X
INX ;| Increase X
INY ;| Increase Y
BRA Wave_Loop ;/ Do the loop

End_Wave:
PLB ;\ Pull data bank
LDA #$00 ;| End HMDA by writing
STA $7F9F03,x ;| #$00 here
RTS ;/ Return

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;Table Settings
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

Wave_Table:
db $00
db $01
db $02
db $03
db $04
db $05
db $06
db $07
db $07
db $06
db $05
db $04
db $03
db $02
db $01
db $00

Ich möchte jetzt dass die wellen erst ab einer bestimmten höhe verschoben werden...
Ich habe die Start Y position in $0F62 (16bit / es ist nicht die y position On-Screen)
Ich verstehe nicht viel von HDMA und habe keine ahnung wie ich das einbauen könnte...
kann mir jemand helfen?

mfg Zünni
WAS, WIE, WO???? Ne, Ne ich bin nicht die Signatur ...
Ich putze hier nur.

Mein Hack:
<!-- m --><a class="postlink" href="http://www.youtube.com/user/conankun88#p/a/u/0/8vdcyGylrg0">http://www.youtube.com/user/conankun88# ... vdcyGylrg0</a><!-- m -->
geschrieben am 02.08.2012 1:14:44
( Link )
Hey Leute ich hätte mal eine frage zum VRAM...
Ich will ein tile in den Vram schreiben bei $A0C4
weiß jemand wie ich das am einfachsten hinbekomme?
WAS, WIE, WO???? Ne, Ne ich bin nicht die Signatur ...
Ich putze hier nur.

Mein Hack:
<!-- m --><a class="postlink" href="http://www.youtube.com/user/conankun88#p/a/u/0/8vdcyGylrg0">http://www.youtube.com/user/conankun88# ... vdcyGylrg0</a><!-- m -->
geschrieben am 02.08.2012 1:25:44
( Link )
Zitat von mzünni:
Hey Leute ich hätte mal eine frage zum VRAM...
Ich will ein tile in den Vram schreiben bei $A0C4
weiß jemand wie ich das am einfachsten hinbekomme?


Kommt drauf. Zu welchem Zweck willst du das denn tun und wann?
-Das quadratische Rad neu erfinden-
Mit das quadratische Rad neu erfinden (englisch Reinventing the square wheel) bezeichnet man die Bereitstellung einer schlechten Lösung, wenn eine gute Lösung bereits existiert.

-Slowsort-
Slowsort (von engl. slow: langsam) ist ein langsamer, rekursiver Sortieralgorithmus, der nach dem Prinzip Vervielfache und kapituliere (engl. Multiply and surrender, eine Parodie auf Teile und herrsche) arbeitet.

geschrieben am 02.08.2012 1:27:12
( Link )
Theoretisch schreibst du so zu VRAM:
Code
STZ $2115 ;Resette VRAM Zeugs (braucht man nur einmal im code)
REP #$20
LDA ;Das ziel hier per vram.txt bestimmen
STA $2116
SEP #$20
LDA $A0C4 ;\Schreibe den Wert
STA $2118 ;/zum VRAM-Write Register (oder wie auch immer das heißt)

VRAM.txt

Wenn du also z.B. auf Layer 3 was schreiben willst, dann musst du einen Wert zwischen $5000 und $5FFF wählen.
Hier mal ein Beispiel (das hier soll ein "A"auf layer 3 in das obenlinke Eck zaubern):
Code
STZ $2115
REP #$20
LDA #$5000
STA $2116
SEP #$20
LDA #$0A
STA $2118
Tutorials: ExAnimation | YouTube: W4mp3 | Twitter: https://twitter.com/SMWW4mp3
geschrieben am 02.08.2012 3:03:32
( Link )
@RPG Hacker
-ich mache das während die statusbar geschriben wird
-und ich tuhe das weil es mich genervt hat das man unter dem M von Mario (im Original spiel) kein teil Platziren kann...

@W4mpe
Danke funktionirt Perfekt
WAS, WIE, WO???? Ne, Ne ich bin nicht die Signatur ...
Ich putze hier nur.

Mein Hack:
<!-- m --><a class="postlink" href="http://www.youtube.com/user/conankun88#p/a/u/0/8vdcyGylrg0">http://www.youtube.com/user/conankun88# ... vdcyGylrg0</a><!-- m -->
geschrieben am 02.08.2012 12:48:08
( Link )
Zitat von mzünni:
-ich mache das während die statusbar geschriben wird


Du musst dir aber im klaren sein, dass du VRAM nur während VBlanks beschreiben solltest, weil es sonst zu Glitches und Fehlern kommt. Die normale Status Bar-Routine (mit den SMW-Mirrorn) liegt nicht im VBLank, deswegen musst du erstmal einen Hijack-Punkt finden, der eben im VBlank liegt. Ich glaube UberASM kann hier helfen. Wenn ich das richtig in Erinnerung habe bietet das schon einen Spot im VBlank.
-Das quadratische Rad neu erfinden-
Mit das quadratische Rad neu erfinden (englisch Reinventing the square wheel) bezeichnet man die Bereitstellung einer schlechten Lösung, wenn eine gute Lösung bereits existiert.

-Slowsort-
Slowsort (von engl. slow: langsam) ist ein langsamer, rekursiver Sortieralgorithmus, der nach dem Prinzip Vervielfache und kapituliere (engl. Multiply and surrender, eine Parodie auf Teile und herrsche) arbeitet.

geschrieben am 02.08.2012 13:33:24
( Link )
Hm mir sind damit bis jetzt keine probleme aufgefallen weder in Zsnes/Bsnes/snes9x
WAS, WIE, WO???? Ne, Ne ich bin nicht die Signatur ...
Ich putze hier nur.

Mein Hack:
<!-- m --><a class="postlink" href="http://www.youtube.com/user/conankun88#p/a/u/0/8vdcyGylrg0">http://www.youtube.com/user/conankun88# ... vdcyGylrg0</a><!-- m -->
geschrieben am 02.08.2012 14:14:55
( Link )
Das kann ich mir nicht vorstellen, außer du hast bereits einen Punkt im VBLank erwischt, ohne es zu wissen.
-Das quadratische Rad neu erfinden-
Mit das quadratische Rad neu erfinden (englisch Reinventing the square wheel) bezeichnet man die Bereitstellung einer schlechten Lösung, wenn eine gute Lösung bereits existiert.

-Slowsort-
Slowsort (von engl. slow: langsam) ist ein langsamer, rekursiver Sortieralgorithmus, der nach dem Prinzip Vervielfache und kapituliere (engl. Multiply and surrender, eine Parodie auf Teile und herrsche) arbeitet.