• Home
  • Downloads
  • EBOOT Fixes
  • Forums
  • New Posts
  • Register
    • Welcome, Register Now! 
    • Premium VIP Membership
    • PS3 Sticky
      • PS3 CFW & MFW
      • PS3 Debug Firmware
      • PS3 Decrypted PSN Links for CFW
      • PS3 Downloads
      • PS3 EBOOT.BIN Original File Links
      • PS3 Firmware
      • PS3 Game Releases List
      • PS3 Guides & Tutorials
      • PS3 Hacking Guides and Tutorials
      • PS3 Hacks & JailBreak
      • PS3 Help & Support
      • PS3 JailBreak Game Compatibility List
      • PS3 JB2 / True Blue (TB) Game Links
      • PS3 multiMAN Updates
      • PS3 Resources
      • PS3 Reviews
      • PS3 Save Files Repository
      • PS3 Themes
      • PS3 Trophies List
      • PS3 Videos
      • PS Vita Trophies List
    • Quick Links
      • Affiliates
      • Contact Us
      • FAQ
      • Post News
      • Site Rules
      • Tag Cloud
 

FckPSN v0.3 - Another PS3 CFW 3.55 PSN Bypass Application

Category: PS3 Hacks & JailBreak  By: PS3 News - (psgroove.com)
Tags: fckpsn v0.3 ps3cfw ps3 cfw 3.55 psn bypass ps3 homebrew applications ps3 hacks

118w ago - Recently several methods, guides and even PlayStation 3 Custom Firmware has surfaced to get on PSN with PS3 CFW 3.55, and today drizzt84 has added to them with his own homebrew application dubbed FckPSN v0.3 followed by some updates below.

Download: FckPSN v0.3 / FckPSN MAC Package / FckPSN v0.4 / FckPSN v0.5 / FckPSN v0.5 with MAC Shortcut by innovaciones / FckPSN v0.6 (UnOfficial - Do Not Use) / FckPSN v0.6 (Official) / Original Certs / OpenPS3FTP v1.2 (required) / Microsoft .NET 3.5 (required)

From PSGroove: The author of Gaia Manager, Drizzt, has unveiled the easiest method yet. Today, he brings us a small toolkit consisting of the apps FckPSN and PS3DNS. The two apps take the place of the tools used in previous methods. FckPSN takes the place of Charles proxy and PS3DNS takes the place of MaraDNS.

Installation:

1. Install dev_blind.pkg and OpenPS3FTP on your PS3 (using FTP, external USB or what else)
2. Launch dev_blind and make it mount the flash
3. Open OpenPS3FTP and connect to it using a PC
4. Connect via FTP to PS3 (using username root and password openbox)
5. Go to /dev_blind/data/cert
6. Rename CA24.cer as CA24.cer.bak
7. Put my CA24.cer as /dev_blind/data/cert/CA24.cer
8. Set the PS3's PRIMARY DNS server to your PC's IP address
9. Set the PS3's SECONDARY DNS server to your actual DNS server (e.g. router)
10. Reboot your PS3
11. Start PS3DNS.exe
12. Start FckPSN.exe
13. Enjoy with PSN




Stay tuned for more PS3 Hacks and PS3 CFW news, follow us on Twitter and be sure to drop by the PS3 Hacks and PS3 Custom Firmware Forums for the latest PlayStation 3 scene updates and homebrew releases!

Comments 465 Comments - Go to Forum Thread »

Errors

The following errors occurred with your submission

Okay

Quick Reply Quick Reply

  • Decrease Size
    Increase Size
  • Wrap [QUOTE] tags around selected text
Posting Quick Reply - Please Wait Posting Quick Reply - Please Wait
j0hnsmith's Avatar
#465 - j0hnsmith - 31w ago
Reply
I'm pretty sure I know the answer to this already, but I just wanted to throw it out there. I'm gonna be buying my first Mac Book Pro tomorrow and wondering if there's a Mac version compatible for fckpsn. I'm guessing no?

After checking drizzt's site, he has a Debian/Ubuntu/Linux version. Am I able to install one of those, or would I have to install a Windows virtual machine in order to run the Windows version? Please advise. Thanks!

PS3 News's Avatar
#464 - PS3 News - 31w ago
Reply
I have now promoted the news to our main page and +Rep for the update Blade86!

