Vlákno názorů ke zprávičce PC FAND byl uvolněn pod licencí MIT od starous - Čistě náhodou jsem narazil na tento článek a...

  • Aktualita je stará, nové názory již nelze přidávat.
  • 5. 7. 2018 11:28

    starous (neregistrovaný)

    Čistě náhodou jsem narazil na tento článek a mám z toho velkou radost. Je zajímavé prozkoumat program, jak to v něm vlastně funguje.

    Bohužel se mi nedaří program zkompilovat. Borland Pascal 7 mám (zřejmě 7.01), měl by mít opravenou i chybu Runtime 200. Snažil jsem se dodržet i adresářovou strukturu, tedy Pascal je v adresáři BP7 a v něm je adresář FAND, do kterého jsem nakopíroval zdrojové soubory z adresáře PAS. Soubory z adresáře BP7 jsem nakopíroval do adresáře BIN. Při prvním spuštění po nakopírování souborů BP.* mi to ovšem píše chybu "Error reading symbol information".

    Kompilace proběhne bez problémů (musel jsem nastavit ještě adresáře). Při spuštění ale program padá (při krokování to spadne při načítání tiskáren z RES souboru). Zakomentováním to padá opět někde jinde.
    Soubory mi to vytváří FAND.EXE (velikost 140016 bajtů) a FAND.OVR (velikost 625237 bajtů), což jsou jiné velikosti než volně dostupný FAND42x.

    Nenešla by se dobrá duše, která by popsala, jak se musí Borland Pascal nastavit, aby Fand fungoval?

  • 7. 7. 2018 15:14

    Fufino (neregistrovaný)

    Taky bych uvítal popis, jak Fand korektně zbuildit . Kompiloval jsem pod BP 7.0 tak: "c:\bp7\bin\bpc.exe -b -$O+ -$P+ fand.pas -uC:\bp7\units"
    Někde dělám chybu. Zkompiluje se to, ale po spuštění zamrzne.

  • 10. 7. 2018 9:05

    Josef Markvart (neregistrovaný)

    S portováním FANDu se dostal nejdále pan Kristiňák, projekt WFAND, trvalo mu to s přestávkami několik let. Bylo to dotaženo dost daleko ale bohužel pán zemřel a neměl u toho spolupracovníky, takže ta práce přišla vniveč. Ostatní pokusy s nějakým převodem FANDu (do C, Javy, .net) většinou skončily dříve než pořádně začaly, převážně po nahlédnutí do zdrojáků.

    Překlad FANDu je úzce vázán na prostředí BPascalu 7. Ovšem z důvodů úprav práce s pamětí ve FANDu byly upraveny některé knihovny BP. Je tam úprava práce s HEAPem (shora a zezdola stack a uprostřed heap) a realizace longjump podle vzoru C, který nahradil tehdy v BP neexistující try...catch. Takže zveřejněné zdrojáky zřejmě půjdou přeložit ale nebude to fungovat.
    K odstranění závislosti na verzi BP je nutno pochopit logiku nejnižších vrstev FANDu,(BASE,ME­MORY,DISK,...), nahradit tam ASM, přejít od "FAND" práce s paměti k dnešnímu jednotnému heapu. Opravdovým oříškem je nahradit longjump, protože to vyžaduje procházení a aspoň částečné pochopení většiny programu.

  • 12. 7. 2018 9:13

    Fufino (neregistrovaný)

    Děkuji Vám za vysvětlení a úpravu popisu na GitHubu. Jestli jsem to správně pochopil - v tom případě je potřeba mít dodatečně upravené unity alespoň v přeloženém tvaru v adresáři UNITS, a FAND by teoreticky mohl po kompilaci běžet? Chápu, že tyto úpravy a mj. i využívání video paměti, jsou v real modu DOSu potřebné.

  • 13. 7. 2018 13:00

    Pajk (neregistrovaný)

    A nebylo by možné publikovat i změněné runtime knihovny toho BP, aby byla možnost skutečného funkčního rebuildu (pro ty, kteří standardní BP 7 mají, ať už odkudkoliv) ? Podobného "Abandonware" je na internetu spousta ... Mimochodem ten WFAND asi není opensourcovatelný Alisem, ten zřejmě skončil někde v propadlišti dějin a pozůstalosti pana Kristiňáka ???

  • 13. 7. 2018 13:45

    Josef Markvart, ALIS (neregistrovaný)

    Ano, WFAND bohužel skončil v propadlišti (ne dějin ale pozůstalosti), i když zavčasu tam byla dosti významná nabídka na podporu toho vývoje technicky i financování. Šlo to mimo ALIS. Bohužel jsou mnozí skvělí programátoři současně i docela solitéři . . . . U těch úprav knihoven BP 7 si už ani autor nepamatuje na detaily, je to již vlastně 10tky let, pravděpodobně to byla unit TURBO . Také není jasné jak toto zveřejnit a neporušit nějaké licence.
    Zveřejnění zdrojáků mělo za cíl zjednodušit přístup k informacím o způsobech řešení FANDu těm kteří řeší určitou problematiku návaznosti na FAND, např. přístup k FANDovským datům, strukturu indexů apod.
    Pokud by někdo chtěl nějak přímo navázat na DOS - FAND (ver.4.2x) nějakou svojí úpravou přes stávající překlad pod BP7 a případně to nějak distribuovat, asi bychom o tom chtěli v ALISu vědět. Protože stále ještě poskytujeme technickou podporu uživatelům - programátorům i uživatelům síťových verzí. V tom případě pak můžeme individuálně pořešit i problém těch upravených knihoven.

  • 13. 7. 2018 14:02

    Pajk (neregistrovaný)

    Děkuju za odpověď, z mé strany jde hlavně o "archeologickou zvědavost" a řekněmě ověřitelnost toho zveřejnění s tou reálnou proveditelností buildu, rozhodně neplánuju distribuovat upravený FAND.
    Ohledně (nejsem teda právník) zveřejnění úpravy BP knihoven - často jsem viděl třeba u zveřejněných starých her, kdy je zveřejněn zdroják a ne další potřebná binární data hry (ta jsou zřejmě stále licencovaná, třeba u Wolfensteina), že se potřebná úprava zveřejní jako diff/patch popis (něco jako offset ve file, stará, nová hodnota) a název souboru+délka+chec­ksum originální verze ... tím zveřejníte délku souboru (která stejně někde publikovaná určitě je) a defakto vámi vyrobené bajty ...
    S tím WFANDem je to škoda, ale tolik let po úmrtí autora a zamrznutí vývoje je to asi fakt jen archeologie ... i když třeba by mohlo být zajímavé to porovnat, je to kus CZ PC historie a kdyby se o této stránce a publikaci PC-Fandu dozvěděli pozůstalí, třeba by se s nima dalo domluvit ... nebo už není žádný kontakt, aby to někdo vyhrabal a dal nějaký souhlas se zveřejněním jako historie ?

  • 13. 7. 2018 15:54

    Fufino (neregistrovaný)

    Budou to upravené unity uvnitř BP7\TURBO.TPL (dají se vytáhnout utilitkou BP7\BIN\TPUMO­VER.EXE a pak porovnat jednotlivé *.TPU), a za 2) možná ještě nějaké unity v BP7\UNITS... No, technicky by stačilo vydat binární patch file a mohlo by to po kompilaci běžet.

  • 15. 7. 2018 12:49

    Fufíno (neregistrovaný)

    Respektive možná je v TURBO.TPL zakompilován produkt třetí strany. Pak by to byl problém, ale třeba v dnešní době ta knihovna už spadá do oblasti abandonware, kdo ví.