Merhaba, Ziyaretçi. Lütfen giriş yapın veya üye olun.

Kullanıcı adınızı, parolanızı ve aktif kalma süresini giriniz

  Gelişmiş Arama
insanın içinde varsa, commodore.gen.tr açığa çıkarır bunu.. bir nevi retro olaylarının dolunayıyız.(Arda)
commodore.gen.trGenel KategoriProjecommodore.gen.tr Altında Yapılabilecek Proje Fikirleri
Sayfa: [1]   Aşağı git
Yazdır
Gönderen Konu: commodore.gen.tr Altında Yapılabilecek Proje Fikirleri  (Okunma Sayısı 1518 defa)
0 Üye ve 1 Ziyaretçi konuyu incelemekte.
ercanersoy
Üye
****
Mesaj Sayısı: 410


Üyelik Bilgileri WWW
« : Eylül 27, 2018, 12:30:45 ÖS »

Merhaba,

Amiga Dökümantasyon Projesi gibi commodore.gen.tr altında bizim yapabileceğimizi düşündüğüm proje fikirlerini paylaşmak istedim.

Dökümantasyon Projeleri
IBM PC Dökümantasyon Projesi: IBM PC ile ilgili belgelerin bulunduğu dizin.
FreeDOS Dökümantasyon Projesi: FreeDOS ile ilgili belgeler bulunduğu dizin.

IBM PC ve Diğer Uyumlu Bilgisayarlar İçin Yazılım Projeleri
GW-BASIC Benzeri: GW-BASIC diliyle uyumlu MS-DOS ve uyumlu sistemler altında çalışan 16-bit bir yorumlayıcı. GPLv3 lisanslı olacaktır. C ile yazılacaktır. Open Watcom kullanılacaktır.
QBASIC Benzeri: QBASIC diliyle uyumlu MS-DOS ve uyumlu sistemler altında çalışan 16-bit bir yorumlayıcı. GPLv3 lisanslı olacaktır. Ayrıca, bir IDE de içerecektir. C ve C++ ile yazılacaktır. Open Watcom kullanılacaktır. FDOSTUI kütüphanesi kullanılacaktır.
UEFI BIOS Bootstrap: 2020'de UEFI BIOS uyumluluğu kalkacağından UEFI'den yüklenebilen BIOS yazılımı. GPLv3 lisanslı olacaktır.
DOS Tabanlı Windows Benzeri: FreeDOS çekirdeğini kullanan Win16 ve Win32 yazılımlarını çalıştırabilen işletim sistemi. Windows 1.x - Windows ME uyumlu olacaktır. x86 assembly ve C dilleri kullanılacaktır.

Commodore 64 ve Uyumlu Bilgisayarlar İçin
Commodore BASIC Benzeri: Commodore BASIC'in bir benzeridir. %100 uyumludur. LGPLv3 lisanslı olacaktır.

Birçok Platform İçin
WinBox: Win16 ve Win32 uygulamalarını çalıştıran bir yazılım. DOSBox benzeri olacaktır. GPLv3 lisanslı olacaktır. C ve SDL ile yazılacaktır. Ayrıca, MS-DOS uyumlu programlarını da çalıştırabilecektir.
OS/3: OS/2'den sonra daha gelişmiş bir işletim sistemi. GPLv3 lisanslı olacaktır. Çekirdeği C ile yazılacaktır. PC ve daha birçok platformda çalışabilecektir. MS-DOS, Win16, Win32, OS/2 için yazılmış programlarla uyumlu olacaktır.
« Son Düzenleme: Eylül 27, 2018, 12:56:06 ÖS Gönderen: ercanersoy » Logged

appiah4
Uzman
*****
Mesaj Sayısı: 1.908



Üyelik Bilgileri
« Yanıtla #1 : Eylül 27, 2018, 12:41:14 ÖS »

