Skocz do zawartości
Forum Programowanie
Dexarz

[Pascal] Hmmm Free pascal

Polecane posty

Ojć coś ta część forum się nie rozkręca ...

Pytanie jest bardzo proste ...Pisząc program w free pascalu ,to czy będzie nadawał się na tryb rzeczywisty (który jest 16 bitowy ??) ..Czy może developerzy FPC dokonali 32 bitowe pascalowskie coś dla programistów ??




Piszę OS'a w pascalu z fragmentami asma (boot loader w asmie całkowicie .,kernel będzie pisany w pascalu z wstawkami asmowymi) Napisałem będzie ,bo mam dylemat czy mam wchodzić już w tryb chroniony tylko po to by obsłużyć pascala ,czy może zostawić tryb rzeczywisty i zgadywać czy kod napisany w fpc bedzie 16 lub 32 bitowy ...A co do OS i asma ..Widziałem OS'y pisane w Pascalu (DelphineOS) ,wiec wiem że jest to możliwe ...Asma także znam ,albo inaczej ,uczę się go jeszcze ,ale znam już podstawy ,które umożliwiają na napisanie takiego czegoś jak System Operacyjny ...Ogólnie plan działanie juz jest ,tylko właśnie ten dylemat ...Aha proszę mnie nie "zmuszać" do wchodzenia w tryb chroniony ,tylko dlatego bo jest lepszy ..Sam w niego wjadę jak będzie mi się chciało ,lub jak będę musiał przez pascala ...najpierw chce jeszcze nie bawić sie z GDT i innymi ,bo to mi tylko utrudnia prace ...Wolą Real Mode ,tak żeby pobawić się jeszcze normalnymi przerwaniami ...


Ale poco ja to piszę ,skoro DOS jest 16 bitowy i programy w fpc ,właśnie pod to wchodzą ...No ale nieważne dylemat to dylemat ,trzeba go rozwiązać w miarę dobry sposób ...


Czy pisze w niezrozumiały sposób ???

Proszę nie zadawać dziwnych ,wręcz głupich pytań ,które zniechęciły by mnie do pisania OS ...


Pozdrawiam miłych moderatorów (tych milczących też)
Pozdrawiam Tostera ,Ostatnio w TV jest o tym dużo (Patrz reklama banku ING)

I pozdrawiam również miłych i niemiłych userów ,którzy chcieli przeczytać do końca ten post ...

Dexarz


+5

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Szukałem w googlach i tutaj przerażenie ...FPC jest w pełni 32 bitowym kompilatorem języka Pascal ...Fuj ....W takim razie spróbuje napisać kernel w Turbo Pascalu ,który jest 16 bitowy ...


Fuj ,Te linkery są zbyt głupie ....Kurcze gdzie w FPC można ustawić do jakiego formatu ma byc program ??No bo domyslnie wali wszystko pod *.exe ,a ja potrzebuje czysty kod binarny ...



A tak po za tym to coś to nie działa ...Zna ktos Kompilator 16 bitowy Pascal ,który zwraca czysty binarny kod ??Tzn żeby miał od razu rozszerzenie bin ???

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Dzieki smile.gif ...O Blind ,zmieniłeś avatar i teraz trudno rozpoznać ,że to ty ,czesio był spox ...

co do OS'a to jest pomysl ...Bootloader jest gotowy ,myślałem wiec ,aby napisać preloader (zostanie załadowany przez bootloader) ,który wchodzi w pmode ,a potem skacze do kodu w pascalu ,ale mam turbo pascal ,który jest 16 bitowy .


Blind ,skoro są do tego programy ,to znasz pewnie jak sie nazywa jeden z nich ...Pobrałem jakis PEinfo ,no i niby pokazuje ten nagłowek exe'ca ,przy czym coś to nie kasuje tego automatycznie ,i trzeba byłoby ręcznie ...Nie ma jakiś automatów ??? ...

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Nie wiem jak sie nazywa bo nigdy nie korzystalem wiem tylko ze cos takiego jest. A jak dobrze poszukasz to mozesz jeszcze znalesc bootloadera ktory wczytuje pliki exe/com.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
O dzięki ...

Blind ,tak słyszałem o tym ,ale to już inna sprawa ...

Pytanie ,czy jeśli skorzystam jednak z FPC (panuje zrobic w przyszłosci przejście z tp na fpc) ,to czy mogę korzystać z takich rzeczy jak klasy ,obiekty itd ??Ogólnie ,czy mogę korzystać z obiektowości ???No bo mam napisany interpreter mojego języka skryptowego ,pisany w delphi ,ale można spokonie uzywać także w dosie (tym w windowsie)...no i nie wiem ..Delphi 32 bitowy ,wiec myślę że bedę musiał zamienić kod interpretera w 16 bitowy i skasować obiektowość ...






PS ...Jednym z powodów jakim chce zostać w trybie rzeczywistym to to że raczej na początku nie będę bawił się w ładowanie programów do pamieci ,więc i tak czy siak jestem bezpieczny ...Programy ,maja być właśnie w ASE2.0 (ten jezyk) ,więc nie martwie sie o bezpieczeństwo ,bo dostosuje język do systemu ...Oczywiście kiedyś zrobię obsługę tych oddzielnych programów ,ale bedzie to dopiero wtedy jak obcykam budowę HDD (chodzi o sektory itd) ,wtedy napisze bootloader na HDD i napiszę obsługę pamięci ...Póki co wystarczy mi 1.44 MB bo kody do skryptów w moim jezyku i tak zajmuja mało (zalezy od wielkosci kodu) ....




PS2 Nasunęło mi się pytanie ...Da radę zrobić w rmode obsługę sieci ???Ta żeby mozna wchodzić na neta ??

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Kozystasz z czego chcesz byle by progrm nie odwolywal sie do funkcji windowsa.

PS O bezpieczenstwo faktycznie nie musisz sie martwic bo raczej bedziesz jedyna osoba ktoa bedzie tego uzywac tongue.gif
PS2 Uwierz mi nie chcesz robic obslugi sieci.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Aha ..ok ....


Te programy w pascalu są jakieś dziwne ...napisałem kod ,który zawiera jedynie begin end. i wiecie co ??Program skompilował mi kod ,który ma wielkość 1,5 KB !! Na 2 instrukcje ??Co za debilizm ,to już w asmie jest lepiej ...A do tego dochodzi jeszcze to ,że otworzyłem program w CFF Explorerze i program nawet nie wykrył formatu pliku ,tylko jakieś głupoty ,a jak próbowałem zdeassemblować ,to program wywalił z 1000 linijek i ciekawe poco ,skoro begin i end to elementy pascala ,które nie są jako tako kompilowane dosłownie ,tylko służą najwyżej do etykietowania i zrobienia porządku w kodzie pascalowym ... !!I teraz nagłówka nie da się skasować ...Co za dziwactwo ...

W FPC mam to samo ,czyżby wina Pascala ???No i przecież nie będę przepisywał kod z delphi na c ,bo to strata czasu ,dość ze nie znam się zbytnio w c ,to jeszcze kod interpretera ,nie jest krótki (z 2000 linijek będzię) ....Co tu wymyślać ....Albo ja coś zchrzaniłem ,albo komp robi sobie jajca ...

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Cholera ze tez tacy debile na calym swiecie pisza takie glupie kompilatory ktore tyle bzdur robia. Kto to widzial aby taki prosty program ktory ma tylko Begin i end wczytywal do pamieci mapowania funkcji, alokowal stos, zwracal kod wyjscia, inicjowal rzeczy potrzebne do uruchomienia ewentualnego kodu ktorego przeciez nie ma pomiedzy begin i end. Ze juz o strukturze exe ktora musi przestrzegac nie wspomne... I to cale 1500 bajtow na to idzie, masakra...

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
No właśnie ,to jest głupie ,i jak tu mieć czysty kod ,bez "bajerów" ,jak taki kompilator nawali bzdur ...powinno być w opcjach możliwość zapisania tylko kodu w postaci binarnej ,a nie jakiś dodatki ...T o już C z tego co wiem ,ma kompilator ,który posiada funkcję kompilacji do pliku binarnego ...



PS. Nie wiem dlaczego ,ale mam podejrzenie ,że twój post Toster ,ma drugie znaczenie ,ukryte ...hmmm

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Kurczę, chyba pokuszę się o założenie podstrony Dexarza na Wikiquote happy.gif

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Tzn ???Powód ??


Xevil ,nie nie ja przynajmniej nie robię sobie jaj ...


A tak poza tym ,to chyba już offtop sie robi ,ja wiem że TP jest 16 bitowy ,ale i tak nie nadaje się a OS ,A FPC tylko w pmode ...Zdecydowałem się więc na jedno ..Cały OS pisany w asmie ...I tak w pascalu ,byłyby wstawki asmowe więc .....


Temat Do zamkniecia ,no chyba że chcecie podyskutować o nonsensopedii ,tylko nie mieszajcie mnie w to ...

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Co za ciota ze mnie ...Wrrr ,Blind ,wiesz że program automat do obcinania nagłówków exe jest w windowsie ??Nazywa się exe2bin i robi właśnie to o co mi chodziło ...Chodzi pod Dosem ,więc prawdopodobnie działa takze w wersji 16 bitowej ...Póki co mam już napisane w asmie OS z prostym shell'em ,więc już w tp nie będę się bawić ...może kiedyś w przyszłości ....

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Bądź aktywny! Zaloguj się lub utwórz konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto

Zarejestruj nowe konto, to proste!

Zarejestruj nowe konto

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się

×