CD ve DVD compact diskler ve programlanması



Cd DVD programlamaEserin adı   CD ve DVD Programlamak

Yazarlar Onur AYDIN Web             Eposta     Oğuz AYDIN Web             Eposta

Grafik ve çizim    Onur AYDIN

Kapak        Onur AYDIN

Programlar     Oğuz AYDIN

Editör    Murat AYDIN

Yayın evi  çağlar Ofset Adana

Sipariş  Murat Aydın 322-4536262 , kargo dahil 25 liradır


Eser 571 sayfa, 30 bölüm, 353 tablo, 119 şekil,  241 örnek programdan meydana gelmiştir. örnek programlar eserin ekinde 1 tane CD içerisinde bulunmaktadır.

Kapak hariç diğer sayfalar siyah beyazdır. En, boy, kalınlık = 21 x 30 x3 cm.  1560 gr ağırlığındadır.


CD-DVD

CD DVD  önsöz bölümü

CD DVD  içindekiler bölümü

CD DVD  Program listesi (numara sırasına göre)

CD DVD  Program listesi (amacına göre)

 

 


 

 



 

 

 


cd-dvd kompakt disklerCD ve DVD programlama isimli eserde yer alan bazı önemli başlıklar

Lazer ışık CD ye nasıl yazar?

Bir CD trağının uzunluğu kaç kilo metredir?

CD diskler üzerine hangi formatlarda yazılabilir

Hangi formattaki sektör kaç bayttır?

Diskin hangi formatta yazıldığını nasıl anlarız?

Boş CD veya DVD disk gerçekten boş mudur?

Kopya koruma yazılımları nasıl çalışır? Bir CD üzerinde bulunan program kopyalanmaktan korunabilir mi?

Bir diskin örü nedir, nasıl saklanır, istenirse nasıl bozulur, bozuk disk ile neler yapılabilir?

Buffer underrun nedir? Zaman aşımı nedir?

Dos ve Windows altında MSCDEX ve ASPi kullanmak.

Lazer kafanın anlık koordinatları, odyo kanal bilgisi, sub kod bilgisi, cihazın tamponu, sektör uzunluğu, istek ve komut blokları.

Cihazın kapısı nasıl açılır / nasıl kapanır / nasıl kilitlenir / CD DVD dis sürücü cihaz nasıl resetlenir ? Program yazarak  Nasıl anlarız?

Cihaz CD mi DVD mi? Nasıl anlaşılır? Bir CD dvd cihaz Video oynatır mı? odyo çalar mı? Yazar mı? Program yazarak Nasıl anlarız?

Şu anda cihazın kapısı açık mı / kapalı mı/ kilitli mi / cihazda disk varmı nasıl öğrenilir?  Program yazarak Nasıl anlarız?

Disk boş mu? ne kadarı boş? içindeki dosyalar nedir ve hangi formatta yazılmıştır? Nasıl bir disktir?

Bir sektör nasıl okunur? Sektör okuma programları yazmak.

iDE arabirim, port programlamak, IOCTL istekleri, paket komutlar, diske yazmak....

CD ve DVD disklerin fiziksel ve kimyasal özellikleri, optik yapıları, anatomisi, mimarisi, bilginin yerleştirilmesi, formatı,

CD-ROM cihazların çalışma prensipleri ve programlanması akademik bir üslup ile anlatılmıştır.


Dikkat: Kitaptaki bütün programlar DOS altında assembler ve QuickBasic ile yazılmıştır.

Windows altında çalıştırmak için kendi kullandığınız programlama diline çevirmeniz gerekir.


öNSöZ


cd-dvdBu eserin öyküsü:         Bundan yaklaşık olarak 3 veya 4 sene önce CD ler için kopya koruması yapan bir yöntem geliştirmek istedim. Müzik ve video Cdleri izinsiz olarak çoğaltılamasın eser sahibinin alın teri korunsun istedim.   

        Bu amaç ile birisi bilgisayar mühendisi (Onur Aydın) ve diğer bilgisayar programcısı (Oğuz Aydın) olan oğullarım ile birlikte CD-ROM cihazlarının ve CD/DVD disklerin yazılım ve fiziğine yönelik kapsamlı bir teknik inceleme başlattık.

        Sonra gördük ki, eğer bir ses bilgisayarın hoparlörüne veya bir video görüntüsü bilgisayarın monitöre ulaşabiliyorsa oradan (capture programları ile) kolayca alınabilir. Bu basit mantık, izinsiz olarak odyo ve video kopyalamak isteyen şahısı, CD/ DVD diskteki kopya koruma engelinden korur. Eğer bu basit gerçeği önceden fark etseydik ne bu incelemeyi başlatır ne bu eseri yazardık.iyi ki bunu önceden fark etmemişiz.

        CD ve DVD lerde kopya korumayı başaramayınca 3-4 sene boyunca topladığımız bilgileri bir kağıda yazarak 355 tablo 115 şekil 266 programdan oluşan bu eseri meydana getirdik.

        Bu eserin bütün hikayesi bundan ibarettir.

        Topladığımız bilgiler kaybolmasın, belki bizden sonra bu bilgiden istifade edip bir adım daha ileri götürmek isteyen birileri çıkabilir diyerek bildiklerimizi elinizdeki kağıda yazdık.

        Hepsi bu. Siz sormadan ben anlattım...


 


cd-dvd Eserdeki sistematik:

            Bilgiyi yerinden almak, öğrenmek, sindirmek, bir eşyayı yerinden yerinden alıp kaldırmak gibidir.

            Yük, daima alttan tutulur. Ağır bir bilgiyi öğrenmek, ağır bir masayı kaldırmak gibidir. Yukarıdan tutamazsınız. Tutabilseniz bile kaldıramazsınız. Daima alttan tutulmalıdır. Bu sebeple bölüm içerisinde yer alan bilginin dibi, bölüm başında okuyucuya bildirilmiş, tutulacak yer(ler) işaret edilmiştir. Bölüm başlarını öncelikli okuyunuz. Neyi öğreneceğinizi öğrenirseniz, öğrenmek kolaylaşabilir. Tabi, hepsinden önce öğrenmeyi istemek lazımdır.

            Bütün konular akademik derinlikte anlatılmıştır.

            Siz arzu ettiğiniz kadarını alınız veya kullanınız


cd-dvd Eserin dili:

        Bu eser okuyucu ile konuşur üslup kullanılarak yazılmıştır.

        Eserin içerisinde okuyucu sanki karşımızdaki masada bir koltukta oturuyormuş gibi düşünerek yazdık. Eserin içerisinde "Bunun nasıl yapılacağını biliyor musunuz?" diye sormuş olabiliriz. Bu soruyu cevaplamanız için değil, biraz sonra neyi cevaplayacağımızı haber vermek için kullandık. Buna benzer şekilde eserin içerisinde "Bu nasıl olur?" veya "falanca bölümde ne yazdığımızı anımsıyor musunuz?" gibi sorular sorduk ve cevapladık.

        Bu eser boyunca mümkün olduğu kadar Türkçe kelime kullanmaya gayret edilmiştir. Kelimelerin Türkçe karşılıklarını bulmak ve hatta Türkçe karşılıklarını bulmak için kaynak bulmakta bile zorlandığımızı itiraf ediyorum. Bu eser ne tam olarak Türkçe ne de tam olarak ingilizce terimlerden oluşmaktadır. Maalesef her iki lisanın hibritlenmiş melez bir üslubu ile yazmaya mecbur olduk. Bu konuda mutlu değilim(/z).

        Bilgisayar terimleri Türkçe kökenli değildir. çünkü bilgisayar Türkiye'de doğmadı. Her kelime kendi doğduğu toplumsal yapının izlerini taşır. Bir kelimenin yapısal izlerini filitre edip başka bir lisana dönüştürmek anlam kayıplarına sebep olacaktır. Zaten hiç bir kelimenin, başka lisandaki tam karşılığı da tek bir kelime değildir.

örneğin "server" kelimesi hizmetçi, hizmet eden, belirli bir hizmeti yerine getiren anlamına karşılık gelir. Biz bu eserde server yerine hizmetçi yazsaydık ya hiç anlayamayacak veya öğrendiklerinizi başka yerde kullanamayacaktınız. Benzer şekilde configuration, network, carry biti, header gibi kelimeleri çevirmeden olduğu gibi yazdık.

        interface kelimesini ara birim olarak, driver kelimesini sürücü olarak çevirebildik, benzer şekilde başka bazı terimleri Türkçe kullanabilme şansımız oldu. Keşke daha fazla Türkçe kelime kullanabilseydik.

        Yazılar arasına okuyucunun dikkatini uyanık tutabilecek bazı resimler serpiştirdik. Bu resimler çiçek böcek resimleri olarak seçilmiştir.

        Sıra dışı ve konudan alakasız görünen bu resimler; okuyucunun okurken yarım kaldığı yeri bulmasına kolaylık sağlamak ve gördüğü resim ile okuduğu bilgi arasında ilişki kurarak hatırlamasını kolaylaştırmak bakımından faydalı olur diye umuyoruz.

        Şekil, tablo, ve programlar uluslar arası kurallara uyularak numaralandırılmıştır. ilk sayı bölüm numarasını, ikinci sayı bölüm içinde kaçıncı olduğunu gösterir. örneğin Tablo 27:04 yirmiyedinci bölümün baştan itibaren dördüncü tablosudur. Program 08:05, sekizinci bölümün baştan beşinci programıdır.

 


