Dreamcast Mimarisi

Tarafından pratik bir analiz Rodrigo Copetti

EuropaYou tarafından çevrildi

Klasik - Son güncelleme: 18 Aralık 2022

Mevcut olan diller: 🇬🇧 - English, 🇵🇱 - Polski, 🇹🇷 - Türkçe, 🇷🇺 - Русский, 👋 - Çeviri ekleyin


Bu baskı hakkında

'Klasik' sürüm, 'modern' muadiline alternatif bir sürümdür. Çalışması için Javascript, son teknoloji CSS veya karmaşık HTML gerektirmez, bu da onu erişilebilirlik araçları veya eski internet tarayıcıları kullanan okuyucular için ideal hale getirir. Öte yandan, e-Kitap kullanıcıları artık e-Kitap sürümünü kontrol edebilirler.

Bu basım içerik açısından aynıdır. Bununla birlikte, etkileşimli widget'lar saf HTML ile çalışacak şekilde basitleştirilmiştir, ancak bunlar okuyucunun "tam sürümü" denemek istemesi durumunda orijinal makaleye bir bağlantı sunacaktır.

Her zaman olduğu gibi, bu makale okuyucuların hataları bildirmesine veya değişiklik önermesine olanak sağlamak için Github'da mevcuttur. Ayrıca seriyi anlamaya yardımcı olacak destekleyici bir okuma listesi de mevcuttur. Yazar ayrıca mevcut ve gelecek makalelerin kalitesini artırmaya yardımcı olmak için bağışları da kabul etmektedir.


İçindekiler

  1. Destekleyici görüntüler
  2. Giriş
  3. İşlemci (CPU)
    1. Ekstra iş
    2. Bellek erişiminin iyileştirilmesi
    3. UMA yok ama…
    4. Özel sorgular
  4. Grafikler
    1. Mimari
      1. Karo Hızlandırıcı
      2. PowerVR2 Çekirdek
    2. Büyük resim
    3. Detay Kazanma
    4. Video Modları
  5. Ses
    1. Evrim
    2. Uyanık Kalma
  6. İşletim Sistemi
    1. Shell
    2. Windows CE
  7. Giriş/Çıkış
  8. Oyunlar
    1. Medium
    2. Çevrimiçi platform
    3. Etkileşimli hafıza kartı
  9. Korsanla Mücadele ve Homebrew
    1. Korsan Korumasını Baypaslamak
  10. Hepsi bu kadar
  11. Referencing
  12. Kaynaklar / Okumaya Devam Edin
  13. Katkıda Bulunma
  14. Değişiklik Notları

Destekleyici görüntüler

Modeller

Image
Dreamcast.
Japonya'da 29/11/1998, Amerika'da 09/09/1999 ve 14/10/1999'da Avrupa'da satışa sunuldu.

Anakart

Image
Anakart
Revizyon 'VA1' olarak gösteriliyor.
Resmi dokümanlarda sistemin 128KB flash bellek içerdiği belirtilirken, bu anakart nedense bunun yerine 256KB EEPROM yongası içeriyor.
Pil ve denetleyici bağlantı noktaları 'Ön panel' adı verilen bir ek kartta bulunuyor.
Image
Önemli parçaları etiketlenmiş anakart

Diyagram

Image
Ana mimari diyagramı
Önemli veri yolları genişlikleri ve hızları ile etiketlenmiştir.

Giriş

Sega Dreamcast, hem oyun geliştiricilerine hem de konsol oyuncularına hitap etmek için selefine (Satürn) göre birçok yeni özellik sundu. Bu Sega’nın konsol pazarını fethetmek için son girişimi olsa da, Dreamcast’te öncülük edilen bazı teknolojiler devam etti ve gelecekteki ana akım cihazlara taşındı.


İşlemci (CPU)

Şaşırtıcı olmayan bir şekilde, Sega CPU’larını geliştirmek için yine Hitachi’yi seçti. Eğer Sega Saturn hakkındaki bir önceki makaleyi okuduysanız, işte size yeni nesil SH işlemcisini sunuyorum: 200 MHz [1] hızında çalışan SH-4. Peki, bu işlemci hakkında ilginç olan ne?

Ekstra iş

Bir oyun konsolu CPU’sunun ortak işleri arasında bir oyunun mantığını idare etmek, düşman yapay zekasını çalıştırmak ve GPU’yu talimatlarla beslemek yer alır. Dreamcast’te SH-4, perspektif dönüşümlerinin hesaplanması gibi geometri verilerini işleyerek grafik işlem hattının çoğunda da yer alır. Sonuç olarak, vektör işlemlerini hızlandırabilen 128 bit SIMD birimi içerir [2].