Blade86's Avatar
#463 - Blade86 - 31w ago
Reply
So here we go, I call this Blade-Mod, an FckPSN Mod which includes add-ons, skins, settings and detailed information integrated into the application based off FckPSN by https://twitter.com/drizzthacks.

Download: http://uploadmirrors.com/download/8QEMNV9R/Blade-Mod.rar / http://tinyurl.com/fckpsngithub

I like this method because all spoofs are on fly by PSN on DEX without installing something on PS3 (except for the ca27).

I know, almost no one needs it anymore (at least not for PS3 Firmware 4.25), but for all those like me, who for example don't want to change IDPS on DEX, or needs some settings to be variable, can use this tool to set all kinds of spoof settings. Get my rar -> its a ready to use pack.

From the ReadMe file:

Blade-Mod.exe: This is the modded Version of drizzt's FckPSN to allow (add-ons, designs & settings) & give you more details. (drizzt is the original creator of FckPSN)

Blade-Conf.exe: This is a self-written Configuration-Add-on for easyly edit all on-fly-by-spoof settings (PS3-FW-Ver, Target-ID, Region, Mainboard Revision, IDPS)

Blade-Settings.yml: Externalized Settings-Communication-File

CA27.cer: You know what it is...

Finally, here is the source code of Blade-Mod.exe (modded FckPSN):


!/usr/bin/env ruby
#
# FckPsn -- PSN version spoofer
#
# Copyright (C) drizzt
#
# This software is distributed under the terms of the GNU General Public
# License ("GPL") version 3, as published by the Free Software Foundation.
#

require 'rubygems'

require 'socket'
require 'openssl'

require 'rainbow'

gem 'rubydns', '~> 0.4.0'
require 'rubydns'

def FckPSN_VERSION=x1
end
def PLATFORM_VERSION=x2
end
def PLATFORM_PASSPHRASE=x3
end
def TARGET_ID=x4
end
def TARGET_ID2=x4
end
def MB_REV=x5
end
def IDPS_REST=x6
end
require 'yaml'
hash = YAML.load_file('Blade-Settings.yml')
#substitution_hash = {:fourth_member => 'Yeon',
# :time => Time.new.strftime("%m/%d/%y")}
hash.each_pair do |key, value|
value = hash[value] if value.class == Symbol
#puts "Value for key \"#{key}\" is: \"#{value}\""
FckPSN_VERSION = "#{value}" if "#{key}" == "FckPSN_VERSION"
PLATFORM_VERSION = "#{value}" if "#{key}" == "PLATFORM_VERSION"
PLATFORM_PASSPHRASE = "#{value}" if "#{key}" == "PLATFORM_PASSPHRASE"
TARGET_ID = "#{value}" if "#{key}" == "TARGET_ID"
MB2 = "#{value}" if "#{key}" == "MB2"
MB_REV = "#{value}" if "#{key}" == "MB_REV"
IDPS_REST = "#{value}" if "#{key}" == "IDPS_REST"

end

# Ocra is the .exe generator
if defined?(Ocra)
require 'rexec/client'
exit
end

# Enter in current directory
Dir.chdir File.dirname($0)

# Change 0.0.0.0 to your LAN IP if you want
localHost = "0.0.0.0"

# You don't need to edit below this comment!!

#4.21#PLATFORM_PASSPHRASE='t2wSyoqasqb_wndpmdmbhputnokghlupgtpighyrsygfbmrsectfkqOb'
CON_ID="0000000100#{TARGET_ID}00#{MB_REV}#{IDPS_REST}000000000000000000000000000000000000000000"
IDPS_REST2="#{IDPS_REST}".upcase
TARGET_ID2 = case TARGET_ID
when "80" then "AVTest / DECR"
when "81" then "Reference Tool"
when "82" then "DEX / Debug"
when "83" then "CEX RETAIL JAP"
when "84" then "CEX RETAIL USA"
when "85" then "CEX RETAIL EUR"
when "86" then "CEX RETAIL KOR"
when "87" then "CEX RETAIL UK "
when "88" then "CEX RETAIL MEX"
when "89" then "CEX RETAIL AUS"
when "8A" then "CEX RETAIL S-A"
when "8B" then "CEX RETAIL TWN"
when "8C" then "CEX RETAIL RUS"
when "8D" then "CEX RETAIL CHN"
when "8E" then "CEX RETAIL HON"
when "A0" then "SYS-DEBUG/ ARC"
else "Unknown"
end