cd-dvd Eserin hedef okuyucu kitlesi:

            Bu eserin, bilgisayar mühendisliği ve bilgisayar programcılığı fakülteleri ve yüksek okulları için kaynak kitap olmasını hedefledik.

            Bu eser, bilgisayar programlaması ile ilgilenen profesyoneller ve profesyonelleşen amatörler içindir.

            Bu eser yeni başlayanlar için ağır görünse bile bilgisayar programcısı için eksik bile gelebilir. Bu eserden istifade edebilmek için önceden assembler biliyor olmak iyi olur.

            Bizim yazarken esas aldığımız bu prensip diğer okuyucu kitlesinin bu kitaptan faydalanmasını ipotek etmez.


aaaaaaaa Bu eser neden gereklidir:


            CD ve DVD diskler, genel basit anlamı ile plak, kaset veya disket benzeri hayalet organlar olarak bilinir. Onları okuyup yazan C/DVD-ROM cihazlar ise kapalı bir kutu olarak bilinir / satılır / kullanıma sunulur. Bir çoğumuz bir diskin yüzeyinde üzerine yazı yazılan tabakanın ne olduğunu, bir C/DVD-ROM cihazının nasıl çalıştığını, nasıl okuma /  yazma yaptığını, hangi komutlar ile görev yaptığını bilmeyiz. Hazır programlara mahkum edilmiş, mutlu tutsaklar gibiyizdir. Eğer C/DVD-ROM cihazı kullanan bir program yazılması gerekiyorsa ücretini ödeyip dışarıdan ithal ederiz.

        işte bu eser, programcıyı hazır paketlere tutsaklıktan kurtarmak için gereklidir. Bu eserdeki kavram, mekanizma ve programları esas alarak hiç bir paket programa, ithal ürüne ve hatta Windows'a bile ihtiyaç duymadan kendi programlarınızı yazabilirsiniz.

        üretmek özgürlüktür. Bu eser, yazılım üretmek için gereklidir.

        Bu eserin bir başka gereklililği de, eğer fakültelerimizde ders kitabı veya kaynak kitap olarak kabul edildiyse, veya baş vuru kitabı olarak benimsendiyse, eğitim ve öğretimde eş güdümü sağlamasıdır.


cd-dvda Bu eserde yeni olan nedir:


            ülkemizde CD ve DVD diskleri ve cihazları ve bunların programlanmasını anlatan bir başka eser yoktur. Bu eser bu konuda bir “ilk” tir.


            ülkemizde bilgisayar ile ilgili her hangi bir konuyu bu eser kadar kapsamlı ve akademik seviyede ele alıp inceleyen bir başka eser daha yoktur. Bu eser bu konuda da bir “ilk” tir.


            C/DVD programlamak gibi ağır ve profesyonel bir işlevi Assembler ve Quick Basic gibi basit programlama dilleri ile gerçekleştiren başka bir eser daha yoktur. Bu eser bu konuda da bir “ilk” tir.


(Yukarıdaki tespitlerimiz 03.08.2007 tarihi itibari iledir).


 


 


aaa Eserde kullanılan programlama dilleri:


        Her programcının kendisini yakın hissettiği bir programlama dili vardır. Bu dili kullanmaya alışkındır ve o dilin ustasıdır. Biz sizin hangi dili tercih ettiğinizi bilemeyiz.

        Her okuyucunun kendi kullanmaya alışkın olduğu programlama diline en kolay şekilde çevirebilmesi için biz bu eserdeki örnek programlarımızı en eski ve en basit programlama dilleri ile yazdık.

        Makine dili ve onun devamı olan Assembler, mikroişlemcinin kendi dilidir. Mikroişlemciye Assemblerdan daha yakın hiç bir programlama dili yoktur! Bütün programlama dilleri çalışırken assembler komutlarına dönüşür. Mikroişlemci ile onun kendi konuştuğu dil ile konuşmak bir üstünlük ve kudret arz eder. Bu sebeple örnek programların assembler ile yazılması adeta kaçınılmazdı. üstelik assembler derleyicileri piyasamızda bol ve dökümanları zengindir. Assembler bu gün favori olan C++ programlama dilinin de bir parçası gibidir. Assembler yazılmış olan bir Com program dosyası, her programlama diline bir alt rutin olarak kolayca monte edilebilir veya eşlenik komutlar kullanılarak başka dile dönüştürülebilir. Ayrıca TASM (Turbo Assembler) ve MASM (Macro Assembler) Linux, windows, Dos, BSD, QNX, ve MacOS işletim sistemleri altında rahat çalışır. çok sayıda dökümanı vardır. Bu sebeple bu eserde TASM derleyicisi tercih edildi. Nasıl kuıllanılacağı EK-C içerisinde anlatılmıştır. örnek programları yazmak için seçtiğimiz alternatif programlama dili Quick Basic'tir. Bu lisan içinde kullanılan neredeyse bütün komutların Visual Basic veya diğer dillerde bir karşılığı bulunduğu için ve ücretsiz elde edilebildiği için seçtik. Ayrıca Bölüm 7 içerisinde C programlama dili kullandık.

Daha temel, daha basit, daha bol dökümanı olan, daha kolay dönüştürülebilen başka bir dil bulsak onu seçecektik.

        Her iki dil de kolay kullanılabilen, kolay bulunabilen, yeni başlayanlar dahil her kes tarafından kolayca anlaşılabilen, ücretsiz ve bol dökümanı bulunan, en eski ve en temel programlama dilleridir. isteseydik örnek programların hepsini Delphi, Visual basic veya C++ ile yazabilir, böylece sizi belirli bir programlama dilini kullanmaya sürüklerdik. Bunu yapmadık. örnek programların şimdi yaygın olarak kullanılan ve gelecekte favori olabilecek her programlama diline kolayca uyarlanması hedeflenmiştir.

        Sizi belirli bir işletim sistemine muhtaç veya mahkum etmemek için biz dos ortamında çalıştık. Siz istiyorsanız Linux veya Win 32 işletim sisteminde çalışabilirsiniz.



cd-dvd  Eserde yer alan programlar:        

         Programların hepsi mutlaka denenmiştir, ve mutlaka çalışmaktadır.

         Hepsi mutlaka çalıştırılmış, amacına uygun çalıştıktan sonra kopyala-yapıştır yöntemi ile esere dahil edilmiştir. Eğer burada verilen bir programı yazıp çalıştıramadıysanız, yanlış yazmış, ilave edilmesi istenen rutini eserin sonundaki sayfalardan alıp programın içerisine ilave etmemiş olabilirsiniz. Arzu edilen ve çalışmadığı düşünülen her program yazarlardan çalışır şekilde sipariş edilebilir.

        Programları eserin içinden alıp bilgisayarınıza yazarken şunlara dikkat ediniz:

       DEĞiŞTiRiN yazan satırlardaki bilgiyi kendi bilgisayarınızın gerektirdiği bilgi ile değiştirin (veya değiştirebilirsiniz).

       - Eser matbada basılırken sıkışan satırlar katlanıp alt satıra taşmış veya sarkmış olabilir. Taktir edersiniz ki bunu engelleme veya önceden kestirip size uyarı işareti koymaya imkanımız olamazdı. Bu sebeple kitaptaki programı kendi bilgisayarınıza aktarırken alt satıra sarkan komutlar konusunda uyanık olmanızda fayda vardır.

       - Bir biti reset yapmak o biti 0 yapmaktır. Bir biti set yapmak o biti 1 yapmaktır

        - Flag yerine bayrak kelimesi (bazen) kullanılmıştır Flag iteral anlamı ile ve eserdeki anlamı ile bayrak kelimesine zaten eşittir.

         - Verilen bir sayı b harfi ile bitiyorsa binary, h harfi ile bitiyorsa heksa desimal, hiç bir harf ile bitmiyorsa yani sadece rakamlardan oluşuyorsa desimaldir.

         - Programları teker teker açıklayıcı satırlara bölerek yazmamız acemilikten değildir. Anlaşılmayı kolaylaştırmak içindir.

         - Bu sebeple, bu eserde sayfalar dolusu devam eden her program derlendiiği zaman en çok 10 Kb kadar küçük bir COM dosyaya dönüşür.

         - Eğer bir tabloda çift soru işareti (??) görüyorsanız, oraya bir baytlık bir sayı girmeniz istenecek demektir.

         - RAM içerisinde belirli bir noktanın (baytın) adresi verilirken önce 2 baytlık segment adresi, daha sonra 2 baytlık ofset adresi yazılır. Toplam olarak 4 baytlık adres belirten sayılara vektör ismi verilir. (örneğin 0123:4567 vektörü = 123.üncü segmentin 4567.inci baytını gösterir).

          - DVD'ler sistematik olarak CD den daha kolaydır ve DVDleri anlamak için önce CDleri anlamak şarttır. Bu sebeple bütün programlar (ve eser) CD merkezli yazılmıştır.

          - Bu eser windows ile çalışın diye yazılmadı. Bu eser sizi tüketime sevk edecek her şeyden kurtulmanız için yazıldı. Bazı programların windows altında çalışmayacakları programın veya bölümün başında uyarılmıştır. Uyarısı yapılmış programların windows altında çalışmasında ısrar ediyorsanız autoexec.bat dosyanıza LOCK komutu ilave ediniz. Ayrıca programlar esnek hazırlanmıştır. Böyle durumlarda programdaki komutları eşlenik komutlar ile değiştirip, başka bir dile taşımak da bir başka çözümdür.

           - Eserde anlattığımız bir konu hakkında bir örnek program yazdıysak neredeyse her örnek programı 2 farklı dilde yazıp sizlere sunduk. Ayni örnek programı çift bulacaksınız. Böylece verdiğimiz kaynak kodları her okuyucu kendisine yakın olduğu lisana kayıpsız çevirebilsin istedik.

           - Program çalıştırıldığında bir ekran çıktısı veriyorsa, örnek programın hemen altına ekran çıktısını verdik. Böylece programın muhtemel ekran çıktısı konusunda okuyucuyu temin etmiş olduk.

 


 