Bellek erişiminin iyileştirilmesi

CPU, sanal adresleme için özel bir Bellek Yönetim Birimi veya ‘MMU’ içerir, bu CPU’nun fiziksel bellek adres alanı 29 bit genişliğinde olduğu için bu yararlıdır. Böylece dört TLB’nin yardımıyla programcılar 32 bitlik adresleri performans kaybına uğramadan kullanabilirler.

Adresleme için sadece 29 bit gerektiğinden, fazladan üç bit bellek korumasını kontrol eder, sırasıyla bellek haritasını değiştirir ve önbelleği atlatır [3] [4].

Bu özelliklerin kullanılıp kullanılmayacağına programcı karar verir. Bu sistem için oyunlar kesinlikle bellek korumasına ihtiyaç duymaz ve MMU’nun açılışta manuel olarak etkinleştirilmesi gerekir.

UMA yok ama…

Bu sistem, tanınmış bir rakibi gibi katı Birleşik Bellek Mimarisi (Unified Memory Architecture veya UMA) etrafında tasarlanmamış olsa da, I/O erişimini GPU’ya devretmektedir. Bu da CPU’nun kendi özel RAM’i ya da seri arayüzü (ki bunlar da bağlı) dışında bir şey alması gerektiğinde GPU’dan talepte bulunması ve gerekirse beklemesi gerektiği anlamına geliyor.

Özel sorgular

Bu CPU aynı zamanda Paralel I/O veya ‘PIO’ olarak adlandırılan ve aynı anda birden fazla I/O konumunu manipüle etmek için kullanılan benzersiz bir işleve sahiptir. Sega bu pinleri CPU’nun GPU’nun video modunu manipüle edebilmesi için bağlamıştır (bu konuda daha sonra daha fazla ayrıntı verilecektir).


Grafikler

GPU paketi 100 MHz hızında çalışan Holly adlı özel yapım bir çiptir, VideoLogic (şimdi Imagination Technologies olarak biliniyor) tarafından tasarlanmış ve NEC tarafından üretilmiştir. Holly’nin 3D çekirdeği Videologic’in PowerVR2’si (‘PowerVR Series2’ ve ‘CLX2’ olarak da adlandırılır).

Image
Sonic Adventure (1999).

VideoLogic, 3D motorunun yapımı için Karo Tabanlı Ertelenmiş Görüntü Oluşturma (TBDR) adı verilen alternatif bir yaklaşım seçti.

TBDR, tüm kareyi bir kerede oluşturmak yerine (geleneksel Anında Mod Oluşturucuların veya ‘IMR’nin yaptığı gibi [5]), oluşturma alanını ’karo’ adı verilen birden çok bölüme ayırır. Ardından, her bir karo üzerinde ayrı ayrı render işlemini gerçekleştirir ve sonuç nihai kareyi oluşturmak için birleştirilir [6].

Bu yenilikçi tasarım ilginç avantajları da beraberinde getiriyor:

Imagination’ın bu verimli teknolojiyi ileriye taşıyarak ilk nesil iPhone, iPhone 3G, Nokia N95 ve Dell Axim x51 gibi inanılmaz sayıda cihaza güç veren Seri 4 PowerVR çekirdeklerini üretmesi hiç de şaşırtıcı değil.

Mimari

Dreamcast’in GPU’sunun iki ana bileşenine bir göz atalım [7]:

Karo Hızlandırıcı

Image
Karo Hızlandırıcının Mimarisi.

Render işlemi başlamadan önce, Döşeme Hızlandırıcı olarak bilinen bir bileşen ön işleme gerçekleştirir. Geometrinin işleneceği birkaç 32x32 karo kutusunu tahsis ederek başlar.

Ardından, Karo Hızlandırıcı:

  1. CPU tarafından yayınlanan geometri verilerini ve çizim komutlarını alın (DMA veya geleneksel aktarımları kullanarak).
  2. Bu verileri dahili bir formata dönüştürür.
  3. Geometriyi koordinatlarına göre her bir bölmeye dağıtır. Kırpılmış geometri de atılacaktır.
  4. Ortaya çıkan Görüntüleme Listelerini oluşturur.

Bu Ekran Listeleri daha sonra 3D motoru tarafından yorumlanır: PowerVR2.

PowerVR2 Çekirdek