EComstation varken OS/3 gibi bir projeye gerek yok, zaten geriye dönük OS/2 uygulama uyumluluğu gibi bir ihtiyaç  yok OS/2'nin program kütüphanesinin 90%'ı Win16 ve DOS uygulamaları.  DOSBOX altında Win16'nın ne kadar sorunsuz çalıştığı düşünülürse bir Win16 emülatörüne ihtiyaç yok, ki zaten OS/2 (ve eComStation) bir 100% başarılı Win16 emülatörü.  Çeşitli virtualization çözümlerine Win32'nin ne kadar kolay kurulabildiği düşünülünce bu projelere gerek olduğunu düşünmüyorum. 

Zaten Win32'yi emüle etmekten kastımız tam olarak nedir onu da bir konuşmak lazım, sürücü modelini kullanacak bir Open Source uygulama istiyorsanız zaten Wine var, yok direk donanımı da emüle edelim derseniz halen copyright'ları olan birçok şeyi reverse engineer etmeniz lazım vs. (ama illa yapalım derseniz de bunu zaten PCem yapıyor..) 

Bu projeler anlamlı ve makul değil bence.
« Son Düzenleme: Eylül 27, 2018, 12:48:52 ÖS Gönderen: appiah4 » Logged

A500:Rev6|+512K|ACA500+|C1084S
i386:Am386SX25|4M|GD5402|ES688|MuntPi3
i486:U5S33|8M|GD5428|YMF719|DB-S2
i586:P133|32M|T64+/MX2|V1|CT3980/32M
i686:K6-2/400|128M|V2/SLI|CT4520/32M
S370:P3-1200|384M|GF4-4200|MX300
S754:A3700+|2G|X1950PRO|SB0350
ercanersoy
Üye
****
Mesaj Sayısı: 410


Üyelik Bilgileri WWW
« Yanıtla #2 : Eylül 27, 2018, 12:55:34 ÖS »

WinBox için: Wine tam olarak işletim sisteminden yalıtılmış değil. WinBox ile yapılabilir.

Bu başlık altında belirttiğim yazılım projelerinin amacı mevcut sistemlerden daha iyilerini üretmektir. Ayrıca, sahipli yazılım kullanmak yerine özgür yazılım kullanmak daha iyi. Özgür yazılım kullanılınca, o yazılımın lisansıyla uyumlu başka yazılımların parçaları da alınabilir.

Üstelik bütün projeler için gerek yok demişsiniz. OS/3, UEFI BIOS bootstrap ve dökümantasyon projelerini ayrı tutmak gerekir. Örneğin, OS/3'ün kendi kod tabanı olacak. Bu işletim sisteminin MS-DOS, Wİn16, Win32 ve OS/2 emulasyonları sonradan yapılır.
« Son Düzenleme: Eylül 27, 2018, 21:18:48 ÖS Gönderen: ercanersoy » Logged

Levent (Lvnt)
Uzman
*****
Mesaj Sayısı: 1.640



Üyelik Bilgileri
« Yanıtla #3 : Eylül 27, 2018, 14:08:26 ÖS »

Üstat, GPL uzun vadede kodlarının ticari olarak kullanılamaz hale gelmesiyle sonuçlanabilir. 2000'lerde gpl olan nasm gibi bazı önemli projeler BSD ya da başka lisanslara geçtiler. Bazıları hala geçmeye çalışıyor ama farklı farklı yazarlar katkıda bulunduğu için artık çok geç olmuş olabiliyor.

Ben şahsen ufak tefek şeyler haricinde GPL lisanslı programlara kod desteği vermek istemem. Çünkü destek verdiğim bu programı kendi ticari işimde kullanmaya kalksam açmak istemediğim kendime özel kodlar ya da ufak tefek değişiklikler olacaktır mutlaka. GPL ve türevi lisanslarına ne kadar özgür yazılım lisansı dense de bu konuda ayak bağı oldukları söyleniyor. Hatta GPL lisanslı ve yine opensource olan CDDL lisanslı kodların lisans açısından birlikte kullanılması sorunlu diye biliyorum. Siz de bir inceleyin isterseniz.