TEST="#{PLATFORM_PASSPHRASE}".scan(/.{1,28}/m)

puts "*** ".color(:green) + "-----------------------------------------------------------------------".color(:yellow) + " ***".color(:green)
puts "*** ".color(:green) + " FckPSN v#{FckPSN_VERSION} MOD".color(:yellow) + " ***".color(:green)
puts "*** created by drizzt ***".color(:green)
puts "*** ".color(:green) + "=======================================================================".color(:yellow) + " ***".color(:green)
puts "*** ".color(:green) + " modified by ".color(:red) + "--- ".color(:cyan) + "Blade".color(:yellow) + "--- ".color(:cyan) + "The Daywalker".color(:red) +" ***".color(:green)
puts "*** ".color(:green) + "=======================================================================".color(:yellow) + " ***".color(:green)
puts "*** ".color(:green) + " SPOOFED PS3-SYSTEM-FW".color(:red) + " --- ".color(:cyan) + "#{PLATFORM_VERSION} ".color(:yellow) + " ***".color(:green)
puts "*** ".color(:green) + " SPOOFED TARGET-ID ".color(:red) + " --- ".color(:cyan) + "#{TARGET_ID2} ".color(:yellow) + "[0x#{TARGET_ID}]".color(:cyan) + " ***".color(:green)
puts "*** ".color(:green) + " SPOOFED MAINBOARD-REV".color(:red) + " --- ".color(:cyan) + "#{MB2}".color(:yellow) + "[0x#{MB_REV}]".color(:cyan) + " ***".color(:green)
puts "*** ".color(:green) + " SPOOFED BYTES OF IDPS".color(:red) + " --- ".color(:cyan) + "BYTES 9-16 ".color(:yellow) + "[0x#{IDPS_REST2}]".color(:cyan) + " ***".color(:green)
puts "*** ".color(:green) + "-----------------------------------------------------------------------".color(:yellow) + " ***".color(:green)
puts "*** ".color(:green) + " SPOOFED PF_PASSPHRASE".color(:red) + " --- ".color(:cyan) + "[PSN]".color(:yellow) + " #{TEST[0]}".color(:green) + " ***".color(:green)
puts "*** ".color(:green) + " ".color(:red) + " ".color(:cyan) + " ".color(:yellow) + " #{TEST[1]}".color(:green) + " ***".color(:green)
puts "*** ".color(:green) + "-----------------------------------------------------------------------".color(:yellow) + " ***".color(:green)

# Listening ports
localSslPort = 443
localWebPort = 80
localDnsPort = 53

# PSN (auth.np.ac.playstation.net) IP address
$remoteHost = "173.230.216.161"
$remotePort = 443

$blockSize = 1024

# Initialize OpenSSL library
cert_file = File.join("data", "cert.pem")
key_file = File.join("data", "cert.key")
list_file = File.join("data", "ps3-updatelist.txt")

cert = OpenSSL::X509::Certificate.new(File::read(cert_file))
key = OpenSSL::PKey::RSA.new(File::read(key_file))
@list_str = File::read(list_file)

@ctx = OpenSSL::SSL::SSLContext.new()
@ctx.key = key
@ctx.cert = cert

# Start servers
begin
sslServer = TCPServer.new(localHost, localSslPort)
rescue Errno::EADDRINUSE
$stderr.puts "Error".color(:red) + " Port " + localSslPort.to_s + " already in use"
end
begin
webServer = TCPServer.new(localHost, localWebPort)
rescue Errno::EADDRINUSE
$stderr.puts "Error".color(:red) + " Port " + localWebPort.to_s + " already in use"
end
begin
dnsSocket = UDPSocket.new(Socket::AF_INET)
dnsSocket.bind(localHost, localDnsPort)
rescue Errno::EADDRINUSE
$stderr.puts "Error".color(:red) + " Port " + localDnsPort.to_s + " already in use"
end

if sslServer.nil? or webServer.nil? or dnsSocket.nil?
exit 1
end

# Some prints
port = sslServer.addr[1]
addrs = sslServer.addr[2..-1].uniq