Image
PowerVR2 Çekirdeğinin Mimarisi.

Grafiklerin hayata geçirildiği yer burasıdır, TA’dan alınan Görüntü Listeleri çekirdeğe dahili bir çerçeve arabelleği kullanarak tek bir karenin geometrisini oluşturmasını söyler. Süreç aşağıdaki gibidir:

  1. Görüntü Sentez İşlemcisi veya ‘ISP’ ilkelleri (üçgenler veya dörtlüler) alır ve görünmeyen çokgenleri kaldırmak için Gizli Yüzey Kaldırma işlemini gerçekleştirir. Ardından, Z tamponlarını ve şablon tamponlarını hesapladıktan sonra veriler, diğerlerinin arkasında görünecek çokgenlerin işlenmesini önlemek için Derinlik Testinden ve bir 2B çokgenin (Maske olarak da adlandırılır) arkasında yer almaları halinde görünmeyecek geometriyi ayıklamak için Şablon Testlerinden geçer.
    • Bu testlerin boru hattının başlangıcında nasıl etkin bir şekilde gerçekleştirildiğine dikkat edin. Bunun aksine, geç z-tamponlama kullanan önceki konsollar geometriyi işlem hattının sonunda atmaktadır. ISP yaklaşımı, sonunda atılacak olan geometrinin işlenmesini önler [8] ve böylece kaynak tasarrufu sağlar.
  2. Doku ve Gölgelendirme İşlemcisi veya ‘TSP’ karo alanı üzerinde renklendirme, gölgelendirme ve çoklu efektler uygular.
    • Dokular karo dışa aktarılana kadar uygulanmaz, yani ortaya çıkan fazla çizim (varsa) dolgu oranını düşürmez.

İşlem tamamlandıktan sonra, işlenen karo VRAM’deki ana çerçeve arabelleğine yazılır. Bu işlem tüm karolar bitene kadar tekrarlanır. İşlem tamamlandığında, ortaya çıkan çerçeve arabelleği Video kodlayıcı tarafından seçilir ve video sinyali aracılığıyla gönderilir.

Büyük resim

Açık mimari farkın yanı sıra, Doku ve Gölgelendirme İşlemcisi, bu konsolun eski Saturn’den ne kadar uzak olduğu hakkında bir fikir veren birçok yetenekle birlikte geliyor. İşte bazı önemli örnekler:

Detay Kazanma

Holly artık selefine göre ~10 kat daha fazla poligon çizebiliyor, işte model tasarımlarının artık o kadar da sınırlı olmadığını gösteren bir Önce & Sonra örneği. Onlarla oynamaya çalışın!

Image Image Image Etkileşimli model modern sürümde kullanılabilir
Satürn için Sonic R (1997).
286 üçgen (veya 185 dörtgen).
Image Image Image Etkileşimli model modern sürümde kullanılabilir
Dreamcast için Sonic Adventure (1999).
1001 üçgen.

Video Modları

Video sistemi birden fazla ekran türünü ve formatı destekleyecek şekilde tasarlanmıştır, bu nedenle video kodlayıcı aşağıdaki sinyal türlerini destekleyen tek şekilli bir sokete çıkış verir:

Şimdi, Dreamcast bunların hepsini aynı anda kodlayamaz, bu nedenle GPU ve Ses işlemcisi, istenen sinyali oluşturmak için hangi video/ses veri yollarının etkinleştirileceğini koordine eden Görüntü Modu adlı bir kayıt içerir. CPU, takılan kablonun türünü algılar (video konektörünün hangi ‘seçme bitlerinin’ aktif olduğunu kontrol ederek) ve GPU’ya gerekli değerleri yazar. Son olarak, değerler Ses işlemcisine iletilir.

VGA kesinlikle aşamalı bir sinyal türü olduğundan (geleneksel taramalı sinyalin aksine), yalnızca taramalı video için tasarlanmış oyunlarda bazı uyumluluk sorunları ortaya çıkmıştır. Bunlar, kodlarında oyunun VGA’da görüntülenmeyeceğini açıkça belirtmektedir, bu nedenle CPU, kullanıcı VGA kablosunu başka bir türle değiştirene kadar oyunu engelleyecektir.


Ses

Ses işlevselliği, Yamaha tarafından üretilen AICA adlı özel bir çip tarafından gerçekleştiriliyor; bu çip Saturn’de kullanılan SCSP’nin geliştirilmiş bir versiyonu ve dört bileşenden oluşuyor:

