Dieser Patch erlaubt es euch in eurem Spiel VWF-Dialoge in Text-Boxen zu verwenden, wie es in einigen RPGs auf dem SNES der Fall war. Bisher ist der Einsatz leider noch ziemlich kompliziert und die Readme habe ich auch noch nicht ins Deutsche übersetzt. Die englische Readme ist dafür aber umso detailierter.
-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.
Sag dann einfach hier Bescheid, falls du irgendetwas nicht verstehst oder etwas nicht funktioniert. Unter Umständen kann die Readme nämlich hier und da vielleicht doch schwer zu verstehen sein, insbesondere weil sie ja nur auf Englisch ist.
-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.
Na ja,das Readme ist super geschrieben,ich verstehe alles,aber was ist das:
Zitat von Readme:
I really recommend you get YY-CHR v0.99, though. Nope, YY-CHR v0.98 won't do in this case. YY-CHR v0.99 has a very special and useful feature which YY-CHR v0.98 doesn't have and which is needed for editing fonts. I'll use YY-CHR v0.99 for all tile editor references in this Readme.
Wo kriegt man YY-CHR v0.99?
Und hier ist ein Bild :
´s gibt badische und unsymbadische
Was?! Die Signaturlänge wurde auf 1024 Zeichen beschränkt? #notmysignaturelength
Hehe!
Wegen des Rahmens wahrscheinlich wohl eine zu hohe Nummer bei "!defframe" eingegeben?
Weshalb der Text zustande kommt, weiß ich noch nicht. Vielleicht die Message Pointers bearbeitet? Oder vwftable.txt? Oder den Dialog selbst?
Könntest mir ja einfach mal alle Veränderungen zeigen, die du vorgenommen hast, dann könnte ich das untersuchen.
-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.
macro vramprepare(vramsettings, vramaddress, readword, readbyte)
lda
sta $2115
rep #$20
lda
sta $2116 ; "lda $2139" for word VRAM reads
sep #$20 ; "lda $2139/$213A" for byte VRAM reads
endmacro
; A simple Macro for DMA transfers
macro dmatransfer(channel, dmasettings, destination, sourcebank, sourcehigh, sourcelow, bytes)
lda
sta $4340
lda
sta $4341
lda ; I put the label close to the opcode
sta $4342 ; to allow length definitions
lda
sta $4343
lda
sta $4344
rep #$20
lda
sta $4345
sep #$20
lda
sta $420B
endmacro
; A macro for MVN transfers
macro mvntransfer(bytes, start, source, destination)
phb
lda.b # ; Calculate starting index
sta $211B
lda.b #>>16
sta $211B
lda #$00
sta $211C
lda
sta $211C
rep #$30
lda $2134 ; Add source address
clc ; to get new source address
adc.w #
tax
ldy.w # ; Destination address
lda.w #-1 ; Number of bytes
db $54 ; MVN opcode in Hex
db >>16
db >>16
sep #$30
plb
endmacro
; This section handles RAM initialization. It initializes the used
; RAM addresses at game startup, title screen and Game Over to
; prevent glitches and possible crahses.
InitCall:
jsr InitRAM ; RAM init on game start
stz $0100
stz $0109
jml $00805B|$800000
InitMode:
sty $00
pha
lda $0100
cmp #$03
bne .NoTitle
jsr InitRAM ; RAM init on Title Screen
.NoTitle
pla
rep #$30
jml $0086E6|$800000
InitRAM:
phx
rep #$30
ldx #$0000
lda #$0000
.InitVarRAM
sta !varram,x ; Initialize RAM
inx #2
cpx #$00C8 ; Number of bytes
bne .InitVarRAM
sep #$30
.SetDefaults
lda !defbg ; Set default values
sta !boxbg
lda !defframe
sta !boxframe
lda.b !bgcolor
sta !boxcolor
lda.b !bgcolor>>8
sta !boxcolor+1
.SpecialNMI
stz $11 ; Else load special NMI
lda #$81 ; Disable IRQ
sta $4200
lda #$00 ; Set layer 3 X scroll to $0100
sta $2111
lda #$01
sta $2111
lda #$1F ; Set layer 3 Y scroll to $011F
sta $2112
lda #$01
sta $2112
.End
plx
jml $0082B0|$800000
.NMITable
db $00,$00,$00,$01,$01
db $01,$01,$01,$01,$01
db $01,$01,$01,$00,$00
;;;;;;;;;;;;;
;Tile Buffer;
;;;;;;;;;;;;;
; This buffers code to save time in V-Blank.
Buffer:
phx
phy
pha
phb
php
phk
plb
lda $13D4
beq .NoPause
bra .End
.NoPause
lda !vwfmode ; Prepare jump to routine
beq .End
asl
tax
lda .Routinetable,x
sta $00
inx
lda .Routinetable,x
sta $01
phk
pla
sta $02
lda !freezesprites ; Freeze sprites if flag is set
beq .NoFreezeSprites
lda #$02
sta $13FB
sta $9D
sta $13D3
lda $15
and #$BF
sta $15
lda $16
and #$BF
sta $16
lda $17
and #$BF
sta $17
lda $18
and #$BF
sta $18
LineLoop:
lda !currentwidth
lsr
inc
tax
phx
lda #$08
rep #$20
and #$BFFF
sta [$03],y
dex
iny #2
inc
.Loop1
cpx #$00
beq .Prepare2
sta [$03],y
dex
iny #2
bra .Loop1
.Prepare2
ora #$4000
plx
.Loop2
cpx #$01
beq .End
sta [$03],y
dex
iny #2
bra .Loop2
.End
dec
sta [$03],y
sep #$20
rts
; This routine takes the variables !currentx, !currenty,
; !currentwidth and !currentheight to create a complete text box
; in RAM, utilizing all of the the subroutines below.
DrawBox:
lda !currentx ; Create background
sta $00
lda !currenty
sta $01
lda.b #!tileram+$3900
sta $03
lda.b #!tileram+$3900>>8
sta $04
lda.b #!tileram+$3900>>16
sta $05
lda !currentwidth
sta $06
lda !currentheight
sta $07
jsr DrawBG
lda !currentx ; Create frame
sta $00
lda !currenty
sta $01
lda.b #!tileram+$3900
sta $03
lda.b #!tileram+$3900>>8
sta $04
lda !currentwidth
sta $06
lda !currentheight
sta $07
jsr AddFrame
rts
; This subroutine calculates the correct position of a tilemap with
; $7E0000 as X coordinate and $7E0001 as Y coordinate.
; If $7E0002 = $01 then the tilemap consists of two bytes per tile.
; The result is returned at $7E0003-$7E0004 to be added to the
; tilemap starting address after this routine is done.
GetTilemapPos:
lda $02 ; Tilemap consists of double bytes?
beq .NoDouble
lda $00
asl
sta $00
lda #$20
asl
bra .Store
.NoDouble
lda #$20
.Store
sta $211B ; Multiply Y coordinate by $20/$40
lda #$00
sta $211B
sta $211C
lda $01
sta $211C
lda #$00
xba
lda $00
rep #$20
clc
adc $2134
sta $03
sep #$20
lda $02
beq .End
lda $00 ; Half $7E0000 again if previously doubled
lsr
sta $00
.End
rts
; This draws the background of a text box. $7E0001-$7E0004 are the
; same as in GetTilemapPos, but $7E0002 gets set automatically.
; $7E0006 contains the width and $7E0007 the height of the text box.
; $7E0008-$7E000A are used as temporary variables.
DrawBG:
lda $06 ; Skip if width or height equal $00
beq .End
lda $07
beq .End
lda $01
sta $0A
lda $07 ; Load text box height and add y position
clc ; for a backwards loop
adc $01
sta $01
lda #$01
sta $02
lda $03
sta $08
lda $04
sta $09
.InstLoopY
jsr GetTilemapPos ; Get tilemap position
rep #$20
lda $08
clc
adc $03
sta $03
sep #$20
lda $06
asl
tay
lda !boxpalette
asl #2
ora #$20
xba
lda #$01
rep #$20
dec $01
lda $01
cmp $0A
bne .InstLoopY ; Loop to create multiple rows
.End
rts
; A routine which creates a text box frame in RAM. $7E0000-$7E0004
; are used the same way as in GetTilemapPos, except for $7E0002,
; which is used as a temporary variable here. $7E0005 contains the
; tilemap bank, $7E0006 the text box width and $7E0007 the text box
; height. $7E0008-$7E000D are used as temporary variables. At the
; same time $7E000A is the tile number and $7E000B the "flip
; vertically" flag for the DrawTile subroutine.
AddFrame:
lda $03 ; Preserve tilemap address
sta $08
lda $04
sta $09
jsr SetPos
lda $07 ; Draw central tiles (vertical)
inc #2
sta $0C
lda #$07
sta $0A
stz $0B
.VerticalLoop
jsr DrawTile
rep #$20
lda $03
clc
adc #$0040
sta $03
sep #$20
dec $0C
lda $0C
bne .VerticalLoop
jsr DrawLine ; Draw top and bottom of text box
lda #$01
sta $02
lda $01
sta $0D
inc $01
jsr SetPos
lda #$06
sta $0A
jsr DrawTile
lda $0D
clc
adc $07
sta $01
jsr SetPos
lda #$80
sta $0B
jsr DrawTile
inc $01
jsr DrawLine
lda $0D
sta $01
rts
; Draw horizontal lines of the text box frame
DrawLine:
lda #$04 ; Prepare filling
sta $0A
jsr SetPos
lda $06
beq .ZeroWidth
inc
lsr
sta $0C
and #$01 ; If uneven width skip first tile
beq .HorizontalLoop
bra .SkipDraw
.HorizontalLoop
jsr DrawTile ; Fill lines horizontally
.SkipDraw
rep #$20
inc $03
inc $03
dey #4
sep #$20
dec $0C
lda $0C
bne .HorizontalLoop
lda #$05 ; Draw central part
sta $0A
jsr DrawTile
jsr SetPos
rep #$20
inc $03
inc $03
dey #4
sep #$20
lda #$03 ; Draw second and second last tile
sta $0A
jsr DrawTile
jsr SetPos
.ZeroWidth
lda #$02 ; Draw outer parts
sta $0A
jsr DrawTile
rts
; A short routine to easier get the position for drawing tiles
SetPos:
jsr GetTilemapPos
rep #$20
lda $08
clc
adc $03
sta $03
sep #$20
lda $06 ; Use Y register for right half of text box
asl
inc #2
tay
rts
; Draw one or two tiles in a line
DrawTile:
lda.b #!framepalette<<2|$20
ora $0B ; Vertical flip?
xba
lda $0A ; Tile number
rep #$20
sta [$03]
cpy #$00
beq .End
ora #$4000
sta [$03],y
.End
sep #$20
rts
CollapseWindow:
lda !counter ; Collapse text box
bne .SkipInit
lda !width
asl
sta !currentwidth
lda !height
asl
sta !currentheight
lda !xpos ; Text box init
sta !currentx
lda !ypos
sta !currenty
lda #$01
sta !counter
.SkipInit
lda !boxcreate ; Prepare jump to routine
asl
tax
lda .Routinetable,x
sta $00
inx
lda .Routinetable,x
sta $01
phk
pla
sta $02
.NoClearBox
rep #$20
lda !tile ; Increment tile counter
inc #2
sta !tile
and #$03FF
asl #4
clc
adc.w #!tileram ; Add starting address
sta $09
sep #$20
lda.b #!tileram>>16
sta $0B
lda !currentpixel
sta $4204
.NoNewTile
lda #$00
sta $4205
lda #$08
sta $4206
nop #8
lda $4216
sta !currentpixel
rep #$20
lda $4214
asl
clc
adc !tile
sta !tile
sep #$20
lda $4214
clc
adc !currentx
sta !currentx
lda !currentchoice
beq .End
dec
sta !currentchoice
bne .End
lda #$01
sta !cursormove
.End
rts
ClearBox:
jsr ClearScreen
lda !boxcreate
beq .Init
lda !xpos
sta !currentx
lda !ypos
sta !currenty
lda !width
asl
sta !currentwidth
lda !height
asl
sta !currentheight
jsr DrawBox
bra .Init
.Init
lda #$FE
sta !currenty
lda #$09
sta !tile
lda !boxpalette
asl #2
ora Emptytile+1
sta !property
lda !height
asl
sta !vwfmaxheight
jsr InitLine
rts
GetMessage:
lda !message
sta $211B
lda !message+1
sta $211B
lda #$00
sta $211C
lda #$03
sta $211C
rep #$20
lda $2134
clc
adc.w #Pointers
sta $00
sep #$20
lda.b #Pointers>>16
sta $02
ldy #$00
lda [$00],y
sta !vwftextsource
iny
lda [$00],y
sta !vwftextsource+1
iny
lda [$00],y
sta !vwftextsource+2
rts
TextCreation:
lda !wait
beq .NoWait
jmp .End
.NoWait
lda !cursormove
bne .Cursor
jmp .NoCursor
.Cursor
lda !currentchoice
bne .NotZeroCursor
lda #$01
sta !currentchoice
lda #$00
sta $0F
jsr BackupTilemap
jmp .DisplayCursor
.NotZeroCursor
lda $16
and #$0C
bne .CursorMove
lda $18
and #$80
cmp #$80
beq .ChoicePressed
jmp .End
.ChoicePressed
jsr ButtonBeep
jmp .CursorEnd
.CursorMove
lda #$01
sta $0F
jsr BackupTilemap
lda $16
and #$0C
cmp #$08
bcs .CursorUp
lda !currentchoice
inc
sta !currentchoice
bra .CursorSFX
.CursorUp
lda !currentchoice
dec
sta !currentchoice
.CursorSFX
jsr CursorBeep
lda !currentchoice
beq .ZeroCursor
lda !choices
cmp !currentchoice
bcs .DisplayCursor
lda #$01
sta !currentchoice
bra .DisplayCursor
.ZeroCursor
lda !choices
sta !currentchoice
.DisplayCursor
lda #$01
sta !cursorupload
lda #$00
sta $0F
jsr BackupTilemap
%mvntransfer($0060, #$00, !tileram+$38A0, !vwftileram)
lda !choicespace
cmp #$08
bcs .NoChoiceCombine
lda !choicewidth
clc
adc !edge
lsr #3
asl
tax
rep #$20
lda !tileram+$3894,x
and #$03FF
asl #4
clc
adc.w #!tileram
sta $03
sep #$20
lda.b #!tileram>>16
sta $05
.F0ClearForce
pla
lda #$01
sta !clearbox
jmp .F0ClearOptions
.CreateCursor
lda [$00],y
and #$0F
sta !choicespace
iny
lda [$00],y
sta !cursor
!16bit iny
!16bit lda [$00],y
!16bit sta !cursor+1
!16bit jsr IncPointer
jsr IncPointer
jsr IncPointer
jsr IncPointer
lda !vwftextsource
sta !choicetable
lda !vwftextsource+1
sta !choicetable+1
lda !vwftextsource+2
sta !choicetable+2
lda !edge
and #$07
sta !currentpixel
lda !firsttile
sta !nochoicelb
lda #$01
sta !firsttile
!16bit lda !cursor+1
!16bit sta !font
jsr GetFont
rep #$20
lda #$0001
sta $0C
lda.w #!cursor
sta $00
lda.w #!tileram+$38A0
sta $09
sep #$20
lda.b #!cursor>>16
sta $02
lda.b #!tileram+$38A0>>16
sta $0B
lda !currentx
pha
lda !tile
pha
lda #$00
sta !currentx
lda !currentpixel
sta $0E
lda !firsttile
sta $0F
jsl GenerateVWF|$800000
lda !vwfwidth
clc
adc !choicespace
sta !choicewidth
lda !boxcreate
beq .F0NoBG
rep #$20
lda #$0006
sta $06
lda.w #!tileram+$10
sta $00
lda.w #!tileram+$38A0
sta $03
sep #$20
lda.b #!tileram+$10>>16
sta $02
lda.b #!tileram+$38A0>>16
sta $05
jsl AddPattern|$800000
.F0NoBG
rep #$20
lda.w #!tileram+$38A0
sta $09
sep #$20
lda.b #!tileram+$38A0>>16
sta $0B
.F3_ChangePalette
lda !property
and #$E3
sta !property
ldy #$01
lda [$00],y
asl #2
inc
sta $2121
dec
ora !property
sta !property
lda !boxcolor
sta $2122
lda !boxcolor+1
sta $2122
jsr IncPointer
jsr IncPointer
jmp .NoButton
.NoWipe
lda !currentpixel
sta $0E
lda !firsttile
sta $0F
jsl GenerateVWF|$800000
lda !boxcreate
beq .End
lda.b #!tileram+$10
sta $00
lda.b #!tileram+$10>>8
sta $01
lda.b #!tileram+$10>>16
sta $02
lda !vwfgfxdest
sta $03
lda !vwfgfxdest+1
sta $04
lda !vwfgfxdest+2
sta $05
lda #$06
sta $06
jsl AddPattern|$800000
.End
jmp Buffer_End
GetFont:
lda #$06 ; Multiply font number with 6
sta $211B
lda #$00
sta $211B
sta $211C
lda !font
sta $211C
rep #$20
lda $2134
clc
adc.w #Fonttable ; Add starting address
sta $00
sep #$20
lda.b #Fonttable>>16
sta $02
ldy #$00
.Loop
lda [$00],y ; Load addresses from table
sta $0003,y
iny
cpy #$06
bne .Loop
rts
GetDestination:
rep #$20
lda !tile
and #$03FF ; Multiply tile number with 16
asl #4
clc
adc.w #!tileram ; Add starting address
sta $09
sep #$20
lda.b #!tileram>>16
sta $0B
rts
HextoDec:
jsr Convert8Bit
jsr GetZeros
!16bit lda #$00
!16bit sta !vwfroutine+1
!16bit sta !vwfroutine+3
!16bit sta !vwfroutine+5
!16bit sta !vwfroutine+7
!16bit sta !vwfroutine+9
rts
.Ones
sta !vwfroutine+4+!bitmode+!bitmode+!bitmode+!bitmode
lda $03
sta !vwfroutine+3+!bitmode+!bitmode+!bitmode
lda $02
sta !vwfroutine+2+!bitmode+!bitmode
.NoPause
lda !vwfmode ; Prepare jump to routine
beq .End
asl
tax
lda .Routinetable,x
sta $00
inx
lda .Routinetable,x
sta $01
phk
pla
sta $02
lda #$F0 ; Hide Status Bar item
sta $02E1
jml [$0000]
.End
plp ; Return
plb
pla
ply
plx
lda !vwfmode ; Skip Status Bar in dialogues
bne .SkipStatusBar
lda $0D9B
lsr
bcs .SkipStatusBar
phk ; Display Status Bar
per $0006
pea $84CE
jml $008DAC|$800000
lda !boxpalette ; Set BG and letter color
asl #2
inc
sta $2121
ldx #$00
.BoxColorLoop
lda !boxcolor,x
sta $2122
inx
cpx #$06
bne .BoxColorLoop
lda !framepalette ; Set frame color
asl #2
inc
sta $2121
phk
pla
sta $02
lda #$06
sta $211B
lda #$00
sta $211B
sta $211C
lda !boxframe
sta $211C
nop
rep #$20
lda $2134
clc
adc.w #Palettes
sta $00
sep #$20
ldy #$00
.FrameColorLoop
lda [$00],y
sta $2122
iny
cpy #$06
bne .FrameColorLoop
.End
lda !vwfmode
inc
sta !vwfmode
jmp VBlank_End
PrepareScreen: ; Upload graphics and tilemap to VRAM
%vramprepare(#$80,#$4000,"","")
%dmatransfer(#$10,#$01,#$18,".b #!tileram>>16",".b #!tileram>>8",".b #!tileram",#$00B0)
lda !edge
lsr #3
sta !currentx
lda !currenty
pha
sec
sbc !choices
sec
sbc !choices
sta !currenty
lda !currentchoice
dec
asl
clc
adc !currenty
sta !currenty
lda #$00
sta !vwfwidth
lda !edge
and #$07
clc
adc !choicewidth
sta !currentpixel
rep #$20
lda !tile
and #$FC00
ora #$038A
sta !tile
sep #$20
jsr WriteTilemap
pla
sta !currenty
.CursorEnd
lda #$00
sta !cursorend
lda !currentchoice
dec
sta !currentchoice
asl
clc
adc !currentchoice
tay
lda !choicetable
sta $00
lda !choicetable+1
sta $01
lda !choicetable+2
sta $02
lda [$00],y
sta !vwftextsource
iny
lda [$00],y
sta !vwftextsource+1
iny
lda [$00],y
sta !vwftextsource+2
lda #$00
sta !cursormove
sta !choices
sta !currentchoice
sta !vwfchar
!16bit sta !vwfchar+1
lda #$01
sta !clearbox
jmp .Return
print ""
print "VWF Creation Routine at address $",pc,"."
;$00 : Text
;$03 : GFX 1
;$06 : Width
;$09 : Destination
;$0C : Number of Bytes -> GFX 2
;$0E : Current Pixel
;$0F : First Tile?
GenerateVWF:
lda $0E
sta !currentpixel
lda $0F
sta !firsttile
rep #$20
lda $0C
sta !vwfbytes
sep #$20
lda $05 ; Get GFX 2 Offset
sta $0E
rep #$20
lda $03
clc
adc #$0020
sta $0C
.Read
lda [$00] ; Read character
inc $00
!16bit inc $00
!8bit sep #$20
sta !vwfchar
!16bit sep #$20
!16bit lda !vwfchar+1
!16bit sta !font
!16bit jsr GetFont
!16bit lda $05
!16bit sta $0E
!16bit rep #$20
!16bit lda $03
!16bit clc
!16bit adc #$0020
!16bit sta $0C
!16bit sep #$20
!16bit lda !vwfchar
tay
lda [$06],y ; Get width
sta !vwfwidth
lda !vwfmaxwidth
sec
sbc !vwfwidth
sta !vwfmaxwidth
.Begin
lda !vwfchar ; Get letter offset into Y
sta $211B
lda #$00
sta $211B
sta $211C
lda #$40
sta $211C
rep #$10
ldy $2134
ldx #$0000
.Draw
lda !currentpixel
sta $0F
lda [$03],y ; Load one pixelrow of letter
sta !vwftileram,x
lda [$0C],y
sta !vwftileram+32,x
lda #$00
sta !vwftileram+64,x
.Check
lda $0F
beq .Skip
lda !vwftileram,x ; Shift to the right
lsr
sta !vwftileram,x
lda !vwftileram+32,x
ror
sta !vwftileram+32,x
lda !vwftileram+64,x
ror
sta !vwftileram+64,x
dec $0F
bra .Check
Ich hab' nur den Text: "!textfreespace = !freespace+$010000 ; Text freespace" in "!textfreespace = $258000 ; Text freespace" geändert.
Alle anderen .txt,.bin und .asm Dateien sind unverändert.
EDIT:Wie muss ich den die Grafiken einfügen,damit richtige Buchstaben vorhanden sind???
´s gibt badische und unsymbadische
Was?! Die Signaturlänge wurde auf 1024 Zeichen beschränkt? #notmysignaturelength
Seltsam. Hast du denn vorher auch überprüft, ob $248000 und $258000 tatsächlich Freespace sind und nicht vielleicht schon von einem anderen Patch oder Tool belegt werden?
EDIT:
Ach ja: Welche Version von Lunar Magic hast du denn genommen und hast du es an einer komplett neuen ROM probiert oder an einer bereits veränderten?
-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.
Nein, hab auch 2 MB benutzt. Welche Version von Lunar Magic benutzt du? Und hast du die ROM vorher einmal in Lunar Magic geöffnet und abgespeichert?
-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.
Lunar Magic 1.71 sollte funktionieren, damit habe ich's getestet. Habe auch 1.65, 1.81 und 1.82 getestet und haben alle funktioniert.
Das mit Lunar Magic solltest du aber machen. Also: Zuerst eine Clean ROM holen, dann in Lunar Magic öffnen, irgendetwas verändern und abspeichern. Dann noch auf 2MB erhöhen - wenn du willst - und dann patchen.
-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.
Schön, dass es nun doch noch funktioniert hat!
Konnte es bisher noch nicht auf SMC Central posten, da das C3 Forum noch nicht eröffnet wurde.
-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.
Schön, dass es nun doch noch funktioniert hat!
Konnte es bisher noch nicht auf SMC Central posten, da das C3 Forum noch nicht eröffnet wurde.
Haha auf SMWC werden die mit ellen langen Texten voll Idioten sein!^^ "I had the same idea!" oder so ne scheiße XD
aber!
VERDAMMT NOCHMAL YOU'RE AWESOME!! ich werde es mir anschauen...schade das du nicht einen Hack( oder Teamhack z.B.) dazu zeigen kannst, das wäre cool gewesen
RPG Hacker > all, is nun mal so Leute
Wie kritisch man doch gegenüber dem System wird, wenn man älter wird...
schade das du nicht einen Hack( oder Teamhack z.B.) dazu zeigen kannst, das wäre cool gewesen
Stimmt schon, aber wann hätte ich den wohl machen sollen, wenn ich Tag ein Tag aus an meinem Patch saß?
-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.
Hm, joa, gar nicht schlecht. Hätte ich nicht ganz viel besser hingekriegt.
...Scherz, das ist einfach perfekt und viel zu gut, als das ich's hätte machen können. Das Ding hat mir schon zwei Orgasmen gegeben, und ich hab's noch nicht mal runtergeladen.
Schön, dann habe ich mein Ziel ja schon zweimal erreicht!
Na hoffentlich wird das auch nach dem Rutnerladen noch so ein Spaß bleiben.
-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.
Ich finde das richtig(!) gut das alles geklappt hat und nun Einsatzfähig ist.
Werde wohl später ein bisschen mit dem aus Fun rumtesten, falls ich es denn verstehen sollte :3
Omg ich habn Orgasmus gekriegt, als du diese ganz vielen Auswahlmöglichkeiten hattest und diese orangen Texte beim Schlossturm da(wo auch der japanische Text kam)
Ich habe das Video vorher übersehen Aber jetzt...omg ich probiers sofort aus
Wie kritisch man doch gegenüber dem System wird, wenn man älter wird...