puts "*** ".color(:green) + " TARGET ADDRESS ".color(:red) + " --- ".color(:cyan) + "[URL] ".color(:yellow) + "auth.np.ac.playstation.net ".color(:green) + " ***".color(:green)
puts "*** ".color(:green) + " TARGET IP ADDRESS ".color(:red) + " --- ".color(:cyan) + "[IP] ".color(:yellow) + "#{$remoteHost}:#{$remotePort} ".color(:green) + " ***".color(:green)
puts "*** ".color(:green) + "=======================================================================".color(:yellow) + " ***".color(:green)
puts "*** ".color(:green) + " #{Time.new}".color(:red) + " [SSL]".color(:yellow) + " listening on #{addrs.collect{|a|"#{a}:#{port}"}.join(' ')} ***".color(:green)

port = webServer.addr[1]
addrs = webServer.addr[2..-1].uniq

puts "*** ".color(:green) + " #{Time.new}".color(:red) + " [WEB]".color(:yellow) + " listening on #{addrs.collect{|a|"#{a}:#{port}"}.join(' ')} ***".color(:green)

port = dnsSocket.addr[1]
addrs = dnsSocket.addr[2..-1].uniq

puts "*** ".color(:green) + " #{Time.new}".color(:red) + " [DNS]".color(:yellow) + " listening on #{addrs.collect{|a|"#{a}:#{port}" }.join(' ')} ***".color(:green)
puts "*** ".color(:green) + "-----------------------------------------------------------------------".color(:yellow) + " ***".color(:green)

# UDP Socket does per packet reverse lookups unless this is set.
UDPSocket.do_not_reverse_lookup = true

# abort on exceptions, otherwise threads will be silently killed in case
# of unhandled exceptions
#Thread.abort_on_exception = true

# have a thread just to process Ctrl-C events on Windows
# (although Ctrl-Break always works)
#Thread.new { loop { sleep 1 } }

R = Resolv:NS.new
IN = Resolv:NS::Resource::IN

# Thread used for DNS connections
def dnsConnThread(local)
packet, sender = local.recvfrom(1024*5)
puts "*** ".color(:green) + "[DNS]".color(:yellow) + " receiving from #{sender.last}:#{sender[1]}".color(:green)
myIp = UDPSocket.open {|s| s.connect(sender.last, 1); s.addr.last }
RubyDNS::Server.new do |server|
server.logger.level = Logger::INFO
Thread.new do
match("auth.np.ac.playstation.net", IN::A) do |transaction|
logger.info("#{transaction} query received, returning #{myIp}")
transaction.respond!(myIp)
end

match(/ps3.update.playstation.net$/, IN::A) do |match_data, transaction|
logger.info("#{transaction} query received, returning #{myIp}")
transaction.respond!(myIp)
end

otherwise do |transaction|
transaction.passthrough!(R)
end

RubyDNS::UDPHandler:rocess(server, packet) do |result|
local.send(result.encode, 0, sender[2], sender[1])
end
end
end
puts "*** ".color(:green) + "[#{Time.new}]".color(:red) + " [DNS]".color(:yellow) + " done with #{sender.last}:#{sender[1]}".color(:green)
end

# Thread used for HTTP connections
def webConnThread(local)
port, name = local.peeraddr[1..2]
puts "*** ".color(:green) + "[#{Time.new}]".color(:red) + " [WEB]".color(:yellow) + " receiving from #{name}:#{port}".color(:green)

puts "[#{Time.new}] ".color(:red) + local.gets.color(:cyan)

local.write("HTTP/1.1 200/OK\r\nContent-Type: text/plain\r\nContent-Length: #{@list_str.size}\r\n\r\n#{@list_str}").color(:green)
local.close

puts "*** ".color(:green) + "[#{Time.new}]".color(:red) + " [WEB]".color(:yellow) + " done with #{name}:#{port}".color(:green)
end

# Thread used for HTTPS connections
def sslConnThread(local)
port, name = local.peeraddr[1..2]
puts "*** ".color(:green) + "[#{Time.new}]".color(:red) + " [SSL]".color(:cyan) + " receiving from #{name}:#{port}".color(:green)

sslLocal = OpenSSL::SSL::SSLSocket.new(local, @ctx)
sslLocal.accept

# open connection to remote server
remote = TCPSocket.new($remoteHost, $remotePort)

