PlayStation Vita Mimarisi (Bölüm 1)
(copetti.org)- PSVita, geleneksel taşınabilir oyun konsolu ile hızla büyüyen mobil SoC akımının kesiştiği bir cihazdı; Sony, tanıdık devreleri kullanırken akıllı telefonlardan farklı bir ürün kimliğini korumaya çalıştı
- Ürün ailesi başlangıçta orijinal PSVita, OLED'i LCD ile değiştiren Slim ve sabit kullanıma daha yakın olan PlayStation TV olarak ayrılıyordu; üç varyant için de büyük ölçüde aynı mimari analizi geçerli
- Merkez yonga Kermit, Toshiba'nın Stacked Chip SoC yaklaşımını kullanarak CPU, GPU, yaklaşık 640MB RAM, hızlandırıcılar ve PSP uyumluluk devrelerini tek bir pakette üst üste yerleştirdi; bu, bant genişliğini ve alan verimliliğini iyileştirdi ama ısı dağıtımı tasarımını zorlaştırdı
- Ana CPU, en fazla 500MHz hızında çalışan dört çekirdekli ARM Cortex-A9 MPCore olup ARMv7-A, paylaşımlı 2MB L2 önbellek, Thumb-2 odaklı derleme, NEON/VFPv3, TrustZone ve sıra dışı yürütme özelliklerini içerir
- Multimedya işleri Toshiba'nın Venezia hızlandırıcısı tarafından yürütülürken, PSP/PS1 geriye dönük uyumluluğu Kermit içindeki MIPS32 4k ve ayrılmış CDRAM, Scratchpad ve RPC yapısı üzerinden sağlanır
PSVita'nın bulunduğu pazar ve analiz kapsamı
- PSVita, video oyun sektörü ile hızla değişen mobil bölümün kesişiminde yer alan bir üründü
- Sony, telefon görüşmesinin ötesinde çeşitli işlevler sunan ucuz cihazlarla rekabet etmek zorundaydı
- Sony'nin yeni taşınabilir konsolunda dönemin modern teknolojileri yer aldı ve devre yapısı tanıdık görünse de akıllı telefon pazarına benzememeye çalışan bir tasarım da dikkat çekiyordu
-
- nesil konsolların analizi daha karmaşık hâle geldiğinden, her şeyi tek seferde yayımlamak yerine bölümler hâlinde yayımlama yöntemi benimsendi
Üç PSVita modeli
- Sony, PSVita'nın yaşam döngüsü boyunca ürün stratejisini birkaç kez değiştirerek üç varyant piyasaya sürdü
- Original PSVita, serinin ilk modelidir ve bazen 'Fat' model olarak da anılır
- Slim, aynı mimariyi korurken OLED ekranı LCD ile değiştirerek maliyeti düşürdü ve 3G destekli bir varyant sunmadı
- Slim'de eMMC yongası büyüdü, ancak artış yalnızca 52MB ile sınırlı kaldı; buna rağmen dahili 1GB bellek kartı sunmak mümkün oldu
- PlayStation TV, taşınabilir olmayan kullanım ortamına uyarlanmış Fat anakartın bir türevidir ve farklı bir I/O düzeni sunar
- Genel olarak üç model için de aynı mimari açıklaması geçerlidir; Slim ve PlayStation TV'deki eMMC değişiklikleri ise ayrı bir açıklama konusudur
Kermit: PSVita'nın merkez SoC'si
- Sony, ilk PlayStation'dan itibaren MIPS teknolojisini yoğun biçimde benimsemişti; ancak mobil pazarda ARM güçlenip MIPS kullanımı azalınca PSVita için ARM CPU seçildi
- Toshiba, Sony'nin yakın üretim ortaklarından biri olarak ARM lisansı kullanan taraf rolünü üstlendi
- Ana yonga Kermit, adını 'The Muppets'tan aldı ve PSVita'nın ana CPU'sunu içeren en büyük devre bloğudur
- Kermit bir System-on-Chip olsa da Toshiba'nın Stacked Chip SoC (SCS) üretim modeli sayesinde çok miktarda bellek ve işlemciyi aynı paket içinde birleştirir
- SCS, devreleri yan yana harici bağlantıyla bağlamak yerine üst üste istifleyen bir yaklaşımdır
- Bunun doğrudan etkisi daha yüksek bant genişliği ve daha küçük alan kullanımıdır
- Buna karşılık ısı dağıtımı tasarımı daha karmaşık hâle gelir
- Kermit'in başlıca bileşenleri şunlardır
- Dört çekirdekli ARM Cortex-A9 MPCore ana CPU
- Imagination Technologies'in PowerVR SGX543MP4+ ana GPU'su
- Büyük DSP, DMA denetleyicisi ve güvenlik blokları gibi çeşitli hızlandırıcılar
- Farklı türlere ayrılmış yaklaşık 640MB RAM
- PlayStation Portable uyumluluğu için MIPS CPU ve Graphics Engine devreleri
ARM Cortex-A9 MPCore
- PSVita'nın ana CPU'su, dört Cortex-A9 çekirdeğinden oluşan bir küme olan ARM Cortex-A9 MPCore'dur
- Çalışma hızı en fazla 500MHz olup, aynı dönemde dört çekirdekli A9 kullanan Samsung Galaxy S III'ün 1.4GHz değerinden düşüktür
- Cortex-A9, Cortex-A8'in devamı niteliğindedir ve PSVita, Nintendo 3DS'ten yalnızca birkaç ay farkla çıktı
- Ortak temel özellikler şunlardır
- ARMv7-A komut seti
- 64KB L1 önbellek
- 32KB veri önbelleği ve 32KB komut önbelleği olarak ayrılır
- Çekirdekler arası veri önbelleği tutarlılığı Snoop Control Unit tarafından sağlanır
- 2-issue superscalar yapı
- Tehlike durumu yoksa iki ardışık düzende iki komut yürütülerek saat çevrimi başına işlenen komut sayısı artırılır
- Dinamik dal tahmini
- Komut getirme aşamasında iki özel tampon kullanılarak dal olup olmayacağı ve dalın alınıp alınmayacağı tahmin edilir
- Bu birim yalnızca dal komutlarını tahmin eder; koşullu yürütme ya da
ITkomutu gibi optimizasyonları kapsamaz
- TLB içeren MMU
- TrustZone
- Donanım düzeyinde bileşenler secure ve non-secure gruplarına ayrılır
- Yazılım düzeyinde ise gizli verileri işleyen yalıtılmış yardımcı işletim sistemi, yani Trusted Execution Environment çalıştırılır
- Veri aktarımına, işlemin secure veya insecure olduğunu belirten etiketler eklenir
- NEON Media Processing Engine
- Vektör ve kayan nokta işlemleri yapan yardımcı işlemcidir
- Cortex-A9'da güçlendirilen alanlar şunlardır
- Çok çekirdek desteği
- Sony'nin dört çekirdekli paket seçimi bunu en açık şekilde gösterir
- iPad 2 ve iPhone 4s'in çift çekirdekli CPU ile gelebilmesinin de temel nedenlerinden biridir
- Yazmaç yeniden adlandırması üzerinden sıra dışı yürütme
- ARM'nin komut düzeyi paralelliğini genişleten büyük bir değişimdir
- İşe göre 8 ila 11 aşama arasında değişen değişken uzunluklu boru hattı
- Yürütme multimedya yardımcı işlemcisine uzanırsa aşama sayısı daha da artabilir
- Çok çekirdek desteği
- Sony ayrıca ARM'nin Primelink Level 2 Cache Controller birimini ve paylaşımlı 2MB L2 önbelleği ekledi
- Primelink, direct-mapped'den 16-way'e kadar çeşitli önbellek ilişkilendirme biçimlerini ayarlayabilen bir önbellek alt sistemidir
- ARM daha sonra Primelink markasını CoreLink olarak değiştirdi
ARMv7, Thumb-2, NEON/VFPv3
- Cortex-A9'daki ARMv7, ARMv6 ISA'nın bir üst kümesidir; başlıca ek alanlar VFPv3, NEON, Security Extension ve çoklu işlemcilemedir
- Thumb ISA, Thumb-2 ile büyük ölçüde yenilendi
- Thumb-2, 32 bit komutlar ekleyerek önceki 16 bit Thumb'ın eksik kaldığı alanları doldurdu
- ARM ISA ile karşılaştırıldığında daha yüksek kod yoğunluğu sunar; koşullu yürütme kaldırılmıştır ancak özel
ITkomutuyla bazı işlevler telafi edilir
- Kermit'in Cortex-A9'u ThumbEE ve Jazelle'i de uygular, ancak uygulamaların bunlardan yararlandığını söylemek zordur
- Android'in Java yorumlayıcısı Dalvik de Jazelle/Thumb-2EE kullanmıyordu
- ARM, ISA karmaşasını azaltmak için Unified Assembler Language (UAL) oluşturdu
- UAL, hem ARM hem de Thumb-2'yi hedefleyebilen tek bir kod tabanını amaçlar
- Pratikte ARM ve Thumb-2 opcode'larının birleşimidir ve assembler hedef CPU'ya göre uygun olmayan opcode'ları atlar
- C, Objective-C ve C++ gibi dillerde derleyici çoğunlukla varsayılan assembly çıktısı olarak Thumb-2 kullanır
- Bunun nedeni verimli kod yoğunluğu ve nadir görülen performans cezasıdır
- Akıllı telefon uygulamaları ve PSVita uygulamaları çoğunlukla ARM yerine Thumb-2 ile derlenmiştir
Medya işlemleri için MPE, VFPv3, NEON
- Cortex-A9 içinde PSVita için özellikle önemli olan bileşen Media Processing Engine (MPE)'dir
- MPE, birbiriyle ilişkili iki komut setini yürütür
- Vector Floating-Point v3 (VFPv3)
- Kayan nokta işlevleri için VFPv2'nin devamıdır
- IEEE-754 ile uyumludur
VCVT,VMOVgibi komutlar sunar- Cortex-A9'daki tam varyant VFPv3-D32'dir ve 32 adet 64 bit yazmaç içerir
- ARMv7, vektör komutlarının kullanımını kaldırmıştır ve Cortex-A9'da bu vektör komutları yoktur
- NEONv1
- 'ARMv7 Advanced SIMD' olarak da bilinen asıl vektör komut setidir
- 16 adet 128 bit yazmaç sunar; bunlar 32 adet 64 bit veya 32 bit sanal yazmaca bölünebilir
- Tamsayılar en fazla 64 bite kadar işlenebilir, kayan nokta türleri ise 32 bitin ötesine geçemez
- Vector Floating-Point v3 (VFPv3)
- NEON ve VFPv3 aynı yazmaç dosyasını paylaşsa da ayrı ISA'lar olarak değerlendirilir
- İki ISA'nın ayrılmasının nedeni, ikisinin de işlevsel olarak tam olmamasıdır
- VFPv3 sabit noktalı işlemleri desteklemez
- NEON IEEE 754 standardına uymaz
- NEON'un, Intel XScale'in özel SIMD uzantısı Wireless MMX'e yanıt olarak hızlıca ortaya çıktığı şeklinde yorumlanabilir
- Dell Axim X51v gibi üst seviye PDA'lar, ARMv5 ISA ile uyumlu Intel XScale PXA270 CPU kullanıyordu ve yalnızca Intel CPU hattında mümkün olan özel SIMD uzantılarını içeriyordu
- Bu cihaz ayrıca PSVita'nın grafik yongasıyla bağlantılı olan PowerVR MBX GPU'yu da barındırıyordu
Veri yolu yapısı
- ARM'nin AMBA belirtimi, Cortex-A9'da da bileşenleri bağlamak için kullanılır
- AMBA'nın üçüncü revizyonundaki AXI protokolü, MPCore kümesi içindeki çekirdek arabirimleri için seçilmiştir
- Aynı AXI tercihi ARM11 ve Nintendo 3DS'te de görülebilir
- PSVita, MPCore dışındaki tüm iletişim için ayrıca Open Core Protocol (OCP) kullanır
- Bu, Nintendo 3DS'in PICA GPU ile iletişim kurarken kullandığı protokolle aynı ailedendir
Cortex-A sonrasında ARM'nin yönü
- Cortex-A9'dan sonra Cortex-A ailesi, en yüksek performanstan enerji verimliliği odaklı tasarımlara kadar dört ek kategoriye ayrıldı ve miras yapısı daha karmaşık hâle geldi
- Her CPU'nun model numarasını takip etmek zorlaştı, ancak bu CPU'lar genel son kullanıcıya ayrı ürün olarak satılmadığından bu büyük bir sorun değildi
- ARM'nin bir sonraki büyük dönüm noktası, 2011'de ortaya çıkan ARMv8 oldu ve bu konu Nintendo Switch analizinde daha ayrıntılı ele alınacak
Venezia: Sony'nin multimedya hızlandırıcısı
- Sony, ARM kümesinin yanına oyunla ilgili işleri destekleyen büyük bir hızlandırıcı ekledi
- Bu hızlandırıcı, önceki PSP'deki Media Engine grubu gibi tamamen özel bir kara kutudur; programcılar buna doğrudan değil, resmi SDK üzerinden erişir
- Hızlandırıcının adı Venezia'dır
- Sony'nin yakın ortağı Toshiba tarafından tasarlanmış ayrı bir CPU paketidir
- Görüntü ve ses işleme için tasarlanmıştır
- İşlev olarak Digital Signal Processor (DSP)'ye yakındır
- DVD oynatıcı gibi multimedya cihazları için sentezlenebilir yonga olarak da satılmıştır
- Venezia, PSP'nin Media Engine yapısının bir devamı niteliğindedir
Venezia'nın iç yapısı
- Venezia, MPCore gibi kümeli bir yapıya sahiptir ve 8 adet Media Processing Engine (MPE) çekirdeğinden oluşur
- Çalışma hızı 266.7MHz'dir
- Toshiba'nın MPE adı, ARM'nin vektör hızlandırıcısının adıyla çakışsa da bunlar farklı silikonlardır
- Her MPE şu unsurları içerir
- Özel Media-embedded Processor (MeP) CPU
- Beşinci revizyon olan MeP-c5
- 32 bit RISC tabanlı mimari
- 32KB L1 önbellek
- 16KB komut ve 16KB veri olarak ayrılır
- 64KB genel amaçlı bellek
- MeP CPU'nun ana programı çalıştırdığı alandır
- Dahili ve harici bellek aktarımı için DMA denetleyicisi
- IVC2 görüntü işleme yardımcı işlemcisi
- 64 bit SIMD komutları yürütür
- 8 adet 8 bit tamsayıdan 2 adet 32 bit tamsayıya kadar çeşitli veri paketlerini işleyebilir
- 2 adet 256 bit biriktirici yazmaç sunar ve başka işlevlerle birleştiğinde iki işlemi aynı anda hesaplayabilir
- Özel Media-embedded Processor (MeP) CPU
- Kümede ayrıca 256KB L2 önbellek bulunur
- Temel özelliklerden biri, Very Long Instruction Word (VLIW) tabanlı komut setidir
- Tek satırda birden fazla komut aynı anda kodlanabilir
- Venezia, görüntü yardımcı işlemcisi için 2 ve CPU için 1 olmak üzere toplam 3 komutu tek satıra yerleştirebilir
- Komutları verimli biçimde paketlemek için çok iyi bir derleyici gerekir
- VLIW, 1990'larda Broadcom Firepath, Transmeta Crusoe ve Intel Itanium gibi uygulamalarla dikkat çekmişti; ancak ana akım CPU'larda benchmark sonuçları hayal kırıklığı yarattığı için yaygınlaşmadı
- Venezia'ya yalnızca Codec Engine adlı soyut API üzerinden erişilir
- Görüntü ve ses kodlama ile kod çözme işlerini uygular
- Örneğin AVC çözme komutu, Advanced Video Coding ile kodlanmış video verisini açarak GPU'nun anlayabileceği sıkıştırılmamış bir akış üretir
PSVita'nın bellek yapısı
- Kermit yığınının en üstünde, ana çalışma alanı olarak kullanılan 512MB LPDDR2 SDRAM bulunur
- SDRAM, Synchronous Dynamic RAM anlamına gelir
- DRAM'in üretim maliyeti SRAM'den düşüktür, ancak gecikmesi daha yüksektir
- Bu nedenle CPU önbellekleri SRAM ile, harici genel amaçlı bellek ise DRAM ile yapılır
- SDRAM, aktarımı CPU saat sinyaliyle eşzamanlı hâle getirerek aktarım hızını iyileştirir
- LPDDR2, Low Power Double Data Rate 2 anlamına gelir
- DDR, çevrim başına iki kat bilgi kodlayıp aktarır
- LP, düşük güç varyantını ifade eder ve başlıca telefonlar ile dizüstü bilgisayarlar tarafından benimsenir
- LPDDR2 spesifikasyonu 2009'da yayımlandı ve DDR3'ün 1.35V değerinden daha düşük olan 1.2V ile çalışır
- Ayrı olarak, çoğunlukla GPU'ya bağlı 128MB Custom DRAM (CDRAM) bulunur
- CDRAM dahili bir addır ve geleneksel SDR SDRAM'i ifade eder
- DDR'nin aksine Single Data Rate bellektir
- GPU'ya yakın özel bir alan olduğundan yoğun grafik iş yükleri için uygundur
- Bu bloğun iki adet 512 bit veri yolu ile bağlandığı düşünülmektedir
- SoC içinde ayrıca çeşitli bloklara ayrılmış yaklaşık 2.18MB SRAM vardır
- 2MB Camera SRAM
- 32KB SPAD32K
- 128KB SPAD128K
- 4KB SceCompatSharedSram
- 16KB Scratchpad
- Bu SRAM blokları işletim sistemi için ayrılmıştır
- 16KB Scratchpad, PSP'de de bulunan SRAM kapasitesiyle aynıdır
MIPS32 4k ve geriye dönük uyumluluk
- Kermit içinde ayrıca eski bir MIPS32 4k CPU bulunur
- Bu, PlayStation Portable'da kullanılan CPU ile aynıdır
- Bu CPU'nun amacı, PlayStation Portable ve PlayStation 1 oyunlarıyla geriye dönük uyumluluk sağlamaktır
- MIPS CPU resmî olarak yalnızca bu amaçla kullanılır; yardımcı işlemci görevi yoktur
- Kermit, PSP'nin Media Engine'ini içermez
- Media Engine bir kara kutu olduğundan, yazılım iç uygulamayla ilgilenmez
- O ortak CPU'nun işlevi bunun yerine Venezia tarafından kopyalanır
- Geri kalan I/O açısından MIPS, donanımın geri kalanına fiziksel olarak bağlı değildir; yalnızca Cortex-A9 bağlıdır
- MIPS CPU üzerinde çalışan PSP öykünme yazılımı, ARM CPU'dan RPC (Remote Procedure Call) modeliyle hizmet ister
- Bu geriye dönük uyumluluk hizmeti için 64MB CDRAM de ayrılmıştır
- Daha önce sözü edilen 16KB Scratchpad aslında MIPS CPU'nun içindedir ve PSP öykünücüsüne tahsis edilmiştir
- Bu, orijinal PSP oyunlarının beklediği bellek düzenini karşılamak için gereken bir unsurdur
Sonraki kapsam
- Bir sonraki bölüm, VideoLogic'in mobil pazarın başlıca GPU geliştiricilerinden birine dönüşme sürecini ve bunun PowerVR MBX GPU'ya nasıl uzandığını ele alacak
1 yorum
Hacker News yorumları
Orijinal PSP'yi ve ondan çıkan homebrew/jailbreak sahnesini gerçekten çok sevmiştim. Yakın zamanda bir PS Vita edindim; hem yerel oyunları hem de homebrew'leri oynuyorum. Homebrew ekosisteminin hâlâ epey canlı olmasına şaşırdım.
Android oyun portları için de bir miktar potansiyel var gibi görünüyor. Keşke Sony PS Vita'yı ölüme terk etmeseydi; o dönem gerçekten büyük potansiyeli olan bir cihaz gibi hissettiriyordu.
Steam Deck hâlâ cebe sığmadığı için Vita kullanmaya devam ediyorum. Potansiyelinin boşa harcandığına katılıyorum. Shadow of the Colossus ya da Demon's Souls Vita'da olsaydı nasıl olurdu diye hayal ediyorum.
Bu yüzden kötü gidişin, kendi kaçınılabilir hatalarından değil, piyasa değişiminin kaçınılmaz bir sonucu olduğuna inanmış gibiler.
Düşününce, sanırım elektroniğe ilgi duymama yol açan şey buydu.
Birkaç iyi oyun vardı ama beni çok şaşırtan olmadı; sanırım en uzun süre Risk of Rain oynamışımdır.
Şimdiyse şu anda üretilen pek çok küçük SBC ile boy ölçüşebilecek bir taşınabilir emülasyon cihazı olarak yeterince kabul görüyor.
https://docs.libretro.com/guides/install-psv/
Birkaç yıl önce bu yazıda bahsedilen Toshiba'nın Media Embedded Processor (MeP) çalışmasında yer almıştım. Red Hat tarafında, o zamanlar ilginç olan işlemcinin yapılandırılabilir mimarisini desteklemek için toolchain üzerinde çalışmıştık.
MeP dünyayı ele geçirmedi ama PS Vita'da kullanıldığını öğrenmek hoşuma gitti.
Bu yazı, uzun süredir devam eden yazı koleksiyonunun yalnızca bir parçası.
https://www.copetti.org/writings/consoles/
Sony'nin cep telefonu serisine de sahip olduğu bu benzersiz konumdayken taşınabilir oyun konsolu pazarını terk etmesini hâlâ anlayamıyorum.
Xperia Play çok erkendi ama insanların telefona ya da Steam Deck'e büyük paralar harcamaya alıştığı bugünkü ortamda Sony, Android cihazlara bir Sony oyun mağazası ekleyerek Vita ve Xperia Play'in harika bir devamını çıkarabilirdi gibi geliyor.
Organizasyonlar birbirinden fazla silo hâlindeydi. Ürünlerini epey seven biri olarak, bugün bildiklerimize bakınca işlerin bu kadar kötü gitmiş olması ancak gülünç geliyor.
Birçok açıdan zamanının ilerisindeydi ama o dönemin oyun pazarı taşınabilir cihazlara bugün olduğu kadar uygun ya da hazır değildi sanırım.
Gerçekten harika ve tesadüften çok kader gibi hissettiriyor.
Geçen hafta Vita'yı çekmeceden çıkardım; PS3'ü bağlayamadığım için oynayamadığım bazı PS3 oyunlarının taşınabilir portlarını oynuyorum. Ratchet & Clank, Sly Cooper, God of War 1 ve 2, bir de bazı indie oyunlar.
Mağazanın hâlâ çalıştığını görünce şaşırdım ve PS1 Armored Core oyunlarını satın aldım. Bu cihazı gerçekten seviyorum. Hem piyasada hem de Sony desteği açısından haksızlığa uğradı.
Jailbreak yapıp homebrew de geliştirmeyi denemek içimden geçiyor.
İki PS Vita eskittim; kontrol düğmeleri gibi parçaları da birkaç kez değiştirdim.
PixelJunk Monsters gibi casual oyunlardan, taşınabilir cihazda konsol düzeyinde bir birinci şahıs nişancı olan Killzone Mercenary'ye kadar Vita'nın casual ve “ciddi” oyun karışımını seviyordum. Akiba's Trip: Undead and Undressed, Danganronpa, Fate/Extella gibi Japon içerikleri de inanılmaz fazlaydı.
PS Network'ten kopunca ve sevdiğim Japon oyunları Steam'e gelmeye başlayınca Vita ekipmanımı elden çıkardım; ama PixelJunk Shooter'ı açıkçası özlüyorum.
Yakın zamanda eski satın aldıklarımı indirdim. Tamamen kapatılmadan önce hepsini yedeklemem gerekiyor gerçi.
Vita'nın içinde PSP donanımı olduğunu bilmiyordum. Geriye dönük uyumluluğun yazılım tabanlı olduğunu sanıyordum; gerçi Sony'nin konsollarına geriye dönük uyumluluk donanımı koyarak piyasaya sürme konusunda uzun bir geçmişi var.
Yine de o zamana gelindiğinde PS2 Slim ve daha sonra PS3 için yazılımsal PS1 emülatörü zaten vardı.
https://israpps.github.io/PPC-Monitor/docs/Architecture%20Ov...
Bu tür kitaplar “istemediğim ve beklemediğim hâlde, bir kez çıkınca gün doğumundan gün batımına kadar okuyacağım” kategoriye giriyor.
Yazarın işlemciler ve gömülü mimariler üzerine başka kitapları da var ve açıkçası bu gerçekten gerekli bir iş.
Gömülü dünya, yazılım dünyasına kıyasla çok daha fazla sökme, inceleme, açıklama ve çıkarım yapma tarafına yatkın. Neden bilmiyorum ama bu taraftaki insanlar şemalara kadar prob takıp yeniden oluşturuyor, neredeyse her şeyi kazıyor. Son dönemdeki Nintendo modlama sahnesi bunun uç örneği.
Yazılım tersine mühendisleri ise IDA lisansları ve eklentilerine, modası geçmek üzere olan bir şeymiş gibi tutunuyor. Copetti gibi daha fazla insana ihtiyacımız var.
Hem bu yazı serisini hem de Vita'yı gerçekten seviyorum.
Bir süredir merak ettiğim şey, Vita'nın geriye dönük uyumluluk için PSP'nin hem CPU'sunu hem de GPU'sunu içerip içermediği, yoksa yalnızca CPU'nun bulunup GPU'nun Vita tarafına mı eşlendiğiydi.
Bu yazı ilkinin doğru olduğunu söylüyor; umarım sonraki bölümde bunu gerekçeleriyle daha iyi öğreniriz.
Vita zamanının ilerisindeydi