Geliştirmeye yardımcı olmak için, resmi SDK farklı ihtiyaçlar (sıralama, kod çözme, vb.) için birden fazla ses sürücüsü içeriyordu.

Evrim

Mega Drive/Genesis günlerinden bu yana çok yol kat ettik, ses sentezinde ne kadar ilerleme kaydedildiğini göstermek için, burada aynı kompozisyonu kullanan biri Mega Drive ve diğeri Dreamcast için iki oyun örneği var:

Mega Drive için Sonic 3D Blast (1996).
Bir önceki model, anında ses sinyalleri üretmek için FM sentezi gerçekleştirir.
Dreamcast için Sonic Adventure (1999).
Yeni ses alt sistemi PCM örneklerini sorunsuz bir şekilde işler.

Sonic Adventure’ın bestecileri bir FM çipi programlamak yerine müziklerini kendi bünyelerinde üretmiş ve daha sonra CRI Middleware tarafından geliştirilen kayıplı bir format olan ’ADX’e kodlamışlardır. Dolayısıyla, 64 PCM kanalından yalnızca ikisini (stereo) kullanır.

ADX sıkıştırması, oyunun bellek veya bant genişliği tükenmeden GD-ROM’dan Ses IC’sine veri çözmesini ve aktarmasını sağlar. Ana CPU ve ARM7’nin iş yükünü dengelemek için birden fazla yaklaşım olduğundan sürücü birçok şekilde uygulanabilir.

Uyanık Kalma

Bir şekilde, bu çip aynı zamanda BIOS’a Gerçek Zaman Saati (RTC) sağlamaktan da sorumludur, ayrıca AC gücü olmadan çalışmaya devam etmek için bir saat piline bağlıdır.


İşletim Sistemi

2 MB’lık ’Sistem ROM’u, konsol açıldığında oyunu başlatan bir BIOS veya küçük bir kabuk depolar.

BIOS ayrıca GD-ROM sürücüsünden okuma gibi I/O işlevlerini [9] basitleştirmek için oyunların kullandığı rutinler içerir.

Shell

Geçerli bir oyun diski takılı değilse, konsol grafik kabuğunu önyüklemeye devam eder.

Image
Disk olmadan önyükleme yaptıktan sonra shell.

Shell, kullanıcının aşağıdaki gibi temel ancak gerekli görevleri yerine getirmesini sağlamak için basit bir grafik kullanıcı arayüzü içerir:

Windows CE

Dreamcast’in duyurulmasından bu yana, konsolun Windows CE’yi çalıştırabileceği söyleniyordu: Windows’un gömülü cihazlarda kullanılmak üzere tasarlanmış sadeleştirilmiş bir sürümü. Bazı kullanıcıların konsollarında tam bir Windows CE masaüstü ortamı görmeyi bekledikleri düşünüldüğünde bu biraz yanıltıcıdır.

Image
Windows CE logosu kasanın ön tarafına damgalanmıştır.

Gerçekte, bu ‘işletim sisteminin’ amacı Nintendo’nun Nintendo 64 ile yaptığına çok benziyordu: programcılara belirli işlemleri basitleştirmek için adil bir soyutlama katmanı sağlamak.

Microsoft, Windows CE’yi Dreamcast’e getirmek için Sega ile birlikte çalıştı [10]. Sonuç, grafik, ses ve hata ayıklama sağlamak için gereken minimum bileşenlere sahip bir CE alt kümesiydi. Bu, geliştirme için Microsoft’un yıldız IDE’si Visual Studio’nun kullanımını içeriyordu.

Bazı geliştiriciler bu seçeneği çok cazip buldu. CE ile birlikte gelen ses-grafik çerçevesi DirectX 6’dan başkası olmadığından, o dönemin binlerce PC oyunu teorik olarak Dreamcast’e kolayca taşınabilirdi…

Ancak Dreamcast ile geleneksel PC arasındaki mimari farklılıklar göz ardı edilemeyecek kadar büyüktü [11]. Ayrıca, bu sistemin yerleştirilmesi oyunun yükleme süresini artırdı (sonuçta, ’OS’nin bir diskten yüklenmesi gerekiyordu) ve Windows CE, Dreamcast’in kaynaklarının önemli bir kısmını tüketti (şaşırtıcı olmayan bir şekilde, PC’ler zaten bundan muzdaripti).