sslRemote = OpenSSL::SSL::SSLSocket.new(remote)
sslRemote.connect

# start reading from both ends
loop do
ready = select([sslLocal, sslRemote], nil, nil, 120)
if ready.nil?
puts "[#{Time.new}]".color(:red) + " timeout".color(:red)
break
end
if ready[0].include? sslLocal
# local -> remote
begin
data = sslLocal.sysread($blockSize)
rescue EOFError
puts "*** ".color(:green) + "[#{Time.new}]".color(:red) + " local end closed connection".color(:yellow)
break
end

if data.match('consoleid')

data.sub!(/consoleid=.*/, CON_ID)
#data.sub!(/consoleid=.*/, '00000001008500050400f344ac4f8d2f000000000000000000000000000000000000000000')
puts "*** ".color(:green) + "[#{Time.new}]".color(:red) + " Spoofing ConsoleID to CEX".color(:yellow)
end
if data.match('X-Platform-Passphrase: ')
data.sub!(/^X-Platform-Passphrase: .*/, 'X-Platform-Passphrase: ' + PLATFORM_PASSPHRASE)
data.sub!(/^X-Platform-Version: PS3 .*/, 'X-Platform-Version: PS3_C ' + PLATFORM_VERSION)
else
data.sub!(/^X-Platform-Version: PS3 .*/, "X-Platform-Version: PS3_C #{PLATFORM_VERSION}\r\nX-Platform-Passphrase: #{PLATFORM_PASSPHRASE}")
end
sslRemote.write(data)
end
if ready[0].include? sslRemote
# remote -> local
begin
data = sslRemote.sysread($blockSize)
rescue EOFError
puts "*** ".color(:green) + "[#{Time.new}]".color(:red) + " remote end closed connection".color(:yellow)
break
end
sslLocal.write(data)
end
end

sslLocal.close
local.close
sslRemote.close
remote.close

puts "*** ".color(:green) + "[#{Time.new}]".color(:red) + " [SSL]".color(:cyan) + " done with #{name}:#{port}".color(:green)
end

loop do
# whenever server.accept returns a new connection, start
# a handler thread for that connection
ready = select([sslServer, webServer, dnsSocket], nil, nil)
if ready[0].include? sslServer
Thread.start(sslServer.accept) { |local| sslConnThread(local) }
end
if ready[0].include? webServer
Thread.start(webServer.accept) { |local| webConnThread(local) }
end
if ready[0].include? dnsSocket
Thread.start(dnsSocket) { |local| dnsConnThread(local) }
end
end

# vim: set ts=4 sw=4 sts=4 tw=120
Cheers

Blade (Blade-Conf.exe is my first windows-app)


More PlayStation 3 News...

matrixreaver's Avatar
#462 - matrixreaver - 31w ago
Reply
What's the catch with the PSN Access PUP... multiman, backups, and online all working?... isn't this too good to be true?

Sent from my Inspire 4G using Tapatalk 2.

Blade86's Avatar
#461 - Blade86 - 32w ago
Reply
Here are the screens... Tomorrow I ask the author

If anyone here is good in ruby compiling, I could use your help. If I can get it into a whole-in-one exe, it would be awesome.

As you can see in my screens, I managed to externalize all settings...

I cannot get it sorted properly:
1) 1st start
2) Configurator
3) Configurator 2
4) Configurator 3
5) Configurator 4 autostarts main app

OMG, I got it First-Releaseable Version Im soo happy

3 Files:
Blade-Mod.exe [Modded Version] [original created FckPSN by drizzt] [loads its settings from external file]
Blade-Conf.exe [Completly self written Add-on-Configurator] [User friendly way to edit the settings-file]
sampl2.yml [Settings-File]

Everything ready & compiled

Ok now after 2 days of beeing awake, i get some sleep now...

Hey I contacted the author:

Quote
Hi,
you can do anything with FckPSN (GPL3 license).
Just remember to publish also the source code (if you want you can
fork my github repo)
Thanks

On Tue, Oct 16, 2012 at 3:12 AM, Blade wrote:
> Hey, thx 4 your awesome work.
> I have writen an (self-made) add-on for your FckPSN & a MODDED ver of
> your FckPSN to allow the addon together with a bit themeing.
> I have everything ready to release & I wrote on the banner of it:
>
> FckPSN
> created by drizzt
>
> modded by Blade.
>
>
> U can look the screenshots on PS3News.com
> I did it for personal use and it went better and better.
> I HAVENT UPLOADED ANYTHING except for the screenshots.
>
> So here I am, asking you politely, if you allow me to share my version.
>
> Please contact me at Ps3-news