Ek: Bir ara wine gibi ama sadece win16 layer olarak kullanılacak açık kaynak kodlu birşeylere bakmıştım ama bulamamıştım. Amaç emülasyon değil, win16 programlarının başka platformlar için compile edilip çalıştırılabilmesi. Wine'de 32-bit olarak bu özellik var: winelib.a ile bağlayınca oluyor. Ama fazla büyük işte.

Ek2: aslında tamamen açık kaynak kodlu reactos var. Ama eğlencenin yarısı gitmiş, win16 yok, dos yok, 16-bit/32-bit karışık kodlar yok. Dos/windows karışık kodlar yok (windows 95/98 16-bit dos sürücülerini kullanabiliyor). Ben bunları kurcalamak istiyordum

Ek3: eskiden allegro/sdl benzeri kütüphanelerinin fanatiği idim. Ama son zamanlarda her farklı platforma geçtiğimde customizationları da o platforma taşımam gerekmesi sebebiyle iyice allerji yaptı. External library yerine artık proje içinde platform bağımlı kodları kullanıyorum. Win32'yse win32 alt sistemi sourceleri, dos16 ise dos16 alt sistemi sourceleri...
« Son Düzenleme: Eylül 27, 2018, 14:22:42 ÖS Gönderen: Levent (Lvnt) » Logged

Use the brute force, Luke
ercanersoy
Üye
****
Mesaj Sayısı: 410


Üyelik Bilgileri WWW
« Yanıtla #4 : Eylül 27, 2018, 14:44:56 ÖS »

Yalnızca, fikir olarak belirttim. BSD ya da MIT lisanslı da olabilir.

Wine'de tam olarak Win16 desteği yok.

ReactOS'ta günümüzde NTVDM var. Bununla bazı MS-DOS için yazılmış programlar çalışabiliyor. Gelecekte Win16 desteği eklenecekmiş. Ancak, 16 bit makinelerde çalışması, hafif olması, hızlı olması açısından DOS tabanlı Windows benzeri bir işletim sistemi de yazılabilir.

Allegro ve SDL kullanmadım. Ancak, biraz araştırmış olduğum için birkaç birşey diyebilirim. Allegro günümüzde MS-DOS ve diğer uyumlu sistemleri desteklemediği için başka güncel yazılım seçeneği yok diye biliyorum. Ancak, bir kütüphane yazılabilir. (Bu da başka bir fikir olsun.)  Ancak, Windows, Linux, MacOS gibi platformlar için SDL güzel.
Logged

Levent (Lvnt)
Uzman
*****
Mesaj Sayısı: 1.640



Üyelik Bilgileri
« Yanıtla #5 : Eylül 27, 2018, 18:31:23 ÖS »

Vakit ayırabileceğimi sanmıyorum ama win16 layer üzerinde çalışmak ilginç olabilirdi. Aynı program hem win16, hem win 3.1 altında 32-bit, hem de örneğin linux altında 32-bit exe üretmeyi sağlayacak mümkün olduğunca küçük ve okunaklı bir library şeklinde. Diğer taraftan hazır win16 exe'lerini çalıştırmaya çalışmak hiç işime gelmiyor. Peki ne işe yarar? Akıllıca mı? Zaten şöyle birşey var... bu işten kazancımız ne? Pek bir fikrim yok

Bu arada sdl library'nin yazarı ryan c. gordon (icculus) wine'nin os/2 versiyonu üzerinde çalışıyor. Adı 2ine.
https://virtuallyfun.com/wordpress/2018/02/23/2ine-the-os-2-emulator/
https://hg.icculus.org/icculus/2ine/
Logged

Use the brute force, Luke
ercanersoy
Üye
****
Mesaj Sayısı: 410


Üyelik Bilgileri WWW
« Yanıtla #6 : Eylül 27, 2018, 21:18:12 ÖS »

Güzel fikir. Ancak, bundan bahsetmemiştim.

WinBox için: DOSBox gibi hem emulasyonlu hem de bağlanan dizinlerdeki içeriği gören bir yazılım olabilir. Win16 ve Win32 programlarını çalıştıabilir. Wine, yalnızca POSIX uyumlu sistemler için. WinBox Windows gibi platformlarda da çalışabilir.