Sonunda, ‘Dreamcast için Windows CE’ geliştiriciler için tercih edilen bir başka SDK oldu (genellikle Dragon SDK olarak anılır). Bununla birlikte, önemli sayıda Dreamcast oyunu Windows API’lerini ve DirectX’i seçti.


Giriş/Çıkış

GPU ayrıca Sistem Veriyolu adı verilen I/O’nun çoğunu işlemek için başka bir modül içerir. Aşağıdaki arayüzleri sağlar:


Oyunlar

Geliştirme esas olarak C veya C++ ile yapılmıştır. Mevcut C++ derleyicileri başlangıçta işlevsellik açısından çok sınırlı olduğundan, ilk başta C önerilen seçimdi.

Sega ayrıca Sega Katana Geliştirme Kutusu adı verilen PC benzeri bir kule şeklinde geliştirme donanımı da sağlamıştır. Bu, geliştirme için geliştirilmiş I/O’ya sahip Dreamcast donanımıdır. Ayrıca resmi Katana SDK ve Windows 98 PC’ye kurulacak araçları içeren bir CD ile birlikte geldi.

Geliştiricilerin bunun yerine Dragon SDK’yı seçmesi durumunda, DirectX 6.0 ve Visual C++ 6.0 da onlar için kullanılabilirdi.

Medium

Oyunlar GD-ROM’larda saklanır, bunlar sadece daha yüksek yoğunlukta çukurlara sahip CD-ROM’lardır (bir gigabayt kapasiteye ulaşır). Hız 12x, Saturn’ün 2x CD okuyucusuna kıyasla çok da kötü değil.

Çevrimiçi platform

Dreamcast, oyunların çevrimiçi oyun için çevirmeli bir hizmeti ‘aramak’ için kullanabileceği bir modem modülü yüklü olarak gönderildi. Sega iki hizmet sağlıyordu: SegaNet (Amerika ve Japonya’da kullanılan) ve Dreamarena (Avrupa’daki muadili).

Oyuncular, bazı oyunlarla birlikte verilen ekstra bir disk olan DreamKey’i kullanarak bir hizmete kaydoldular. DreamKey bir hesap açmak için bir web tarayıcısı sağlıyordu. Başlangıçta, DreamKey bölgeye bağlı olarak önceden yapılandırılmış bir hizmet olarak geldi, ancak daha sonraki revizyonlar kullanıcıların herhangi birine bağlanmak için ISS ayarlarını değiştirmelerine izin verdi.

Ayrıca, kullanıcının internette PC tarzı sörf yapmak istemesi durumunda satın alınabilecek Dreamcast markalı bir klavye ve fare de vardı.

Ne yazık ki, SegaNet ve Dreamarena piyasaya sürüldükten iki yıl sonra durduruldu. Bu nedenle, bu tür hizmetler ekstra araçlar kullanılarak taklit edilmediği sürece (DreamPi gibi, bir kullanıcı topluluğu tarafından tutulan sunucuların yardımıyla bunları kopyalayan bir Raspberry Pi görüntüsü), yalnızca bunlara dayanan oyunlar kullanılamaz hale geldi.

Etkileşimli hafıza kartı

Dreamcast’in sahip olduğu bir diğer yenilikçi özellik de Görsel Bellek Birimi veya ‘VMU’ idi. Kontrol cihazına takılıdır ve bir bellek kartı olarak hizmet etmenin yanı sıra, [12] içeren tam teşekküllü bir cihazdır:

Image
VMU kontrolcüden ayrılmış.
Image
VMU takılı olmayan kontrolör.
Image
VMU takılı kontrolör.

VMU’nun iki çalışma modu vardır:


Korsanla Mücadele ve Homebrew

Tescilli GD-ROM formatının kullanılması, oyunların izinsiz kopyalarının üretilmesini (ve diğer konsollarda çalıştırılmasını) engellemeye yardımcı oldu. Dreamcast oyunları aynı zamanda bölge kilitlidir, yani bir konsol farklı bir bölge için tasarlanmış bir oyunu çalıştırmayı reddedecektir.

Korsan Korumasını Baypaslamak

Uygulamada, Sega’nın büyük bir arka kapıyı açık bırakması nedeniyle korsan karşıtı önlemler tamamen işe yaramazdı: MIL-CD. Music Interactive Live-CD ya da ‘MIL-CD’ Sega tarafından bir Audio-CD’yi interaktif programlarla genişletmek için yaratılmış bir formattır… ve Dreamcast bununla uyumludur [13].

Sonunda, yetkisiz ticari diskler (hile yükleyiciler, film oynatıcılar, vb.) Sega’nın onayı olmadan konsolda çalışmak için MIL-CD’ler olarak gizlendi. Daha sonra, farklı bilgisayar korsanlığı toplulukları bu açığı inceledi ve CD-ROM’ları kullanarak korsan oyunları önyüklemek için geçici bir çözüm buldu. Bu da internette durdurulamaz bir ISO dalgasının yayılmasına neden oldu.

Sonrasında bazı sorunlar ortaya çıktı: GD-ROM’lar bir gigabayt veri depolayabilmesine rağmen, CD-ROM’lara sadece ~700 MB sığabiliyordu, peki ’ripper’lar daha büyük oyunları CD’ye sığacak şekilde nasıl küçültebilirdi? Sığdırana kadar müzik ve grafikleri yeniden sıkıştırarak. Hatta iki diske bölmeyi bile deneyebilirler. Sonuçta, oyun verileri artık tek bir blob değil (eski bir kartuştaki gibi), artık hiyerarşik olarak dosyalar ve dizinler halinde düzenleniyor.


Hepsi bu kadar

Image
Buraya bir sürü şey yazabilmek için almak zorunda kaldığım bir Dreamcast.
Yaşına göre çok da kötü değil!

Umarım makaleyi okumaktan keyif almışsınızdır. Yazıyı üniversitedeki son yılımın başlangıcında bitirdim.

Muhtemelen bundan sonra çok meşgul olacağım, ancak bu makaleleri yazmaktan keyif alıyorum, bu yüzden umarım bir sonraki makaleyi birkaç hafta içinde alırsınız!

Bir dahaki sefere kadar!
Rodrigo


Katkıda Bulunma

Bu makale Konsolların Mimarileri serisinin bir parçasıdır. Eğer ilginç bulduysanız lütfen bağış yapmayı düşünün. Bağışınız, mevcut ve gelecek makalelerin kalitesini artırmama yardımcı olacak araç ve kaynakların satın alınmasını finanse etmek için kullanılacaktır.

Donate with PayPal
Become a Patreon

Ayrıca eBook sürümünü İngilizce olarak da satın alabilirsiniz. Kârları bağış olarak kabul ediyorum.

Image

Bu makale için arzu edilen araçların ve en son kazanımların bir listesi burada takip edilmektedir:

Interesting hardware to get (ordered by priority)

Acquired tools used

Alternatif olarak, değişiklikler önererek ve/veya çeviriler ekleyerek yardımcı olabilirsiniz.


Copyright and permissions

This work is licensed under a Creative Commons Attribution 4.0 International License. You may use it for your work at no cost, even for commercial purposes. But you have to respect the license and reference the article properly. Please take a look at the following guidelines and permissions:

Article information and referencing

For any referencing style, you can use the following information:

For instance, to use with BibTeX:

@misc{copetti-dreamcast,
    url = {https://classic.copetti.org/writings/consoles/dreamcast/},
    title = {Dreamcast Architecture - A Practical Analysis},
    author = {Rodrigo Copetti},
    year = {2019}
}

or a IEEE style citation:

[1]R. Copetti, "Dreamcast Architecture - A Practical Analysis", Copetti.org, 2019. [Online]. Available: https://classic.copetti.org/writings/consoles/dreamcast/. [Accessed: day- month- year].

Special use in multimedia (Youtube, Twitch, etc)

I only ask that you at least state the author’s name, the title of the article and the URL of the article, using any style of choice.

You don’t have to include all the information in the same place if it’s not feasible. For instance, if you use the article’s imagery in a Youtube video, you may state either the author’s name or URL of the article at the bottom of the image, and then include the complete reference in the video description. In other words, for any resource used from this website, let your viewers know where it originates from.

This is a very nice example because the channel shows this website directly and their viewers know where to find it. In fact, I was so impressed with their content and commentary that I gave them an interview 🙂.

Appreciated additions

If this article has significantly contributed to your work, I would appreciate it if you could dedicate an acknowledgement section, just like I do with the people and communities that helped me.

This is of course optional and beyond the requirements of the CC license, but I think it’s a nice detail that makes us, the random authors on the net, feel part of something bigger.

Third-party publishing

If you are interested in publishing this article on a third-party website, please get in touch.

If you have translated an article and wish to publish it on a third-party website, I tend to be open about it, but please contact me first.


Kaynaklar / Okumaya Devam Edin

Korsanlıkla Mücadele

İşlemci (CPU)

Oyunlar

Grafikler

Fotoğrafçılık