cd-dvd   Uluslararası standart uyuşmazlığı

        
        Belki inanmayacaksınız ama bu gün kullandığınız data CD ve DVD lerin standartları otel odalarında üretilmiştir. Gülmeyin... Doğru söylüyorum...  
          Endüstriyel tasarımcılar, Amerika'nın Nevada eyaletinde bulunan High Sierra isimli bir otel gazinosunda toplanarak "High Sierra" formatını çıkarmışlardır. Meşhur ISO9660 olarak bilinen High Sierra ismi bir otelin gazinosunun ismidir.

         Bu eser için inceleme yapmadan önce ben bu işlerin daha ciddi yapıldığını zannederdim.

        Gözlerinizi kapatıp düşünün.... insanlar bir otelin gazinosunda toplanıyorlar, uluslar arası teknolojik bir standart belirliyorlar, sonra da, bu standarta o sırada bulundukları otelin adını veriyorlar. Bizler dahil bütün dünya High Sierra standardı olarak bu terimi kullanıyoruz ve bu standardı kıble kabul eden programlar yazmak zorunda kalıyoruz. Bir uluslar arası CD ve DVD yazım formatına Kayseri oteli formatı dendiğini bir düşünsenize?

        CD ve DVD standartları arenasında, sayısız tutarsızlık vardır. Eserin içerisinde yeri geldikçe altları çizilecektir. Bakın sizlere tespit ettiklerimizin içerisinde anımsayabildiğimiz bazı çelişjileri ifade edelim:

         zzCD ve DVDler ile çalışırken öğreneceğiniz gibi, zaman esaslı adresler cihaza gönderilirken (veya cihazdan dönen bilgi okunurken), önce blok, sonra saniye sonra dakika yer alır. Halbuki, Int  2Fh AX=1510h Komut kodu=03 input kodu=0Ch cihaza gönderilirken önce dakika, sonra saniye, sonra blok gönderilir. input kodu=0Dh için bu sıralama tam tersidir. Bu kural, bütün komutların bir çıkıntı gibidir.

        Durun hızımı almışken anımsayabildiğim başka stadart uyumsuzluklarından da bahsedeyim:

        zzPath table içinde Dosya ismi tek sayıda harften oluşuyorsa dosya isminden sonuna fazladan bir tane sıfır konur. Dosya ismi çift sayıda harf veya karakterden oluşuyorsa son bayt atlanarak yok farz edilir. Sonraki baytlar 1 bayt öne çekilir. Dosyanın ismi bu yeni hali ile CD nin volumune yazılır. Bu berbat bir standardizasyondur. Bu standardı çıkaran ekibin gazinoda alkol aldıktan sonra standartları kaleme aldıklarından şüpheleniyorum.

        zzStandartlarda bir CD veya DVD nin henüz yazılmamış olan boş bölgesine invizible trak (görünmez trak) ismi verilmiştir. Bu isimlendirme yanlıştır. Henüz yazılmamış bir diskin içinde trak yoktur ve olsaydı bile görünmez olmayacaktı.

        zzOperasyon kodu BEh paketinin 01h numaralı baytının 2-3-4 üncü bitlerine orijinal dökümanlarda "expected sector type" (umulan-beklenen sektör tipi) ismi verilmiştir. Bu bitlere uluslar arası standartlar tarafından verilen bu terim doğru değildir. çünkü bu bitler beklenen değil "seçilen" sektör tipini belirtir.

        zzOperasyon kodu=43h paketinin sipariş=4 kullanımı ile elde edilen ilk lead in sektör adresi negatif sayı olması beklenirken 97 inci dakikayı gösteren bir adres elde edilmektedir ve bütün uluslar arası programlar bu sayıyı lead in başlangıcı olarak kullanmaktadır. Yani bilerek veya bilmeyerek bir hata yapılmış, bu hata benimsenerek ve yaygınlaştırılarak hata olmaktan uzaklaştırılmıştır. Veya belkide hatadan geri dönememişlerdir.

        zzUluslar arası SFF 8090 standartlarını düzenleyen komitenin 4 temsilcisine bu garip kuralın sebebi sorulmuştur. Kendisine sorulan 4 komite üyesinden sadece bir tanesi bunun sebebini bilmediğini belirtmiştir. Eser yayına hazırlandığı tarihe kadar uluslar arası standartları belirleyen diğer komite başkanlarının hiç birisinden elimize cevap geçmemiştir.

        zzECMA 119 standardında CD lerin volum tanıtıcılarındaki baytları saymaya 1 den başlanırken ECMA 168 standardında baytları saymaya 0 dan başlanır. Bu bir felakettir. Programcıyı gangren eder! Durun... Bitmedi..

        zzVolum içerisinde zaman etiketi ECMA 119 standardi itarafından, dizin içindeki zaman etiketi ECMA 168 tarafından belirlenir. Bu ikisinin tanımladığı zaman etiketlemesi tam bir karmaşa yaratacak şekildedir. ECMA 119, hem desimal hem heksadesimal sayı kullanır, ECMA 168  sadece heksadesimal sayı kullanır.. Bir tanesi 17 bayttır, diğer 12 bayttır. Bir tanesi 10, diğeri 100 mikrosaniye duyarlılıktadır. Bir tanesinde Greenwich zaman ofseti ilk bayttır, diğerinde sonuncu bayttır. Bu durum programcının kan akımını bozacak bir tuzak gibidir.


***

        Yukarıda birazını tespit edebildiğim ve pek azını sayabildiğim uyumsuzluklar, daha fazla mesai daha fazla enerji, daha fazla başarısızlık riski, daha fazla para harcamak demektir. Bu şekilde bir karmaşaya standart demek iyimser bir yaklaşımdır. (Benzer bir karmaşa, daha az olmakla birlikte mikroişlemci portlarında da vardır).

        öyle anlaşılıyorki; firmalar tarafından kendiliğinden (rastlantısal) gelişen mevcut yapılandırmalar standart kabul edilmiş olabilir.. Böylece fonksiyonel olmayan ve bir önceki standartlar ile mantıksal ilişkisi bulunmayan bir mimari doğmuş olabilir. Daha sonra bu mimari yapı yaygınlaştırılarak hata olmaktan çıkarılmaya çalışılmış olmalıdır. Veya hatadan geri dönmek için çok geç olduğu düşünülmüş de olabilir?

        Bu yazdıklarım tamamen bireysel tespitim ve düşüncemdir.

        Bu karmaşa sebebiyle, odyo CD lerde volum, dizin, dosya yapısı nasıl olmaktadır? CD-RW de volum dizin dosya yapısı nasıl olmaktadır? Yazma komutları nasıl gönderilmelidir? çok oturumlu CDlerde her oturuma nasıl erişilmektedir. Partisyon volum mimarisi nasıldır? nasıl yapılanır? Sonuncu oturum ve ilk oturum arasındaki dosya kayıtları nerede tutulmaktadır? Bunlara eser içinde yanıt veremediğimiz için özür dileriz.

        Biz bu eserde standart dökümanlarda ne bulduysak onu yazdık. Eğer bir konuda fena adresleme, çarpraz bilgi akışı, tutarsız ve sıra dışı kurallar görüyorsanız ve bu nasıl olur diyorsanız bu sorununuzun muhatapı biz olamayız.

        Göya esere ön söz yazmak için oturmuştum.

Editör

Murat Aydın,

Yazarlar adına


aaaaaa Teşekkür


önce bana bu eseri yazma fırsatı veren Allah’a, ve sonra benimle iş birliği yapan oğullarıma teşekkür ederiz.

Onur Aydın, Oğuz Aydın, Murat Aydın




içiNDEKiLER

BöLüM 1

TEMEL KAVRAMLAR ve Terminoloji

    Lazer ışığı ve CD-ROM Okuyucu

    Fotosensetif yüzey ve PiT oluşması

BiR CD NiN ANATOMiSi

    CD lerde Trak kavramı

    Trak anatomisi

    Sektör anatomisi

CD NiN MiMARi YAPISI

    1.    SiSTEM KULLANIM ALANI (SUA- System Usage Area)

        a) PCA - Program Calibration Area

        b) PMA - Program Memory Area

    2. BiLGi ALANI (IF – information Area)

        a) Lead in

        b) Program Area

        c) Lead out

CD LERE BiLGiNiN YAZILIP OKUNMASI

    Bilginin okunması

    Bilginin  yazılması

        ATiP sinyal

    CD-RW disklere yazma

    CD-RW diskleri silme

    CD-RW disklerde üstüne yazma


BöLüM 2

CD çeşitleri

    1. CD-R ve CD-RW diskler

    2. Foto CD

    3. DDCD (Double Density Compact Disk)

    4. CD-EXTRA

    5. CD-DA

    6. DVD

    7. Miks CD diskler

    8. CD-XA Diskler

    9. CD-I Diskler

    10. Karaoke CD

    11. Bridge Disk

    12. Odyo CD

ODYO CD LER

    imaj dosya (Cue Sheet) örnekleri

    imaj dosyanın CD ye yazılması



BöLüM 3

CD de ADRESLEME SABiTLERi

    Sektör zamanlaması ve blok tanımı

    Sektör Header

BiLGiNiN SEKTöRE YERLEŞTiRiLMESi

    MOD 0 format

    MOD 1 format (cooked format)

    MOD 2 format (Raw format)

        A)    Mod 2 formsuz

        B)    Mod 2 Form1

            Subheader

        C)    Mod 2 Form2

    ODYO format

        Ses Sinyali hakkında Temel Bilgiler

        PCM (Pulse Code Modulation)

        ADPCM (Adaptive Pulse Code Modulation)

        Bilginin okunması ve F1 Blok oluşturulması

        F2 Blok oluşturulması

        F3 Blok oluşturulması

SUBKOD KANALLAR

EFM MODüLASYON


BöLüM 4


FORMAT çEŞiTLERi

    Red book  formatı

    Yellow book  formatı

    Orange book  formatı

        Kesintisiz yazma (uninterrupted)

        Artarak yazma (incremental)

    ISO 9660 formatı

    UDF format

    Diğer formatlar

HATA DüZELTME

    CiRC (Cross Interleave Reed-Solomon)

    EDC kodlaması

    ECC (Error Correction enCoding)


BöLüM 5


KOPYA KORUMA

    Kopya koruma yazılımları

CD LERDE ViRUS

CD LERi SAKLAMAK

BiR CD NiN öRü

    Bozuk bir CD ile ne yapılabilir

    Bir CD yi bozmak

BAZI PROBLEMLER VE iP UçLARI

    CD ve CD-ROM cihazın bakımı

C/DVD-ROM CiHAZI HAKKINDA

    C/DVD-ROM cihazının güç konumları

C/DVD-ROM CiHAZININ HIZI

ZAMAN AŞIMI

BUFFER UNDERRUN



BöLüM 6

KARAKTER CiHAZ KAVRAMI

MSCDEX

    MSCDEXin kurulması

    MSCDEX'in Programlanması

        CD-ROM subünit sayısı ve sürücü-header adresi

        Dosya Açmak

        File Handle

    MSCDEX sürücünün mimarisi

        CD-ROM kimlik bilgisini tespit etmek

        CD-ROM kimlik bilgisini yeniden düzenlemek

        CD-ROM Karakter cihazın dosya ismini tespit etmek

        CD-ROM sayısı ve cihazın temsil edildiği harfi tespiti

        MSCDEXin imzasını tespit etmek

        MSCDEX kurulmuş mu? Mevcut CD-ROM'u destek..

        MSCDEX versiyonunu tespit etmek

        Sisteme bağlı CD-ROM sürücü var mı? Varsa kaç tane?

        CD-DVD nin etiket-seri no-format cinsini tespit etmek

        Blok cihazın seri numarasını değiştirmek

        CD-DVD nin ne kadarı dolu? Sektör sayısı ve formatı...

        Medya kimlik baytı


BöLüM 7

ASPI

    ASPI'nin Kurulması

    ASPI'nin özellikleri

ASPI' NiN DOS ALTINDA PROGRAMLANMASI

    ASPI için dosya açmak

    ASPI Giriş noktasının tespiti

    SRB (SCSI Request Block)

        Komut kodu: 00h (Host adaptör isteği)

        Komut kodu: 01h (Cihaz tipi nedir)

        Komut kodu: 02h (SCSI I/O komutu işlet)

        Komut kodu: 03h (SCSI I/O komutu iptal et)

        Komut kodu: 04h (SCSI cihaz reset)

        Komut kodu: 05h (Host Adaptör Parametreleri)

        Komut kodu: 06h (Cihaz bilgisi)

ASPI' NiN WiNDOWS ALTINDA PROGRAMLANMASI (WinASPi)

    ASPI'ye erişim:

        1. GetASPI32SupportInfo komutu

        2. SendASPI32Command komutu:

            SC_HA_INQUIRY,  SC_GET_DEV_TYPE,

            SC_EXEC_SCSI_CMD, SC_ABORT_SRB,

            SC_RESET_DEV, SC_GET_DISK_INFO,

            SC_RESCAN_SCSI_BUS , SC_GETSET_TIMEOUTS

        3. GetASPI32Buffer komutu

        4. FreeASPI32Buffer komutu

        5. TranslateASPI32Address komutu

    Görevin tamamlanmasını bekleme (Bilgi istemek,Geri çağırmak,    Sondaj)

    ASPI arıza kodları



BöLüM 8

GENEL KULLANIM BiLGiLERi

    Alternatif Fonksiyonlar

IOCTL iNPUT

    Input kodu 00: MSCDEX Header adresini tespit etmek

    Input kodu 01: Lazer kafanın koordinatlarını tespit etmek

    Input kodu 04: Odyo kanal bilgisi

    Input kodu 05: Cihazın tamponunu okumak

    Input kodu 06: Cihazın durum bilgisini tespit etmek

    Input kodu 07: Okuma modununa göre sektör boyunu tespit

    Input kodu 08: CD/DVD sonuncu sektör (volum büyüklüğü)

    Input kodu 09: Cihazdaki CD değişti mi?

Input kodu 0Ah :

    Odyo CD ilk ve son odyo trak, ilk lead out sektör numarası

    Input kodu 0Bh: Odyo trak bilgisi

    Input kodu 0Ch: Odyo Q kanal bilgisi

    Input kodu 0Dh: Odyo Sub Kanal bilgisi

    Input kodu 0Eh: UPC kodu bilgisi

    Input kodu 0Fh: ?Odyo durumu bilgisi?

IOCTL OUTPUT

    Output kodu 00: Cihazın kapısını aç

    Output kodu 01: Kapıyı kilitle / aç

    Output kodu 02: Cihazı resetle

    Output kodu 03: Odyo kanal kontrolu

    Output kodu 04: Cihazın tamponuna bilgi göndermek

    Output kodu 05: Cihazın kapısını kapat



BöLüM 9

iSTEK BLOĞU

    istek bloğunun mimarisi

    istek bloğu göndermek

    istek bloğu hata raporu

iSTEK BLOĞU (03h ve 0Ch dışında kalan) DiĞER KOMUT KODLARI



BöLüM 10

IOCTL iSTEKLERi

IOCTL iNPUT iSTEKLERi

    Komut kodu 03h

        input kodu, 00: Sürücü header tespit etmek

        input kodu, 01: Lazer kafanın koordinatlarını tespit etmek

        input kodu, 04: Odyo kanal bilgisi

        input kodu, 05: Cihazın tamponunu okumak

        input kodu, 06: Cihazın durum bilgisini tespit etmek

        input kodu, 07: Okuma moduna göre sektör boyu

        input kodu, 08: CD/DVD sonuncu sektör numarasını (volum büyüklüğünü) tespit etmek

        input kodu, 09: Cihazdaki CD değişti mi?

        input kodu, 0Ah: Odyo CD içindeki ilk ve sonuncu odyo trak numarası, ilk lead out sektör numarası

        input kodu, 0Bh: Odyo trak bilgisi

        input kodu, 0Ch: Odyo Q kanal bilgisi

        input kodu, 0Dh: Odyo Sub Kanal bilgisi

        input kodu, 0Eh: UPC kodu bilgisi

        input kodu, 0Fh: ?Odyo durumu bilgisi?

IOCTL OUTPUT iSTEKLERi

    Komut kodu 0Ch

        Output kodu, 00: Cihazın kapısını aç

        Output kodu, 01: Cihazın kapısını kilitle / aç

        Output kodu, 02: Cihazı resetle

        Output kodu, 03: Odyo kanal kontrolu

        Output kodu, 04: Cihazın tamponuna bilgi göndermek

        Output kodu, 05: Cihazın kapısını kapat



BöLüM 11

ODYO HAZIRLIK

ODYO KOMUTLARI

        Komut kodu, 84h : Şarkı çalmak

        Komut kodu, 85h : Dur (pause)

        Komut kodu, 88h : Devam et (resume)

        Komut kodu, 83h : Yeniden konumlandır (seek)



BöLüM 12

SEKTöR OKUMA TERCiHLERi

    Header dahil sektör okumak

        Komut kodu, 80h : Sektör oku (Header dahil)

        Komut kodu, 82h : Sektör oku (prefetch)

    Header hariç sektör okumak

Sıralı Sektör okumak ve imaj dosya hazırlamak



BöLüM 13

OKUNAN SEKTöRüN DiLiMLENMESi

    Olmayana ergi metodunun uygulanması

SEKTöRüN TiPLENDiRiLMESi



BöLüM 14