Cheers
Blade

Page 1 of 93 123456789›LAST »

Related PS3 News and PS3 CFW Hacks or JailBreak Articles

• Guide to Install multiMAN PS3 Themes via USB from a PKG File
• Simple PS3Updates v1.6 Build 2 Final PS3 Homebrew App Updated
• Video: Super Pixel Jumper v1.2 PS3 Homebrew Game is Released
• Video: Pointman: The Akkadian Wars PS3 Homebrew Game Arrives
• PSPMinis / PS3Minis / Bite v1.5.1 Update for PS3 is Now Released
• PS3 Fan Control Utility v1.7 for PS3 CFW CEX 3.41 to 4.41 Arrives
Affiliates  NewsNow  Privacy  PS3 CFW & MFW  PS3 Hacks & JailBreak  PS3 Reviews  PS3 Videos  © 2013 PlayStation 3 News

PlayStation 3 Links

• Contact Us E-Mail
• PS3 Affiliates
• PS3 CFW & MFW
• PS3 Debug Firmware
• PS3 Decrypted PSN Links for CFW
• PS3 Downloads
• PS3 EBOOT.BIN Original File Links
• PS3 Firmware
• PS3 Game Releases List
• PS3 Guides & Tutorials
• PS3 Hacking Guides and Tutorials
• PS3 Hacks & JailBreak
• PS3 Help & Support
• PS3 JailBreak Game Compatibility List
• PS3 JB2 / True Blue (TB) Game Links
• PS3 multiMAN Updates
• PS3 News Forums
• PS3 News Site FAQ
• PS3 News Site Advertising FAQ
• PS3 News Site Posting FAQ
• PS3 News Site Privacy FAQ
• PS3 News Site Rules
• PS3 News Site Tag Cloud
• PS3 News Site Terms
• PS3 Resources
• PS3 Reviews
• PS3 Save Files Repository
• PS3 Themes
• PS3 Trophies List
• PS3 Videos
• PS Vita Trophies List

PlayStation 3 News Discussions
PSN Games Decrypted for PS3 Custom Firmware 3.55 by DUPLEX! - 1m ago

ariark's Avatar
Quote i played on rebug 4.21.2....flawlessly with no problem...fast loading btw...
By ariark with
 8167 Comments »
Introductions: Hello Everyone, I'm New at PS3News.com! - 3m ago

Belgica's Avatar
Quote Hi guys, hope to help and be helped on PS3 matters... cheers, Belgica...
By Belgica with
 7025 Comments »
The Yes/No question thread - 23m ago

oVERSoLDiER's Avatar
Quote No. You know me ?...
By oVERSoLDiER with
 2053 Comments »
Current unbaning situation - 1h ago

ZerotakerZX's Avatar
Quote Some time ago there was a buzz about unbanning methods, but I didnt care. Now I do, but I have no idea what current situation is and its hard to figur...
By ZerotakerZX with
 0 Comments »

Latest PlayStation 3 Trophies
Pool Nation: Mega Shot
Pool Nation: Mega Streak
Pool Nation: Super Zen
Pool Nation: Zen

Latest PlayStation Vita Trophies
Men's Room Mayhem: Toilet Trouble
Men's Room Mayhem: Mayhem Master
Men's Room Mayhem: Hygiene Award
Men's Room Mayhem: Sand in the Face

Latest PlayStation 3 Releases
Tom Clancys H A W X EUR PS3-Googlecus - 05-23-2013
Terraria JPN PS3-HR - 05-23-2013
Kamen Rider Battlide War JPN PS3-Caravan - 05-21-2013
Fast And Furious Showdown PS3-DUPLEX - 05-21-2013

Latest PlayStation 3 Themes
Wolverine Origins PS3 Theme - 05-19-2013
Heavy Rain (Official) Dynamic PS3 Theme - 05-09-2013
Wipeout HD Fury Dynamic PS3 Theme - 05-06-2013
Batman Arkham City Dynamic PS3 Theme - 05-04-2013
  • Contact Us
  • -
  • PS3 News