DOS Tabanlı Windows benzeri için: ReactOS 32 bitliktir ve en az Pentium Pro gibi (i686) işlemcilerde çalışabilir. DOS tabanlı Windows benzeri bir işletim sistemi 8086 ve üstünde çalışabilir. Windows 3.0 gibi bir sistem olabilir. Hem gerçek mod hem de korumalı modda çalışabilir.

OS/3 için: Yeni bir işletim sistemi olacaktır. Çekirdeği sıfırdan yazılacaktır. Ayrıca, sonradan uyumluluk katmanları eklenebilir.

Ben bu fikirlerin hepsini yapalım diye söylemiyorum. Başka bir proje de olabilir.

Bizim ortaklaşa yapabileceğimiz retro bilgisayarlara uygun ve kullanılabilir bir projenin olması iyi olur diye düşünmüştüm.
Logged

Levent (Lvnt)
Uzman
*****
Mesaj Sayısı: 1.640



Üyelik Bilgileri
« Yanıtla #7 : Eylül 27, 2018, 22:34:22 ÖS »

Ben de fikir olsun diye yazmıştım. Yakın zamanda elimde olsun istediğim birşeydi. O açıdan üzerinde çalışmaya heveslendiğim bir fikir.

Yine fikir döndürmek amaçlı yazıyorum. Dos tabanlı bir işletim sistemi aslında bir interrupt kapısı yoluyla erişilen bir çok hazır library fonksiyonundan ibarettir şeklinde düşünüyorum. Merkezi her şeyi kontrolünde tutan bir kernel yok, ya da yok gibi birşey. Aynı anda tek program çalışıyor ama tsr vb (başka var mı?) çeşitli mekanizmalarla sırayla programlar (driverler) çalışıyor.

Hal böyleyken dos benzeri ama tablet işletim sistemi gibi birkaç gui'li programı aynı anda (cooperative) çalıştıran bir sistem ortaya çıkartılabilir diye düşünüyorum. İlk denemeler dos altında yapılır. Sonra gereken dos fonksiyonları biryerlerden alınır ya da baştan yazılır. Sonuçta dos'tan daha az karmaşık, bazı yönlerden daha gelişmiş (native 32-bit?) tablet benzeri bir işletim sistemi ortaya çıkmış olur.

Başlangıç olarak bir gui server yazılır mesela. Os/2'nin presentation manageri gibi. Çalışma sırası kendine gelen program istediği gui elemanlarının bir hafıza bloğunda tuttuğu tanımlamalarını gui server'e ulaştırır (pointer). Gui server o anda ekranda artık o programı temsil etmeye başlar. Bu arada driver vb servis programları da çalışır tabii, ama bir gui talebi olmadan.

Böyle bir çalışma şekli bir süredir aklımdaydı. Paylaşmış oldum.

Logged

Use the brute force, Luke
ercanersoy
Üye
****
Mesaj Sayısı: 410


Üyelik Bilgileri WWW
« Yanıtla #8 : Eylül 27, 2018, 23:48:09 ÖS »

Güzel düşünce.

Bir de DexOS var. Ancak, aynı anda tek bir uygulama çalışıyor. İnternet Sitesi: http://dex-os.github.io/

Aslında sıfırdan yazılması daha iyi. Çünkü diğer yönetm için DOS API'lerini port etmek gerekli ve bu da zor.

Aklıma gelmişken OS/3 için bazı düşüncelerimi de aşağıda belirttim.

OS/3 İçin Bazı Düşüncelerim
- Başlangıçta x86 için 32 bit (80386) çekirdek
- Çekirdek C ile yazılabilir
- BIOS'tan bağımsız tasarım
- ELF biçimi çalıştırılabilir dosyalar (çekirdek dahil)
- Mikroçekirdek ya da ekzoçekirdek yapısı
- İlk baştan komut satırı arabirimi
- GNU C Compiler, GNU C++ Compiler ve GNU Fortran Compiler port edilebilir.
« Son Düzenleme: Eylül 28, 2018, 18:29:46 ÖS Gönderen: ercanersoy » Logged

Levent (Lvnt)
Uzman
*****
Mesaj Sayısı: 1.640



Üyelik Bilgileri
« Yanıtla #9 : Eylül 28, 2018, 11:41:17 ÖÖ »

Bunlar hep büyük projeler üstat. Biryerlerden başlamak lazım tabi ama başlanacak şey o devasa şeyin küçük bir parçası olacak mutlaka. Başlangıç olarak o parçaları, parçaların tek başlarına etkin şekilde nasıl test edilecekleri ve aralarındaki ilişkileri dökümante etmek gerek diye düşünüyorum. Böylece bir yol haritası da ortaya konmuş olur. Sonra da bir parça ele alınıp kod yazılmaya başlanır. Bu şekilde olası katılımcılar önlerini görmüş, neye katıldıkları, yapmak istediklerine uygun olup olmadığı hakkında fikir edinmiş olurlar.

Ben bahsettiklerimde ayrıntılı yazmasam da işleri küçük tutmaya ve iş sırasını belirgin tutmaya çalıştım. Onlar bile çok uzun iş. Şu ana kadar açık yazmadım ama en bulaşmak istemediğim şey uyumluluk. Birilerinin (o zamanki sistemde) hasbelkader ucu ucuna doğru düzgün çalıştırabildiği programlar kendi sistemimde de çalışsın vb hiç işim olmaz. Adamlar kendi programları sorunsuz çalışıyor gözüksün diye ne çılgınlıklar yapmışlar. Raymond Chen'in The Old New Thing'ine bakın. Çok zor iş. Microsoft bile bunlarla başa çıkmaya çalışırken kendi sistemleri stabil değil damgası yemiş.

Velhasıl aklınızdaki fikirlere saygım var. Ama geliştirici çekmek ya da kendi başınıza bir işe kalkışabilmek için yapmanız gereken gerçekten çok iş var diye düşünüyorum.
Logged

Use the brute force, Luke
ercanersoy
Üye
****
Mesaj Sayısı: 410


Üyelik Bilgileri WWW
« Yanıtla #10 : Eylül 28, 2018, 18:29:27 ÖS »

Haklısınız. Bu başlık altındaki belirtilen projelerin çoğu büyük emek istiyor. Ancak, GW-BASIC benzeri gibi projelerde birçok şey hazır olacak.

Aslında yazılım geliştirme sürecinde ReactOS Projesi gibi herşeyin yerine oturmuş olması gerekiyor. Bu projede birçok şey belgelendirilmiştir. Kodlarına bakınca birçok açıklama satırı yer almakta. Ayrıca, kodun nasıl yazılacağı, nasıl katkı yapılacağı, referanslar gibi birçok şey de var.

Bir yazılım projesinden önce bir platform seçilir ve onun belgelendirmesi yapılabilir. Örnek olarak PC platformu seçilmişse PC mîmarisinin, x86 mîmarisinin ve G/Ç aygıtlarının belgelendirilmesi yapılabilir. İsmi de "PC Dökümantasyon Projesi" olabilir.

Eğer commodore.gen.tr altında bir projeye kalkışılacaksa, olanaklarımın yettiği kadar bu işle ilgilenebilirim. Aklımdaki fikirlerimin çoğunun kendim yapmaya olanağım olmaz diye düşünüyorum.

Benim amacım, ortaya birşeylerin çıkması ve aklımdaki projelerin gerçek olması. Benim GitHub'ta ve GitLab'ta DOS altında çalışan 3 proje, 1 Python projesi ve bir kamu malı (public domain) kod arşivim var. Hiçibrinden de para kazanmıyorum. Bu başlık altında bahsettiğim projeler de aynı amaçlıdır.
Logged

Sayfa: [1]   Yukarı git
Yazdır
Gitmek istediğiniz yer: