Page 5 of 6 FirstFirst ... 456 LastLast
Results 41 to 50 of 58

Thread: Videos: Custom PS3 Boot Logo Creator Homebrew App Arrives

  1. #41
    Join Date
    Apr 2005
    Posts
    23,636
    Yep, according to his blog he removed them now.

    To quote (via tizzyt-archive.blogspot.co.uk/2012/03/playstation-color-logo-creator-v25.html): "Future versions of PCLCv2.5+

    I will NOT be including Photoshop as a bundled option for editing and making the coldboots. A user has displayed great worry and so I respect his thoughts and will look into using other ways and programs to make coldboots easier.

    Reason: Photoshop used in the bundled version is a modded portable version I found online. While I have made the entire coldboot creator with functionality in mind I did in fact forget about the other issues. I will advise that anyone using my program should either completely remove it from their systems or use it without the included Photoshop.

    I apologize for the inconvenience."

  2. #42
    Join Date
    Apr 2005
    Posts
    23,636

    PS3 Fixed Easy Static RAF Converter by TizzyT is Now Available

    Following up on his previous updates, today PlayStation 3 developer TizzyT has released a fixed PS3 Easy Static RAF Converter v1.0 for those interested in converting PlayStation 3 ColdBoot files followed by version 1.0a below.

    Download: PS3 Fixed EasyStaticRAFConverter v1.0 / PS3 Fixed EasyStaticRAFConverter v1.0a

    To quote from his blog: Here is my previously released but not working StaticRafConverter. This is the finished and working / tested release.

    This will be the final revision of a Raf creation program as I believe this is the easiest to use. I will still make updates if bugs are found or if something added.

    Instructions:

    There are 2 ways of using this, One way is to simply drag a supported image over the tool's icon and a new folder is created in the same location as the image that was used. Inside the created folder is a coldboot.raf.

    The second way is to run the program normally and select an image. And press Convert after desired settings are selected. Using it this way provides a few simple minipulation features to adjust the logo and there is also a preview button to preview your logo.

    v1.0a Changes:
    • Version is now 1.0a (because its a small update)
    • Added Fill resize option
    • Saves a preview in output folder
    • Added a "Specify Output" option to change output location

    Planned:
    • A fade in/out effect has been requested, I might or might not get to that.

    Log:
    • This is version 1.0 of a new revision of PCLCv2.

    Adjustment settings:

    Resize, Reposition.

    There are also presets like Stretch, Zoom, anchor to top left/top right/top center/center left/center/center right/bottom left/bottom center/bottom right.

    Planned:
    • A modded version of this will be used in a dynamic theme editor I will be working on.
    • A Fill resizing option might come in later update.

    Update: In related PS3 homebrew news, TizzyT also made available JSXviewer, which is a tool for viewing and extracting .jsx files found in PS3 Themes with details below.

    Download: JSXviewer.exe

    This is fairly old and is unfinished (can't automatic decompile yet) but I was told I should put this here. Its a tool to view/extract info from .jsx files (usually found when dealing with themes). It might help in manual decompilation for now I guess. I might get around to finishing the auto decompile feature.

    Thanks Sandungas for the help.

    Finally, from sandungas: Before people asks... this tool is supposed to generate the original "javascript like" file used to compile .raf animations (inside dynamic themes and coldboot)

    It doesn't makes the decompilation yet, but it does the previous steps like cropping tables, generating a list of opcodes, etc... usefull to study how the compilation to decompilation works

    Thx

    In related news, TizzyT also made available GVD2PNG with details below, as follows:

    Download: GVD2PNG.exe

    I made a little application a while back called image2GVD which allowed people to create limited GVDs for eventually making PlayViews. This time I did the opposite and basically turns a GVD to a PNG. It takes the images from each layer, and combines them then saves them as <name of input file>_Layer<layer number>.png.

    Known Limitations:
    • Does not save Entry images (mosaic).
    • No real info output.

    I (or hopefully Ada) might get to figuring out the 1KB GVDs (again pointless), but still like to know how it works.

    If anyone has any suggestions please leave them below. And here is the source for v1.2:
    Code:
    Imports System.IO
    Imports System.Drawing
    
    Module Module1
        Sub Main()
            Console.WriteLine(vbTab & "GVD2PNG v1.2 - TizzyT")
            If My.Application.CommandLineArgs.Count = 0 Then Console.ReadKey()
            For Each arg As String In My.Application.CommandLineArgs
                Try
                    Dim File As String = System.IO.Path.GetFileNameWithoutExtension(arg)
                    Dim path As String = System.IO.Path.GetDirectoryName(arg).Trim("\")
                    Dim CrntGVD As New GVD(arg)
                    CrntGVD.SavePNGs(path & "\" & File)
                Catch ex As Exception
                    Console.WriteLine("Failed to process " & vbCrLf & arg & vbCrLf & ex.Message)
                    Console.ReadKey()
                End Try
            Next
        End Sub
    End Module
    
    Public Class GVD
        ' Static magic
        Private Shared ReadOnly GVEW0100JPEG0100() As Byte = _
            New Byte() {71, 86, 69, 87, 48, 49, 48, 48, 74, 80, 69, 71, 48, 49, 48, 48}
        Private GVD_Width As Integer
        Private GVD_Height As Integer
        ' Static BLK_
        Private Shared ReadOnly BLK_() As Byte = New Byte() {66, 76, 75, 95}
        Private DataBaseCount As Integer
        ' Static value 1
        Private Shared ReadOnly Static1() As Byte = New Byte() {0, 0, 0, 1, 0, 0, 0, 0}
        Private DataBase As New List(Of Entries)
        Private LengthOfEntries As Integer
        Private GVDreader As FileStream
        ' Structure for Each GVD image Entry
        Private Structure Entries
            Dim PosX As Integer
            Dim PosY As Integer
            Dim Level As Integer
            Dim ImageLength As Integer
            Dim PadLength As Integer
            Dim Width As Integer
            Dim Height As Integer
            Dim Image As Bitmap
            Public Sub New(ByVal OldEntry As Entries, ByVal Image As Bitmap)
                PosX = OldEntry.PosX
                PosY = OldEntry.PosY
                Level = OldEntry.Level
                ImageLength = OldEntry.ImageLength
                PadLength = OldEntry.PadLength
                Width = OldEntry.Width
                Height = OldEntry.Height
                Me.Image = Image
            End Sub
        End Structure
        ' Contructor
        Public Sub New(ByVal SrcGVD As String)
            If IO.File.Exists(SrcGVD) Then 'Checks to see if file actually exists
                GVDreader = New FileStream(SrcGVD, FileMode.Open, FileAccess.Read)
                Dim Magic(15) As Byte
                GVDreader.Read(Magic, 0, 16)
                'Checks for expected Magic
                If Magic.SequenceEqual(GVEW0100JPEG0100) Then
                    'Gets GVD header info
                    If ProcessHeader() Then
                        GVDreader.Seek(16, SeekOrigin.Current)
                        ' Process and populate Entries into Entries List
                        For i = 1 To DataBaseCount
                            ProcessEntry(i)
                        Next
                        ' Check for second occurence of BLK bytes
                        Dim BLKcheck(3) As Byte
                        GVDreader.Read(BLKcheck, 0, 4)
                        If BLKcheck.SequenceEqual(BLK_) Then
                            ' Skip Length of embedded images and static value
                            GVDreader.Seek(12, SeekOrigin.Current)
                            ' Redo all processed Entries by adding their respective image (fix this)
                            For i = 0 To DataBase.Count - 1
                                Dim Data(DataBase(i).ImageLength - 1) As Byte
                                GVDreader.Read(Data, 0, DataBase(i).ImageLength)
                                Using meh As New MemoryStream(Data)
                                    Dim sup As New Bitmap(meh)
                                    DataBase(i) = New Entries(DataBase(i), sup)
                                    meh.Close()
                                    meh.Dispose()
                                End Using
                                'Skip the length of the image pad to beginning of next image
                                GVDreader.Seek(DataBase(i).PadLength, SeekOrigin.Current)
                            Next
                        Else
                            Throw New Exception("Expect BLK_ not found")
                        End If
                        Erase BLKcheck
                    Else
                        Throw New Exception("Unknow error trying to read GVD Header" & vbCrLf & _
                                            "Possible BLK bytes not present where expected")
                    End If
                Else
                    Throw New Exception("Invalid GVD file (Magic mismatch)")
                End If
            Else
                Throw New Exception("GVD file at location doesn't exist")
            End If
        End Sub
        ' Used to verify and grab information from GVD
        Private Function ProcessHeader() As Boolean
            Try
                ' Get GVD width
                Dim Width(3) As Byte
                GVDreader.Read(Width, 0, 4)
                Array.Reverse(Width)
                GVD_Width = BitConverter.ToInt32(Width, 0)
                Erase Width
                ' Get GVD height
                Dim Height(3) As Byte
                GVDreader.Read(Height, 0, 4)
                Array.Reverse(Height)
                GVD_Height = BitConverter.ToInt32(Height, 0)
                Erase Height
                ' Check for expected BLK bytes
                Dim BLKcheck(3) As Byte
                GVDreader.Read(BLKcheck, 0, 4)
                ' Check if expected BLK bytes are present
                If Not BLKcheck.SequenceEqual(BLK_) Then Return False
                Erase BLKcheck
                ' Get number of DataBase Entries
                Dim DBcount(3) As Byte
                GVDreader.Read(DBcount, 0, 4)
                Array.Reverse(DBcount)
                DataBaseCount = (BitConverter.ToInt32(DBcount, 0) - 8) / 32
                Erase DBcount
            Catch ex As Exception
                Return False ' Something went wrong
            End Try
            Return True
        End Function
        ' Used to read from file and process an Entry
        Private Sub ProcessEntry(ByVal Entry As Integer)
            Dim Temp As New Entries ' Working Entry
            ' Get Horizontal Position
            Dim PosX(3) As Byte
            GVDreader.Read(PosX, 0, 4)
            Array.Reverse(PosX)
            Temp.PosX = BitConverter.ToInt32(PosX, 0)
            Erase PosX
            ' Get Vertical Posoition
            Dim PosY(3) As Byte
            GVDreader.Read(PosY, 0, 4)
            Array.Reverse(PosY)
            Temp.PosY = BitConverter.ToInt32(PosY, 0)
            Erase PosY
            ' Get Layer Level
            Dim LvL(3) As Byte
            GVDreader.Read(LvL, 0, 4)
            Array.Reverse(LvL)
            Temp.Level = BitConverter.ToInt32(LvL, 0)
            Erase LvL
            ' Get length of image (in bytes)
            Dim ImgLen(3) As Byte
            GVDreader.Read(ImgLen, 0, 4)
            Array.Reverse(ImgLen)
            Temp.ImageLength = BitConverter.ToInt32(ImgLen, 0)
            Erase ImgLen
            ' Get length of padding (in bytes)
            Dim PadLen(3) As Byte
            GVDreader.Read(PadLen, 0, 4)
            Array.Reverse(PadLen)
            Temp.PadLength = BitConverter.ToInt32(PadLen, 0)
            Erase PadLen
            ' Skip "Not Used" (4 bytes)
            GVDreader.Seek(4, SeekOrigin.Current)
            ' Get Width of image
            Dim Width(3) As Byte
            GVDreader.Read(Width, 0, 4)
            Array.Reverse(Width)
            Temp.Width = BitConverter.ToInt32(Width, 0)
            Erase Width
            ' Get height of image
            Dim Height(3) As Byte
            GVDreader.Read(Height, 0, 4)
            Array.Reverse(Height)
            Temp.Height = BitConverter.ToInt32(Height, 0)
            Erase Height
            ' Add working Entry to Entries List
            DataBase.Add(Temp)
        End Sub
        ' Returns byte array as a bitmap
        Private Function Bytes2Bitmap(ByVal ArrayData() As Byte) As Bitmap
            Dim bm As Bitmap
            Using ms As New MemoryStream(ArrayData)
                bm = New Bitmap(ms)
                ms.Close()
                ms.Dispose()
            End Using
            Return bm
        End Function
        ' Saves the PNGs for each layer
        Public Sub SavePNGs(ByVal Location As String)
            Dim LayerRes() As Size = CalcRes(GVD_Width, GVD_Height)
            Dim Layers(LayerRes.Length - 1) As EditableBitmap
            For i = 0 To Layers.Length - 1
                Layers(i) = New EditableBitmap(LayerRes(i).Width, LayerRes(i).Height)
            Next
            For Each GVD As Entries In DataBase
                Layers(GVD.Level).Draw(GVD.Image, GVD.PosX * 256, GVD.PosY * 256, GVD.Width, GVD.Height)
            Next
            For i = 0 To Layers.Length - 1
                Layers(i).Save(Location & "_Layer" & i & ".png", Imaging.ImageFormat.Png)
            Next
        End Sub
        ' Calculate the multiple resolutions for the GVD
        Private Function CalcRes(ByVal X As Integer, ByVal Y As Integer) As Size()
            Dim Res(CalcLevel(X, Y)) As Size
            For i = 0 To Res.Length - 1
                Res(i) = New Size(X, Y)
                X = Math.Round(X / 2)
                Y = Math.Round(Y / 2)
            Next
            Return Res
        End Function
        ' Given a resolution return how many levels are needed
        Private Function CalcLevel(ByVal X As Integer, Y As Integer) As Integer
            CalcLevel = 0
            While X > 256 OrElse Y > 256
                X = Math.Round(X / 2)
                Y = Math.Round(Y / 2)
                CalcLevel += 1
            End While
        End Function
        ' Bitmap class with embedded graphics object for editing
        Public Class EditableBitmap
            Private BM As Bitmap
            Private G As Graphics
            Sub New(ByVal ResX As Integer, ByVal ResY As Integer)
                BM = New Bitmap(ResX, ResY)
                G = Graphics.FromImage(BM)
            End Sub
            Public Sub Draw(ByVal Image As Bitmap, _
                            ByVal PosX As Integer, _
                            ByVal PosY As Integer, _
                            ByVal SizeX As Integer, _
                            ByVal SizeY As Integer)
                G.DrawImage(Image, PosX, PosY, SizeX, SizeY)
            End Sub
            Public Sub Save(ByVal Location As String, ByVal Format As Imaging.ImageFormat)
                BM.Save(Location, Format)
            End Sub
        End Class
    End Class
    [imglink=http://www.ps4news.com/images/ps3-fixed-easy-static-raf-converter-by-tizzyt-is-now-available-31489-1.jpg|PS3 Fixed Easy Static RAF Converter by TizzyT is Now Available]http://www.ps4news.com/images.php?sm=1&f=ps3-fixed-easy-static-raf-converter-by-tizzyt-is-now-available-31489-1.jpg&w=500&h=400[/imglink]
    [imglink=http://www.ps4news.com/images/ps3-fixed-easy-static-raf-converter-by-tizzyt-is-now-available-31489-2.jpg|PS3 Fixed Easy Static RAF Converter by TizzyT is Now Available]http://www.ps4news.com/images.php?sm=1&f=ps3-fixed-easy-static-raf-converter-by-tizzyt-is-now-available-31489-2.jpg&w=500&h=400[/imglink]
    More PlayStation 3 News...

  3. #43
    DJoel Guest
    Nice!

  4. #44
    Blade86 Guest
    Some Links? all down here

  5. #45
    Join Date
    Apr 2005
    Posts
    23,636
    The PS3 Fixed EasyStaticRAFConverter links from a few posts above seem OK still here, let me know specifically which links (file names) are dead and I will do my best to mirror them.

  6. #46
    Blade86 Guest
    Ohh thanks I love you PS3 News!! I'm searching for: Playstation Color Logo Creator V2.511

    Or any version else is ok for me too. All i can find is dead mediafire-links.. Thank you soo much

  7. #47
    Join Date
    Apr 2005
    Posts
    23,636
    I am not sure myself (would have to check, but in the middle of PC stuff atm) but here is the file mirrored just in case it isn't:

    Download: PS3_Color_Logo_Creator_V2.511.exe

  8. #48
    Blade86 Guest
    Godlike! You are the best, thank you soo much!!!

  9. #49
    Blade86 Guest
    Just wanted to confirm, its the right file and works PERFECTLY. For all users: Its to make a "dynamic", colored bootlogo

    I love you ps3news!!!

  10. #50
    gibbut Guest
    thank you so much, VERY COOOL!

Page 5 of 6 FirstFirst ... 456 LastLast

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •