Amiga 1200 1MB Custom Rom Hazırlama Üzerine Notlar – Bölüm 1
|Cgtr forumda 1mb 3.9 rom hazırlama üzerine beyin fırtınası yapmak için bir başlık açmıştım. O başlıkta edindiğim tecrübeleri derli toplu hale getirip kayıt altına almak için bloguma not etmeye karar verdim.
Forumdaki başlıkta bilgilerini paylaşan, yönlendiren, motivasyonumu arttıran başta Alpyre, Def Leppard, emarti ve Gökçe Bozkurt olmak üzere herkese teşekkür ederim.
Başlamadan önce neden yeni bir rom hazırlamaya ihtiyaç duyduğumdan bahsetmek istiyorum. 3.1 rom içindeki modüller eski kaldı ve BoingBag1, BoingBag2 yamaları geldi. Bazı modüller ise hala bazı geliştiriciler tarafından güncellenmeye devam ediyor. AmigaOs 3.9’daki AmigaOS ROM Update yüzünden açılışta bir defa resetleniyordu. Bu benim hoşuma giden bir durum değildi. Ayrıca yeni modülleride startup-sequence’den yükletiyordum. Aşağıdaki satırları içeren bir startup-sequence dosyam vardı.
FailAt 21
c:LoadResident >NIL: DEVS:card.resource DEVS:trackdisk.device L:KingCON-Handler L:FastFileSystem L:Ram-Handler LIBS:exec.library_45.24 LIBS:intuition.library_40.86_b5-23
FailAt 20
C:LoadModule DEVS:battmem.resource DEVS:FileSystem.resource DEVS:misc.resource DEVS:potgo.resource DEVS:console.device L:Shell-Seg DEVS:scsi.device LIBS:dos.library LIBS:layers.library LIBS:icon.library LIBS:workbench.library LIBS:graphics.library_42.8b11 NOREBOOT REVERSE
C:SetPatch SKIPROMMODULES fs,icon,ram,scsi.device,console.device,shell,workbench,dos,layers,exec,graphics,intuition QUIET
Bunun yerine güncel bir rom hazırlama fikri daha mantıklıydı. En azından maprom olarak kullanabilirdim. Bu fikir Cgtr forumunda TL866 programlayıcı için 27C400/27C800 adaptörü projesi ile ete kemiğe bürünmüş oldu.
3.9 rom hazırlamanın ilk adımı 3.1 rom ve AmigaOS ROM Update’i birleştirmek. Bunun için 3.1 romda bulunan modüller (device ve library) yerine AmigaOS ROM Update’de bulunan daha güncel versiyonlarını koymak. (En güncel olması açısından BoingBag2 ile gelen AmigaOS ROM Update kullanılmalı.)
İkinci adım bazı Blizkick yamalarını kullanmak. Blizkick ile gelen her şeyin yama olmadığını unutmamak gerekiyor. Blizkick readme dosyalarını dikkatlice okumakta fayda var. Bu yamaları kullanırken dikkat edilmesi gereken nokta ise ilgili yamayı, yamalayacağı modülün hemen altına yerleştirmeniz gerekiyor.
Kullandığım, her romda olması gereken yamalar şunlar;
NewAlert
AlertFix
1MB_ROM
NoClick
PowerWindows_BKPatch
DosResetCard
ColdResetCard
Aşağıda göreceğiniz gibi Amiga 1200 romu iki parçadan oluşuyor. Bunlar normal.rom ve extended.rom.
; Generated by Remus 1.51
;Options
SaveROM “Ram Disk:A1200normal2017.rom”
ModDir Modules/40.68(A1200)/
ROMBase $F80000
ROMSize 512
ImageType 0
Checksum
SpeedROM
;Build list
ADD Modules/44.57_ROMUpdate(3.9bb2)/exec_45.20(A1200-A500)2017
ADD Modules/BlizKick/NewAlert
ADD Modules/BlizKick/AlertFix
ADD Others/Blizkick/1MB_ROM
ADD Modules/40.68(A1200)/audio.device_37.10
ADD Modules/40.68(A1200)/battclock.resource_39.3
ADD Modules/40.68(A1200)/battmem.resource_39.2
ADD Modules/40.68(A1200)/card.resource_40.4
ADD Modules/40.68(A1200)/carddisk.resource_40.1
ADD Modules/40.68(A1200)/cia.resource_39.1
ADD Modules/40.68(A1200)/con-handler_40.2
ADD Modules/40.68(A1200)/disk.resource_37.2
ADD Modules/40.68(A1200)/dos.library_40.3
ADD Modules/40.68(A1200)/expansion_40.2(A1200)
ADD Modules/40.68(A1200)/gadtools.library_40.4
ADD Modules/40.68(A1200)/graphics.lib_40.24(AGA)
ADD Modules/40.68(A1200)/input_40.1
ADD Modules/40.68(A1200)/keymap.library_40.4
ADD Modules/40.68(A1200)/layers.library_40.1
ADD Modules/40.68(A1200)/mathffp.library_40.1
ADD Modules/40.68(A1200)/mathieeesingbas.lib_40.4(020)
ADD Modules/40.68(A1200)/misc.resource_37.1
ADD Modules/40.68(A1200)/potgo.resource_37.4
ADD Modules/40.68(A1200)/ram-handler_39.4
ADD Modules/40.68(A1200)/ramdrive_39.35
ADD Modules/40.68(A1200)/ramlib_40.2
ADD Modules/40.68(A1200)/timer.device_39.4
ADD Modules/40.68(A1200)/utility.library_40.1(020)
ADD Modules/40.68(A1200)/wbtask_39.1
ADD Modules/44.57_ROMUpdate(3.9bb2)/filesystem.resource_45.10
ADD Modules/44.57_ROMUpdate(3.9bb2)/console.device_44.8
ADD Modules/44.57_ROMUpdate(3.9bb2)/bootmenu_44.8(68020)
ADD Modules/40.68(A1200)/trackdisk.device_40.1
ADD Modules/BlizKick/NoClick
ADD Modules/Others/shell_45.39
ADD Modules/Others/FastFileSystem_45.16
ADD “Modules/Peter Keunecke/icon.library.46.4.454”
ADD Modules/40.68(A1200)/intuition.library_40.85
ADD Others/Blizkick/PowerWindows_BKPatch
ADD Modules/LargeHD/128GB_Support/SCSI_v43_45_ChrisToni/A1200IDE.scsi.device.43.45
ADD Modules/romboot/romboot44_3
Alıntı; Generated by Remus 1.51
;Options
SaveROM “Ram Disk:A1200extended2017.rom”
ModDir Modules/Others/
ROMBase $E00000
ROMSize 512
ImageType 0
Checksum
SpeedROM
;Build list
ADD Modules/Others/romheader_45.21
ADD Modules/Others/workbench.library_45.136
ADD Modules/Others/compactflash.device
ADD Modules/Others/pfs3_aio-handler
ADD Modules/Others/SmartFilesystem
ADD Modules/ResetCard/DosResetCard
ADD Modules/ResetCard/ColdResetCard
Normal.rom mutlaka exec ile başlamalı ve hemen altına sırasıyla NewAlert ve sonra AlertFix yamaları konmalıdır.
1MB rom hazırlanıyorsa ki bu kadar yama ve güncelleme 512KB ile mümkün değil, exec, NewAlert ve AlertFix’den sonra 1MB_ROM yaması eklenmelidir.
Floppy sesini kapatmak için trackdisk.device’den sonra NoClick yamasını koyuyoruz.
intuition.library’ye PowerWindows_BKPatch mutlaka olmalı.
DosResetCard ve ColdResetCard ise PCMCIA portundaki reset sorununu çözmek için kullanılıyor.
Extended.rom ise romheader ile başlamalı ve boyutundan dolayı workbench.library buraya konmalıdır. smartfilesystem, pfs vb. modülleride buraya koyabilirsiniz.
Ayrıca 3. parti yüksek kapasiteli disk bölümlerini destekleyen scsi.device kullanmak da önemli.
Aklınıza gelen her şeyi roma ekleme şansımız maalesef yok. Önce araştırıp rommable olduğundan emin olmak gerekiyor. Örneğin fat95 romdan çalışmaz.