KiLiTLEME

    Kilitlenen bir cihazın özellikleri

    Kilit seviyeleri

    Kilit seviyelerinin hiyerarşik sırası

    Volümün kilitlenmesi

    Volümün kilidini açmak

    Kilit seviyesinin tespit edilmesi

    Hedef cihazın resetlenmesi

    Açık dosyaları listelemek

    Kilit bayrağı


BöLüM 15

iLK 150 SEKTöRüN TERMiNOLOJiSi

    Kanonikalize dosya ismi



BöLüM 16

VOLUM TANITICILAR

    Boot volum tanımlayıcısı

    Asıl (primer) volum tanımlayıcısı

    ilave (supplementary) volum tanımlayıcısı

    Bölüm (partition) volum tanımlayıcısı

    Sonlandırıcı (terminator) volum tanımlayıcısı

VOLUMU OKUMAK

    Volum tanıtıcı (descriptor) önceliğinin belirlenmesi

        COPYRIGHT-ABSTRACT-BIBLIOGRAPHIC DOSYALAR

PATH TABLE

BOOTABLE (YüKLENEBiLiR) DiSKLER


-------iLERi BiLGiLER----------


BöLüM 17

iDE ARA BiRiM

    Ara birimin yapısı

    Ara birimin tamponu

    Ara birimin portları

    Ara birimin çalışma modları

    Ara birimin adreslenmesi


BöLüM 18

PORT PROGRAMLAMAK

CD/DVD-ROM PORTLARI

    Ayni iDE kanalda (Master/Slave) cihaz seçimi

        Dört altın kural

REGiSTERLER

    Komut blok register ve portları

    Cihaz kontrol registerleri ve portları

CD/DVD-ROM PORTLARIN iŞLEM SIRASI



BöLüM 19

PAKET OLMAYAN ATA KOMUTLARI

    Reset (Komut kodu=08h)

    Güç komutları

        Güç konumunu tespit et (Komut kodu:E5h)

        Uykuya gir (Sleep) (Komut Kodu=E6h)

    Stend bay komutları

    idle komutları

        Transpozisyon zamanlaması

        Stend bay geçiş süresi ayarlaması (Komut kodu = E2h)

        idle geçiş süresi ayarlaması (Komut kodu = E3h)

    ATAPi kimlik tespiti (Identify drive) (Komut kodu=A1h)

    Servis (Komut kodu= A2h)

    Durumu belirle  (Komut Kodu=EFh) (Set Features)

    NOP (No operation) (Operasyon kodu = 00h)

    Cihaz teşhis (Device Diagnostic) (Komut kodu=90h)

PAKET KOMUT (komut Kodu=A0)



BöLüM 20

ATAPi TANIMI

    Sistemdeki ATAPi cihazı bulmak

PAKET KOMUT KAVRAMI

    Paket lomutun yapısı

    Paket komutun gönderilmesi


BöLüM 21

CD-ROM CiHAZI iLE iLGiLi PAKETLER

        ATAPi SORGULA Operasyon kodu: 12h

        C/DVD-ROM CiHAZI HAZIR MI? Operasyon kodu: 00h

        C/DVD-ROM CiHAZI MEK Kmd Operasyon kodu: 1Bh

        KAPI KiLiT Operasyon kodu: 1Eh

        HATA ANALiZi Operasyon kodu: 03h

        CiHAZI SIFIRLA Operasyon kodu: 01h

        CiHAZIN iŞLT SiSTEMiNi OKU Operasyon kodu: 3Ch

        CiHAZIN iŞLETiM SiSTEMiNi YAZ Operasyon kodu: 3Bh

        ARTIK KULLANILMAYAN PAKETLER


BöLüM 22

ODYO iLE iLGiLi PAKETLER

        ODYO çAL (MSB) Operasyon kodu: 47h

        ODYO çAL (LBA) Operasyon kodu: 45h

        ODYO çAL (LBA) Operasyon kodu: A5h

        PAUS-RESUME Operasyon kodu: 4Bh

        iLERi-GERi SAR Operasyon kodu: Bah

        çALMAYI ve iLERi-GERi SARMAYI DURDUR-DEVAM

        YENiDEN KONUMLANDIR (Seek) Operasyon kodu: 2Bh



BöLüM 23

CD / DVD DiSK iLE iLGiLi PAKETLER

        SEKTöR KAPASiTESi Operasyon kodu: 25h

        SEKTöR OKU (LBA-kısa) Operasyon kodu: 28h

        SEKTöR OKU (LBA-uzun) Operasyon kodu: A8h

        SEKTöR OKU (LBA-seçmeli) Operasyon kodu: BEh

        SEKTöR OKU (MSF-seçmeli) Operasyon kodu: B9h

        SEKTöR BiLGiSi OKU  Operasyon kodu: 44h

        CD-DVD - BiR TRAĞIN BiLGiSi Operasyon kodu: 52h

        CD-DVD TRAK-OTURUM BiLGiSi Operasyon kodu: 51h

        SUB KOD KANALI OKU Operasyon kodu: 42h

        OPC KODU Operasyon kodu: 54h

        CD-DVD DiSK KAPASiTE BiLGiSi Operasyon kodu: 23h

        CD-DVD PERFORMANS BiLGiSi Operasyon kodu: ACh



BöLüM 24

43h PAKETi

    Sipariş = 0 (TOC bilgisi)

    Sipariş = 1 (Oturum bilgisi)

    Sipariş = 2 (TOC, Q kanal bilgisi)

    Sipariş = 3 (PMA, Q kanal bilgisi)

    Sipariş = 4 (ATiP bilgisi)

        Boş diskte adresleme

        Diskin üretici fabrikasının tespiti (kopya koruma)  kup

    Sipariş = 5 (CD-Text bilgisi)


BöLüM 25

MOD SAYFASI

        MOD SAYFASI ALMAK

        Durum baytı

MOD SAYFASINI CiHAZA GöNDERMEK

SAYFALAR

        Sayfa kodu=0Eh (Odyo sayfası)

        Sayfa kodu=1Ah (Güç kontrol sayfası)

        Sayfa kodu=1Dh (Zaman aşımı ve yazma korumasayf)

        Sayfa kodu=0Dh (parametreler sayfası)

        Sayfa kodu=2Ah (Cihazın kapasitesi sayfası)

        Sayfa kodu=01h (Cihazın arıza politikası sayfası)

        Sayfa kodu=05h (Yazma parametreleri sayfası)

        Sayfa kodu=3Fh (Sayfaların sayfası)

        Sayfa kodu=18h (Versiyon destek sayfası)

        Sayfa kodu=08h (Cache bellek kullanım sayfası)

        Sayfa kodu= 1Bh (Blok Cihaz sayfası)


BöLüM 26

CiHAZDAN RAPOR iSTEMEK

        Cihazdan gönderilen raporun anatomisi

RAPOR TiPLERi

        Rapor Tipi= 00h Raporlar desteği raporu

        Rapor Tipi=01h işlem kabiliyeti ve parametreleri raporu

        Rapor Tipi=02h Güç yönetim raporu

        Rapor Tipi=03h Dış istekler raporu

        Rapor Tipi=04h Disk raporu

        Rapor Tipi=05h çok Kullanıcı raporu

        Rapor Tipi=06h Meşgul raporu

DIŞ iSTEKLERiN iADESi



BöLüM 27

PROFiL RAPORU

    Cihazdan profil raporu istemek

    Profil raporunun anatomisi

PROFiL TiPLERi

        çekirdekkonfigürasyonu (Profil No=01h)

        Durum raporu geçerlilik konf (Profil No=02h)

        Disk yükleme konfigürasyonu (Profil No=03h)

        Yazma koruma konfigürasyonu (Profil No=04h)

        Sektör okuma konfigürasyonu (Profil No=10h)

        çoklu okuma konfigürasyonu (Profil No=1Dh)

        CD okuma konfigürasyonu (Profil No=1Eh)

        DVD okuma konfigürasyonu (Profil No=1Fh)

        CD yazma konfigürasyonu (Profil No=20h)

        Artarak yazma konfigürasyonu (Profil No=21h)

        Defekt konfigürasyonu (Profil No=24h)

        Write Once konfigürasyonu (Profil No=25h)

        Sınırlı yazma konfigürasyonu (Profil No=26h)

        CD-RW CAV yazma konfigürasyonu (Profil No=27h)

        TAO yazma konfigürasyonu (Profil No=2Dh)

        CD master konfigürasyon (Profil No=2Eh)

        DVD-R / RW yazma konfigürasyonu (Profil No=2Fh)

        DVD tabaka aklayarak yazma konf (Profil No=33h)

        DVD okuma konfigürasyonu (Profil No=50h)

        DVD yazma konfigürasyonu (Profil No=51h)

        Hibrit konfigürasyonu (Profil No=80h)

        Güç yönetimi konfigürasyonu (Profil No=100h)

        Odyo konfigürasyonu (Profil No=103h)

        Mikrokod konfigürasyonu (Profil No=104h)

        Zaman aşımı konfigürasyonu (Profil No=105h)

        Kopya koruma konf (Profil No=106h , 10Bh, 10Dh)

        Hız konfigürasyonu (Profil No=107h)

        Cihaz seri numarası konfigürasyonu (Profil No=108h)

        Cihaz üretim tarihi konfigürasyonu (Profil No=10Ch)

        Raporlar konfigürasyonu (Profil No=00h)



BöLüM 28

KOPYA KORUYAN PAKETLER

        Mekanizmanın esasları ve terimleri

    Parola tespiti Op. Kodu= A3h

    Yetkilendirme Op. Kodu=A4h



BöLüM 29

FORMAT KAVRAMI

    Format paketi

    Format tipleri

        Format Tipi = 00h (Ful format):

        Format Tipi = 01h (Yedek bölgeyi genişlet):

        Format Tipi = 04h (Zone yeniden format):

        Format Tipi = 05h (Zone format)

        Format Tipi = 10h (CD-RW DVD-RW Oturum / border)

        Format Tipi = 11h (CD-RW DVD-RW Son otrm/border

        Format Tipi = 12h (CD-RW DVD-RW otrm/bord ekle)

        Format Tipi = 13h (DVD-RW Hızlı border ekle)

        Format Tipi = 14h (DVD-RW SL Hızlı border ekle)

        Format Tipi = 15h (DVD-RW Hızlı border format):

        Format Tipi = 16h (HD DVD-R Test zon genişletme):

        Format Tipi = 17h (HD DVD-R DL Tabakalar arası)

        Format Tipi = 20h (Ful format+yedek bölge ayırmak):

    Paketin kullanılması


BöLüM 30

YAZMA öNCESi KOMUTLAR

        OKUMA/YAZMA HIZINI AYARLA Operasyon kodu: BBh

        OKUMA/YAZMA HIZINI AYARLA (/DBi gönder) Op kodu: B6h

        DiSKi SiL Operasyon kodu: A1h

        CUE SHEET GöNDER Operasyon kodu: 5Dh

        YAZMA ve YAZMA SONRASI KOMUTLAR

        TRAK REZERVE ET Operasyon kodu: 53h

        TAMPONU öLç Operasyon kodu: 5Ch

        TAMPONDAKi KALINTIYI YAZ Operasyon kodu: 35h

        FiNALiZE ET Operasyon kodu: 5Bh

        DVD RZON TAMiR ET Operasyon kodu: 58h

        YAZ Operasyon kodu: AAh

        YAZ ve karşılaştır Operasyon kodu: 2Eh

        YAZ Operasyon kodu: 2Ah

UNDERRUN durumu

Yazılabilir ilk sektör adresinin tespiti

TAO yazmak

PAKET/ARTARAK yazmak

DAO/SAO yazmak

CD-RW/DVD-RW (üzerine) yazmak



PROGRAM LiSTESi (numara sırasına göre)




Prg No

Programın işlevi

06:01

CD-ROM cihazı sayısı ve header adresini tespit etmek

06:02

CD-ROM cihazı sayısı ve header adresini tespit etmek (Quick Basic)

06:03

MSCDEX sürücü ile haberleşmek için dosya açmak

06:04

MSCDEX sürücü kimlik bilgisini tespit etmek

06:05

MSCDEX sürücü kimlik bilgisini tespit etmek

06:06

MSCDEX sürücü kimlik bilgisi değistirmek

06:07

MSCDEX sürücü kimlik bilgisi değistirmek (Quick Basic)

06:08

CD-ROM Karakter cihazın dosya ismini tespit etmek

06:09

CD-ROM sayısı ve cihazın temsil edildiği harfi  tespit etmek

06:10

MSCDEX imzasını tespit etmek

06:11

MSCDEX instal edilmiş mi Yöntem-1

06:12

MSCDEX instal edilmiş mi Yöntem-2

06:13

MSCDEX instal edilmiş mi Yöntem-2 (Quick Basic)

06:14

MSCDEX versiyon numarasını tepit etmek

06:15

MSCDEX versiyon numarasını tepit etmek (Quick Basic)

06:16

Mevcut CD-ROM sayı ve sürücü harflerini tespit etmek Yöntem-1

06:17

Mevcut CD-ROM sayı ve sürücü harflerini tespit etmek Yöntem-1 (Quick Basic)

06:18

Mevcut CD-ROM sayı ve sürücü harflerini tespit etmek Yöntem-2

06:19

Mevcut CD-ROM sayı ve sürücü harflerini tespit etmek Yöntem-2 (Quick Basic)

06:20

CD Etiket-SeriNo ve Format cinsi tespit edilmesi

06:21

CD Etiket-SeriNo ve Format cinsi tespit edilmesi (Quick Basic)

06:22

Sabit ve flopy disklerde Volum-SeriNo ve Format cinsi tespit edilmesi (Quick Basic)

06:23

CDdeki dolu sektör sayısının tespiti

06:24

CDdeki dolu sektör sayısının tespiti (Quick Basic)

07:01

ASPI giriş noktasının tespiti

08:01

MSCDEX Sürücü Header adresini tespit etmek

08:02

MSCDEX sürücü header adresini tespit etmek (Quick Basic)

08:03

Lazer kafanın koordinatlarını tespit etmek

08:04

Lazer kafanın koordinatlarını tespit etmek (Quick Basic)

08:05

Odyo bilgisini tespit etmek

08:06

Odyo bilgisini tespit etmek (Quick Basic)

08:07

CD-ROM cihaz tamponunu okumak.

08:08

CD-ROM cihazın tamponunu okumak (Quick Basic)

08:09

CD-ROM cihaz durum bilgisini okumak

08:10

CD-ROM cihazın içinde CD var mı?

08:11

CD-ROM cihazın içinde CD var mı?

08:12

CD-ROM cihaz durum bilgisini okumak (Quick Basic)

08:13

Bir sektördeki bayt sayısını tespit etmek

08:14

Bir sektördeki bayt sayısını tespit etmek (Quick Basic)

08:15

CD nin sonuncu sektörünün numarasını tespit etmek

08:16

CD nin sonuncu sektörünün numarasını tespit etmek (Quick Basic)

08:17

CD nin değiştirildiğini tespit etmek

08:18

CD nin değiştirildiğini tespit etmek (Quick Basic)

08:19

Odyo CD deki ilk / son şarkıyı ve ilk leadout sektörü tespit etmek

08:20

Odyo trak(Şarkı) bilgisi (Quick Basic)

08:21

Odyo trak bilgisi- Şarkının başlangıç adresini tespit etmek

08:22

Odyo Trak bilgisi - Şarkının başlangıç adresini tespit etmek (Quick Basic)

08:23

Şarkının çalmakta olan sektör adresini tespit etmek (Qkanal bilgisi)

08:24

Şarkının çalmakta olan sektör adresini tespit etmek (Qkanal bilgisi) (Quick Basic)

08:25

Odyo sub kanal bilgisi okumak

08:26

Odyo sub kanal bilgisini okumak (Quick Basic)

08:27

CD nin UPC kodunu okumak

08:28

CD nin UPC kodu okumak (Quick Basic)

08:29+

Cihazın kapısını aç-1

08:30+

CD-ROM cihazın kapısını aç-1 (Quick Basic)

08:31+

Cihazın kapısını aç-2

08:32+

CD-ROM cihazın kapısını aç-2 (Quick Basic)

08:33

Cihazin kapısını kilitle / Aç

08:34

CD-ROM cihazın kapısını kilitle / kilidi aç (Quick Basic)

08:35

CD-ROM cihazı resetlemek

08:36

CD-ROM cihazını resetle (Quick Basic)

08:37

Odyo kanal bilgisi yazmak

08:38

Odyo kanal bilgisi yazmak (Quick Basic)

08:39

CD-ROM cihazın tamponuna yazmak

08:40

CD-ROM cihazın tamponuna yazmak (Quick Basic)

08:41+

Cihazın kapısını kapat

08:42+

CD-ROM cihazın kapısını kapat (Quick Basic)

09:01

Cihazı initialize etmek

09:02

Output

10:01

CD-ROM sürücü header adresi öğrenmek

10:02

CD-ROM sürücü header adresi öğrenmek (Quick Basic)

10:03

Lazer kafanın koordinatlarını tespit etmek

10:04

Lazer kafanın koordinatlarını tespit etmek (Quick Basic)

10:05

Lazer kafanın koordinatlarını tespit etmek-2 (Quick Basic)

10:06

Odyo kanal bilgisi

10:07

Odyo kanal bilgisi (Quick Basic)

10:08

CD-ROM cihaz tamponunu okumak

10:09

CD-ROM cihaz tamponunu okumak (Quick Basic)

10:10

Cihazın durum bilgisini tespit etmek

10:11

Cihazın durum bilgisini tespit etmek (Quick Basic)

10:12

Bir sektördeki bayt sayısını tespit etmek

10:13

Bir sektördeki bayt sayısını tespit etmek (Quick Basic)

10:14

CD nin sonuncu sektörünün numarasını tespit etmek

10:15

CD nin sonuncu sektörünün numarasını tespit etmek (Quick Basic)

10:16

Cihazdaki CD değişti mi?

10:17

Cihazdaki CD değişti mi? (Quick Basic)

10:18

Odyo CD deki ilk / son şarkıyı ve ilk leadout sektörü tespit etmek

10:19

Odyo CD deki ilk / son şarkıyı ve ilk leadout sektörü tespit etmek (Quick Basic)

10:20

Odyo Trak bilgisi - Şarkının başlangıç adresini tespit etmek

10:21

Odyo Trak bilgisi - Şarkının başlangıç adresini tespit etmek (Quick Basic)

10:22

Odyo Q kanal bilgisi

10:23

Odyo Q kanal bilgisi (Quick Basic)

10:24

Odyo sub kanal bilgisi

10:25

Odyo sub kanal bilgisi (Quick Basic)

10:26

UPC kodu tespit etmek

10:27

UPC kodu tespit etmek (Quick Basic)

10:28

?Odyo durum bilgisi?

10:29

?Odyo durum bilgisi? (Quick Basic)

10:30+

CD-ROM cihazın kapısını açmak

10:31+

CD-ROM cihazın kapısını açmak (Quick Basic)

10:32

Cihazın kapısını kilitle / aç

10:33

Cihazın kapısını kilitle / aç (Quick Basic)

10:34

CD-ROM Cihazı resetlemek

10:35

CD-ROM cihazı resetlemek (Quick Basic)

10:36

Odyo kanal bilgisi yazmak

10:37

Odyo kanal bilgisi yazmak (Quick basic)

10:38

CD-ROM cihazın tamponuna yazmak

10:39

CD-ROM cihazın tamponuna yazmak (Quick Basic)

10:40

CD-ROM cihazın kapısını kapatmak

10:41

CD-ROM cihazın kapısını kapatmak (Quick Basic)

11.01+

Odyo şarkıyı çalmak-paus yapmak-devam etmek

11:02+

Odyo şarkı çalmak-Paus yapmak-Devam etmek

11.03

Odyo Paus ve Resume yapmak

11.04

Odyo paus ve resume yapmak (Quick Basic)

11.05

Lazer okuyucu kafayı yeniden konumlandırmak (Quick Basic)

11.06+

Odyo çalma programı (Quick Basic)

12.01

CD den 1 sektörün tamamını okumak

12:02

CD den 1 sektörün tamamını okumak (Quick Basic)

12:03

CD den 1 sektor okumak-sadece kullanıcı bilgisi

12:04

CD den 1 sektor okumak - sadece kullanıcı bilgisi (Quick Basic)

12:05

Sıralı sektör okumak-imaj dosya hazırlamak

12:06

Sıralı sektör okumak-imaj dosya hazırlamak (Quick Basic)

13:01

Sektör formatını ayırt etmek

13:02

Sektör formatını ayırt etmek (Quick Basic)

14:01

Seviye 0 kilitlemek

14:02

Seviye 0 kilitlemek (Quick Basic)

14:03

Volumun kilitlenmesi, kilitin tespiti ve kaldırılması

14:04

Volumun kilitlenmesi, kilitin tespiti ve kaldırılması (Quick Basic)

14:05

Hedef cihazin resetlenmesi

14:06

Hedef cihazin resetlenmesi (Quick Basic)

14:07

Kilit bayragini okumak

15:01

Dosya ismi kanonikalize etmek

16:01

CD Volum okuma

16:02

CD Volumlerini okumak (standart yöntem)

16:03

CD volumlerini okumak (alternatif yöntem) (Quick Basic)

16:04

CD Primer Volum okuma

16:05

CD Primer Volum okuma (Quick Basic)

16:06

Volum tanıtıcı önceliğinin okunması

16:07

Volum tanıtıcı önceliğinin belirlenmesi

16:08

Volum tanıtıcı önceliğinin okunması ve belirlenmesi (Quick Basic)

16:09

Copyright-Abstract-Bibliographic dosya isimleri tespiti

16:10

Copyright-Abstract-Bibliographic dosya isimleri tespiti (Quick Basic)

16:11

Root dizini okumak

16:12

Root dizini okumak (Quick Basic)

16:13

ismi verilen bir dizin kaydını okumak

16:14

iç-içe geçmiş dizin ve dosyaları okumak (Quick Basic)

18:01

Basit bir port programı (reset yapmak)

18:02

Basit bir port programı (disket ledini yakmak)

19:01+

iDE cihazı resetlemek

19:02

iDE cihazı resetlemek (Quick Basic)

19:03

Lazer kafayı park etmek

19:04

Lazer kafayı park etmek (Quick Basic)

19:05+

CD-ROM güç konumu değiştirmek

19:06+

CD-ROM güç konumu değiştirmek (Quick Basic)

19:07

Transpozisyon zamanlamasını değiştirmek

19:08

Transpozisyon zamanlamasını değiştirmek (Quick Basic)

19:09+

ATAPi kimliğinin tespiti

19:10+

ATAPi kimliğinin tespiti (Quick Basic)

19:11

CD-ROM haberleşme protokolunu değiştirmek

19:12

CD-ROM haberleşme protokolunu değiştirmek (Quick Basic)

19:13

Cihaz teşhis (Quick Basic)

20:01

Sistemdeki iDE ATAPi cihazların tespit edilmesi

20:02

Sistemdeki iDE ATAPi cihazların tespit edilmesi (Quick Basic)

21:01+

ATAPi sorgulama

21:02+

ATAPi sorgulama (Quick Basic)

21:03

C/DVD-ROMcihazı hazır mı

21:04

C/DVD-ROM cihazı hazır mı (Quick Basic)

21:05

C/DVD-ROM cihazı mekanik kumandası

21:06

C/DVD cihazı mekanik kumandası (Quick Basic)

21:07

Kapının kilitlenip açılması

21:08

Kapının kilitlenip açılması (Quick Basic)

21:09

Hata analizi (Quick Basic)Program 19:07 Transpozisyon zamanlamasını değiştirmek

22:01

Odyo CD çalmak (MSN formatıyla)

22:02

Odyo CD çalmak (MSN formatıyla) (Quick Basic)

22:03

Odyo CD çalmak (LBA formatıyla) ve Paus/Resume

22:04

Odyo CD çalmak (LBA formatıyla) ve Paus/Resume (Quick Basic)

22:05

Cihazı sıfırla lazer kafayı konumlandır.

22:06

Cihazı sıfırla lazer kafayı konumlandır (Quick Basic)

23:01

CD kapasitesi (Quick Basic)

22:02

Odyo CD çalmak (MSN formatıyla) (Quick Basic)

23:03

Sektör okuma (Quick Basic)

23:04

Sektör oku (seçmeli)

23:05+

Sektör oku (seçmeli) (Quick Basic)

23:06+

Sektör header okumak

23:07

Sektör header okumak (Quick Basic) *

23:08

CD-DVD - Bir trağın bilgisi

23:09+

CD-DVD - Bir trağın bilgisi (Quick Basic)

23:10+

C/DVD Oturum Bilgisi

23:11+

C/DVD Oturum Bilgisi (Quick Basic)

23:12

Q Sub Kod kanalı okumak

23:13

Q Sub Kod kanalı okumak (Quick Basic)

23:15+

CD-DVD kapasite bilgisi (Quick Basic)

23:16+

C/DVD diskin nominal performans ölçümü (Quick Basic)

24:01

TOC okunması

24:02+

TOC okunması (Quick Basic)

24:03

CD/DVD oturum bilgisi

24:04

CD/DVD oturum bilgisi (Quick Basic)

24:05

TOC'un Q kanal bilgisini okumak

24:06+

TOC'un Q kanal bilgisini okumak (Quick Basic)

24:07

PMA Q sub kod bilgisi okumak

24:08

PMA Q sub kod bilgisi okumak (Quick Basic)

24:09

CD-R/W ATiP bilgisi okumak

24:10+

CD-R/W ATiP bilgisi okumak (Quick Basic)

24:11+

Diskin üretici kodu (kopya koruma)

25:01+

Sayfa header durum baytı değerlendirmesi

25:02+

Sayfa header durum baytı değerlendirmesi (Quick Basic)

25:03

Odyo sayfasını almak ve yazmak

25:04+

Odyo sayfasını almak ve yazmak (Quick Basic)

25:05

Güç kontrol sayfasını okumak

25:06

Güç kontrol sayfasını okumak (Quick Basic)

25:07

Zaman aşımı ve yazma koruma sayfası okumak

25:08

Zaman aşımı ve yazma koruma sayfası okumak (Quick Basic)

25:09

Cihazın parametreleri sayfası (Quick Basic)

25:10+

Cihazın kapasitesi sayfasını okumak

25:11+

Cihazın kapasitesi sayfasını okumak (Quick Basic)

25:12

Arıza politikası sayfasının okunması-yazılması

25:13

Arıza politikası sayfasının okunup yazılması (Quick Basic)

25:14

Yazma parametreleri sayfası okumak ve değiştirmek

25:15+

Yazma parametreleri sayfası okumak ve değiştirmek (Quick Basic)

25:16

Sayfaların sayfasını okumak (Quick Basic)

25:17

Cihazın versiyon sayfasını okumak (Qıuick Basic)

25:18

Sayfa analiz programı (Quick Basic)

26:01

Cihazdan güç durumu raporu almak

26:02

Cihazdan durum raporları almak (Quick Basic)

27:01

Cihazdan profil raporu almak

27:02

Aktif raporlar listesi almak (Quick Basic)

27:03

Aktif raporlar listesi almak (Quick Basic)

27:04

Bazı önemli raporları almak (Quick Basic)

30:01+

Cihazın okuma yazma hızını ayarlamak

30:02+

Cihazın okuma yazma hızını ayarlamak (Quick Basic)

30:03+

Cihazın okuma yazma hızını ayarlamak

30:04+

Cihazın okuma yazma hızını ayarlamak (Quick Basic)

30:05+

CD-RW disk silmek

30:06+

CD-RW Silmek (Quick Basic)

30:07+

Yazmaya hazırlık programı

30:08+

Bir trağı rezerve etmek

30:09+

Bir trağı rezerve etmek

30:10

Tamponu ölç

30:11+

Tamponu ölç (Quick Basic)

30:12+

Boş diskte yazma başlangıç adresinin hesaplanmas


(Bu programlar eserle birlikte verilen CD içerisinde mevcuttur. Tıkladığınız linkler açılmayabilir.}












PROGRAM LiSTESi (amacına göre)


  • Yapılması istenen iş
  • Bunu yapan Programın numarası
  • CD DVD-ROM CiHAZI iLE iLGiLi PROGRAMLAR

  • CD-ROM sürücü sayısı tespiti

  • CD-ROM sürücü header adresi tespiti

  • Cihazın kimlik bilgisini tespit etmek

  • Cihazın kimlik bilgisini değiştirmek

  • CD-ROM sürücü dosya ismini tespit etmek

  • Cihazın kullandığı alfabe harfini tespit etmek

  • Lazer kafanın koordinatlarını tespit etmek

  • Lazer kafayı yeniden konumlandırmak

  • Lazer kafayı park etmek

  • Lazer yazma gücü tespiti

  • Lazer yazma referans hızı tespiti

  • Cihazın tamponunu okumak

  • Cihazın durum (yetenek) bilgisi

  • Cihazda disk var mı?

  • Disk değişti mi?

  • Cihazın kapısını aç

  • Cihazın kapısını kilitle/kiliti aç

  • Cihazı resetle

  • Cihazın tamponuna yazmak

  • Cihazın kapısını kapat

  • Cihazın kapısı açık mı kapalı mı?

  • Cihazı initialize etmek

  • Output

  • Sistemi resetlemek

  • Flopy disket motoru başlatmak

  • Cihazın güç konumunu tespit/değiştirmek(Stendbay-idle-Uyku)

  • Transpozisyon zamanlamasını değiştirmek

  • ATAPi kimliğinin tespiti

  • CD-ROM haberleşme protokolunu değiştirmek

  • Cihaz teşhis (diagnostic)

  • Sistemdeki ATAPi cihazın bulunması

  • ATAPi sorgulama

  • ATAPi cihaz tipini öğrenmek (CD-ROM, Scanner vs)

  • ATAPi versiyon tespiti

  • iSO versiyon tespiti

  • ECMA versiyon tespiti

  • ANSi versiyon tespiti

  • CD-ROM cihazın marka tespiti

  • CD-ROM cihazın serino ve üretim tarihini tespit etmek

  • CD-ROM cihazın revizyon no tespiti

  • CD-ROM cihazı hazır mı?

  • CD-ROM cihazı mekanik kumandası(Güç konum değişt ve kapı aç/kapa)

  • Cihazı sıfırla

  • Zaman aşımı süresini tespit/değiştirmek

  • Cihaz CD-R, CD-RW, video, odyo, RAW, Mod2Form1 ve 2 okuyup yazabilir mi?

  • Cihaz bar kod, UPC, ISRC  okuyabilir mi?

  • Cihazın maksimum okuma hızı nedir?

  • Cihazın şimdiki okuma hızı nedir?

  • Cihazın maksimum yazma hızı nedir?

  • Cihazın şimdiki yazma hızı nedir?

  • Cihazın desteklediği yazma hızları nedir?

  • Cihazın desteklediği maksimum volum derinliği nedir?

  • Cihazın tampon büyüklüğü (boş kısmı) kaç bayt?

  • Cihazın fabrikasyon kabiliyetleri değişti mi?

  • Cihazın arıza karşısında politikası tespit ve değiştirilmesi

  • Cihazın desteklediği mod sayfalarını bulmak

  • Cihazın versiyon desteklerini bulmak

  • Cihaz komut almaya jazır mı?

  • Kilitli kapı açma isteği oldu mu

  • Cihazın işini bitirmesine kaç sn var?

  • Aktif profil raporları listesi

  • Okuma yazma hızını ayarla

  • DVD ye DBI göndermek

  • CD VE DVD DiSK iLE iLGiLi PROGRAMLAR

  • CD-DVD etiketinin (label) tespiti

  • Program 24:11 Diskin üretici kodu (kopya koruma)

  • CD-DVD serino tespiti

  • CD-DVD kayıt tipinin tespiti

  • CD-DVD ne kadarı dolu?

  • Sektör büyüklüğü

  • Sonuncu sektör numarası

  • Lead in başlangıç tespiti

  • ilk leadout sektör no

  • UPC kodunu okumak

  • Sektör okumak

  • Sektörden senkron oku

  • Sektörden header oku

  • Sektörden subheader oku

  • Sektörden Kullanıcı bilgisi oku

  • Sektörden Q kod oku

  • Sektör formatını tespit etmek

  • Sektör bilgisi

  • imaj dosya hazırlamak

  • Seviye 0 kilitlemek

  • Volum kilidini aç

  • Volum kilit seviye tespiti

  • Dosya ismini kanonikalize etmek

  • VTOC okunması

  • Volum tanımlayıcılarını okumak

  • Primer volumu okumak

  • Volum tanıtıcı önceliğinin tespiti ve değiştirilmesi

  • Abstract dosya ismini okumak

  • Copyright dosya ismini okumak

  • Bibliographic dosya ismini okumak

  • ROOT dizini okumak

  • Dizin veya dosya kaydını okumak

  • Hata Analizi

  • Trak / Oturum bilgisi

  • Trağın uzunluğunu bulmak

  • Diske yazılabilen ilk adresi bulmak

  • Paket yazma uzunluğunu bulmak

  • Blocking faktörü bulmak

  • Trağın oturum numarasını bulmak

  • DVD diskin sonraki layer adresi

  • DVD diskin sonuncu layer adresi

  • Trağın kopya iznini bulmak

  • Trağın sub kanal modunu bulmak

  • Diskin boş/dolu olduğunu tespit etmek

  • Diskin yeniden yazılabilir olduğunu tespit etmek

  • Yeniden yazılabilir diskin hız tespiti

  • Sonuncu oturum/border numarasını tespit etmek

  • TNO (TOC adresi) tespit etmek

  • ilk oturum/border numarasını tespit etmek

  • Bir oturumun bitiş adresini tespit etmek

  • Bir oturumun başlangıç adresini tespit etmek

  • Sonuncu oturumun kapalı/açıkolduğunu tespit etmek

  • Sonuncu oturum(border)un iLK trak(Rzon) numarasını tespit etmek

  • Sonuncu oturum(border)un SON trak(Rzon) numarasını tespit etmek

  • Disk tipini tespit etmek

  • Diskin kimlik numarasını tespit etmek

  • Diskin bar kodunu tespit etmek

  • Diskin uygulama kodunu tespit etmek

  • Diskin OPC kodunu tespit etmek

  • Diskin Medya katalog numarasını okumak

  • Trağın ISRC kodunu okumak

  • Trağın indeks numarasını bulmak

  • Diskin format tipini tespit etmek

  • P değişkenini tespit etmek

  • Diskin boş/dolu/maksimum alanını tespit etmek

  • Diskin geçerli okuma yazma hızlarının tespiti

  • PMA Q sub kod bilgisi

  • Diski yazmaya karşı koruma

  • Yazma modunu belirlemek

  • Buffer underrun belirlemek

  • Test yazma belirlemek

  • çoklu oturum belirlemek

  • Oturum formatı belirlemek

  • Link büyüklüğü belirlemek

  • Trak modu belirlemek

  • Sabit/değişken paket ve paket uzunluğunu belirlemek

  • Link kayıp büyüklüğünü belirlemek

  • Data blok tipi belirlemek

  • Odyo paus uzunluğunu belirlemek

  • Medya katalog no belirlemek

  • ISRC kodunu belirlemek

  • SubHeader baytları belirlemek

  • Diski silmek

  • Trağı(ları) silmek

  • Oturumu sil

  • Oturumu definalize et

  • Kopya izin baytını belirlemek

  • ilk yazılabilir sektörü tespit etmek

  • Diskin yazma parametrelerin tespiti

  • Trak rezerve etmek

  • Boş diskte yazma başlangıç hesaplaması

  • ODYO iLE iLGiLi PROGRAMLAR


  • Odyo durumunu tespit etmek

  • Odyo CD ilk ve sonuncu şarkı numarası

  • Trak başlangıç adresi

  • Odyo Q kanal bilgisi (anlık adres)

  • Odyo sub kanal bilgisi

  • Odyo paus ve durum bilgisi

  • Odyo paus/resume yapmak

  • Odyo çalmak

  • Cihazın Odyo durumunu değiştirmek

  • Trağın (odyo) kontrol bilgisi

  • Komple odyo çalmak

  • SüRüCü iLE iLGiLi PROGRAMLAR




  • MSCDEX için dosya açmak

  • MSCDEX imzasını tespit emek

  • MSCDEX kurulmuş mu?

  • MSCDEX cihazı destekliyor mu?

  • MSCDEX versiyonu tespit etmek

  • ASPI giriş noktasının tespiti


(Bu programlar eserle birlikte verilen CD içerisinde mevcuttur. Tıkladığınız linkler açılmayabilir.}




                                          Ana Sayfaya dön