Diskuze: PC-Fand 4.2 (Pascal)
V předchozím kvízu, Online test znalostí SQL a databází, jsme si ověřili nabyté zkušenosti z kurzu.


Jak to? Pokud mas dost casu, tak ty pas, soubor po souboru asi snadno
prepises na python, nebo, ja bych volil spis php. A muzes pouzit preci i delphi.
To bys mel temer bez prace. A nebylo by lepsi najit nejakou uz hotovou
alternativu?
Koukam treba na sort, protoze mne zajimalo, jaky pouzivaji algoritmus a ty jo,
dobre oni, tlaci to do assembleru, takze to bude super rychle.
https://github.com/…pas/Sort.pas
Tak ten sort nahrad nativnim sortem jazyka.
Poslys, a ve free pascalu ti to nejede? Nebo, pres dosbox v tp6?
u nas se treba pouzivalo na db fox pro. A stare dbf soubory umi otevirat excel. Nevim, proc chces psat vlastni sql?
Martin Dráb:6.8.2019 20:59
Na GitHubu mají odstavec, který věci asi dost komplikuje:
Z důvodu úpravy práce s HEAPem (shora a zezdola stack, uprostřed heap), využití paměti grafické karty a realizace konstruktu "long jump" podle vzoru z jazyka C++ byly upraveny některé runtime knihovny Borland Pascalu. Z tohoto důvodu je sice možné zdrojáky PC FANDu přeložit, ale výsledná aplikace nepůjde spustit.
To vypadá na úpravy hodně specifické pro DOS, které třeba mimo reálný režim procesoru nedávají smysl. Tady nepomůže ani FPC pro DOS, protože ten nejede v reálném režimu, co si pamatuji.
Tohle by mohlo všechno dost zkomplikovat.
Martin: Vím, že to nejde kompilovat ani pod TP7 v dosu... spíše mi jde to celý předělat a možná i pascal vynechat. Pak k výsledku udělat převodník exitujících programů. Prostě to celý hodit do Javy, C++, Python, prostě aby to jelo na více než 16-ti bitech. Zdroják je jen návod.
Virlupus:7.8.2019 0:16
Peter, žádná kompilace tohoto zdroje nejede. Originál jede pod dosbox: http://virlupus.cz/…c/FAND42.zip. Cílem není to znovu
kompilovat pro konzolovou aplikaci, ale udělat okenní aplikaci třeba pod Qt,
JavaFx, PyQt ... etc.
Vím, že tam dost věcí jedou ve strojáku, o to je horší číst, co
básník tím chtěl říct. Vím, že grafiky, tiskáren a jiných
nízkoúrovňových akci si nemusím všímat.
Tak, ale, pokud ti jde o nacteni dbf souboru, to vyssi jazyky umi. Pokud ten
soubor ma jinou strukturu, tak napsat si konvertor asi nebude problem.
Nebo potrebbujes, aby nejake super specialni zapisy z toho jazyka delali totez,
co v tom programu? Protoze jinak cely problem spociva jen v tom, udelat
konvertor, ktery to nasouka do databaze a pak uz nad tim pracujes s sql prikazy.
Jinymi slovy, prepsat dbf soubor na serii sql prikazu CREATE TABLE tabulka a
INSERT INTO tabulka. 95% z toho tim padem muze jit do haje. Zajima te jen cast
read from file.
Tim dbf myslim nejaky typ fand-databaze. Ale mozna skutecne pouzili format souboru d-base-format
https://www.root.cz/…-nastup-sql/
Tady pisou, ze byli pokusy o prepis do javy. Mozna by bylo dobre kontaktovat ty
tymy.
Take pisou, ze autori se pokusili to prepsat pod odbc sql driver. Ale, ze tehdy
byl nestabilni. Mozna maji zdrojove kody.
Mozna by bylo dobre, kontaktovat autory, aby ti poslali strukturu databazovych
souboru.
Jinak si myslim, ze by nebyl problem to cele prepsat. Vcetne tech funkci,
ktere zapisuji do souboru. Chce to jen cas na nastudovani, co ten asm kod
vlastne delal. A cloveka. Ja praci mam. Jestli nejsi ochoten preplatit
zamestnavatele, tak nezajem se v tom drbat Jak jsem rikal, na zlinsku to
nejspis nikdo neupozival, tady se jelo na fox-pro.
Z toho popisu vyplyva, ze to v podstate umelo jen editovat databazi, tabulky.
Coz umi kdejaky db-manager, treba phpmyadmin.
https://it-slovnik.cz/pojem/pc-fand
Pisi, ze je mozne stahnout i applikace. Coz by mozna bylo lepcejsi. Ty pouzivaji
prikazy toho fandu a jenom by se to prepsalo na sql prikazy. A cely pc fand by
se tim obesel.
https://aaapoptavka.cz/…fand-liberec
Poptávka: export dat z aplikace vytvořené v PCFAND, Liberec
Taky zajimave, firma se na to asi specializuje.
Tady mozna par odkazu z googlu.
http://www.abclinuxu.cz/…x/show/51395
http://velkedlazdeni.dlazka.cz/…ysledky2.htm
https://www.prokonzulta.cz/…-naklady.htm
https://vufind.techlib.cz/…rd/000014378 - literatura by se
mohla hodit, kdybys delal klon.
http://aleph.nkp.cz/…00942103.htm
https://list.hw.cz/…/330827.html
https://katalog.cnb.cz/…ities/197667 - cnb mozna ma nejake
moduly pro export do dbf
U nas se totiz pouzival T602 jako editor. a pro db prave fox-pro. ucetnictvi
nevim, to bych se musel zeptat rodicu. Ale pc fand tu proste nikdo nezna Ale pak hodne firem preslo na MRP
ucetnictvi. Mozna by ti jejich programatori poradili. Asi delali prevod z cizich
systemu.
Tohle je mozna struktura tabulek pc-fand-databaze
https://github.com/…s/ACCESS.PAS
Takhle. Vybral sis nelehky ukol. Lide, kteri ovladaji starsi ASM a vi, jak se
nektere prikazy chovaji, tem je dnes 60. Eventuelne bych tomu dokazal porozumet
treba ja, 40, protoze jsem to pouzival. Ale spis se jedna o 50-60 lete, kteri
maji vnoucata a jejich priority budou tim smerem. cili, zadarmo to asi nikdo
resit nebude. 100-300 000 do toho asi investovat nechces.
Na vyvoji toho sw se podilelo nekolik lidi, stalo to tak tehdy 500.000 (10-20
let). Pri dnesnich cenach 5 mil. Jinymi slovy, drbani se v tak starem kodu bude
pekne mastne. Chces vlastne vyvinout cely ten sw.
Cili, ja vidim 2 moznosti.
Bud vytahnes sql tabulky z toho sw a ovladaci sw si dopises pro individualni
aplikaci (nema smysl kopirovat jakysi fand programovaci jazyk).
A nebo je treba prepsat funkci po funkci. Klidne treba javascriptem. Tabulky mu
dodas treba jako csv (text/excel). Kdybys neco z toho mel hotove a jen si
nevedel s nekterym asm kodem rady, tak na forku ti nekdo odpovi. Zkusmo muzes
nejaky soubor predelat. Asm prikazy ti reknu, co delaji. Pripadne se da googlem
najit tabulka. I zde jsou nejake clanky o asm s tabulkami instrukci. Dokud tam
neni prikaz INT cislo, tak je to v pohode. INT 10 je zavolej funkce pro
vykresleni na obrazovku. INT jine cislo je treba prace s mysi. Coz by tez nekde
na wiki nebo jinde mohlo byt popsane
https://www.shsu.edu/…terrupt.html
The interrupt routines 10h - 1Fh are software interrupts which can be called by
application programs to perform various I/O operations and status checking
Interrupt 10h -- Video: The BIOS interrupt 10h routine is the video driver
Interrupt 11h -- Equipment Check: returns the equipment configuration
Interrupt 13h -- Disk I/O
Interrupt 16h -- Keyboard
Interrupt 17h -- Printer I/O
Funguje to tak, ze do asm promennych ulozis data, adresy pameti, kde mas data.
Zavolas INT a on ty data odesle treba na disk, tiskarnu a pod.
Pascal toto resi vlastnimi funkcemi nejaka_funkce() {asm kod}, ale ukazalo se,
ze jsou asi o 60% pomalejsi. Pro bezne veci to stacilo. Ale kdyz jsi potreboval
rychle operovat s diskem a pod, lepsi bylo pouzit primo asm prikazy.
Peter: Abychom si rozuměli. Nechci převádět dat z fandu chci celý fand.
Což programovatelné databázové prostředí, založené na Pascalu. Umí i
Prolog. DBF používá jen jako externí datovou jednotku, jinak má svůj
vlastní formát, který umím dekódovat a převést do libovolné databáze.
Dost si pamatuji i z ASM pro Z80 i pro 8080 dokonce jsem se učil 8680 intel pro
DOS i Linux.
Tedy opravdu nechci nějaké SQL, ale spolupráci na předělání celého
programu i s uživatelským prostředím (samozřejmě také programátorským)
do dnešní technologie. Assembler dnes už lze asi vynechat, protože stroje
kolem roku 87 - 92 jeli na 40MHz a jednom vlákně, na tom bych neudělal bez
ASM ani emulátor ZX Spectra.
Opravdu mi nejde jen data, ale o celé IDE což PC-FAND je.
Jednou se o to už někdo pokoušel v Delphi....nedodělal a to měl přímou
podporu od autorů.
No pokud by spolupráce někam vedla, nějaká ta kačka by se našla:-D sice v
řádu 10na pátou ne ale 10 na třetí by se dalo.
Sám jsem pod Fandem programoval a vím, co dovede a taky vím, že už nikdy
nikdo neudělá lepší aplikační prostředí.
Zkusím se spojit s panem Tichým (jeden z autorů) - Tichý - Ježek
učetnictví, třeba bude také pro tuto akci.
Tedy cíl je. Celé prostředí jak je uvést do prostředí oken - Windows a Qt, nebo Java FX, s tím, že jazyk bude nativní k prostředí (Java, C++, Python ještě nevím přesně )a pro stávající aplikace bude k dispozici převodník.
10 na 3 je pro studenta nebo nadsence. Rikam, lidi, co to programovali maji 50-60 let. Nikdo mladsi do toho nevrtal. Mozna ten delfista. Takze nadsence asi nesezenes. Student o to tezky nezajem.
Ja osobne bych sel do html/css/js + php/mysql jako komunikator s diskem pro
zapis souboru. Ano, musis pro uzivatele nainstalovat php server. Otazka je, zda
to chces provozovat uzivatelum? Zda by proste nestacil tvuj server na data.
Js by dokazalo editovat vice lidi.
Ten komunikator lze udelat i pythonem nebo cimkoliv jinym. Provozoval bych ho
jako web-services.
url?service=user_insert&name=peter&surname=mlich.
Js by pak fandove prikazy prekladal na url a volal ajax.
Musel bys vyresit, aby nekdo nepovrhoval data. A nebo vubec. To zavisi od toho,
zda to chces provozovat jen jako nadsenec nebo ne. Nebo, treba, abys dokazal
spoustet stare fand-programy.
Iniptor:23.9.2019 17:20
Hurá, vítám pokus o resuscitaci PC Fandu. Kdysi jsem komunikoval s panem Kristiniakem z Košic, který opravdu vytvořil Win-Fand. Jenže bohužel po čase přestal komunikovat a ukázalo se, že za to může zatracená smrtka, která si ho vzala, jak to tak bývá, v té nejméně vhodné chvíli. Kde skončila jeho několikaroční práce, nevím, ale fungovalo to - zvládlo to normálně staré RDB úlohy provádět. Protože jsem v PC Fandu udělal kdysi dost programů, moc jsem mu fandil, testoval jeho verze.... Bylo mi to strašně líto, jak jeho osobně, tak té práce, tak PC Fandu. Produkt PC Fandu podobný s jednoduchým deklarativním textovým programováním i vazeb mezi soubory, podle mne neexistuje. Kdykoliv dělám něco složitějšího v excelu, hledám duplicity a nedodržení formátu, protože "tabulka" je tabulkou jen zdánlivě a obsahuje pitomosti, které znemožňují importy, toužím po tom, aby se PC Fand zase vrátil na scénu - v něm bych si s takovými problémy poradil podstatně lépe. Taky toho přes VDOS ještě semtam leccos udělám, ale není to ono, když se třeba nedá používat normální CtrlC-CtrlV atd.
Doufám, že uspějete - myslím, že ideální cesta by byla přes Delphi, tak to aspoň dělal, pokud vím, pak Kristiniak, blahé paměti. Kéž by se ten jeho projekt dal získat, ale on si to strašně hlídal, všechny testovací verze byly omezené, dobře věděl, že Win Fand má i velký komerční potenciál, i když staré aplikace postupně dosluhují.
Iniptor:23.9.2019 21:14
Našel jsem WinFand pana Kristiniaka - ověřovací, v podstatě už pod win chodivou verzi. Stačí si vrátit datum a jede to. Zde: http://leteckaposta.cz/284823846
Virlupus:25.9.2019 22:33
Iniptor: Tuhle verzi jsem také někde našel. Stále vedu v archivu orig.
Fand 4.2 i s převodníky textů. Kdysi jsem začal dělat, celý systém v
Pascalu. Ale narazil jsem na svou neschopnost, a začal se učit jak se vlastně
dělají kompilátory....A Kdybych se dnes měl vrátit k Pascalu, tak jedině
LAZARUS a nikdy Delphy...Bude s tím moc práce, a vlastně jsem na
začátku.
Moc bych ocenil trochu pomoci. Zatím, mám jen kostru překladače (interpret)
pro P sekce... chtěl bych to mírně upravit aby F soubory pracovaly jako
SQLite, ale přitom snadno převoditelné, třeba jedním příkazem
F00<->SQL, Ale nutno zachovat strukturu kapitol E....
Prostě souhlas... neexistuje lepší než FAND byl, WinFand... to byl dobrý
pokus.... ale zdrojáky jsou v .... tedy zase od začátku... bohužel.
Zdrojaky by se dali vytahnout z potomku. Cim pozdeji, ale, tim mensi sance,
ze neco ziskas Kdyz si
vzpomenes X let po smrti. Ty pc, kde to ma, uz mozna nenajedou. Taky to ma mozna
v delphi 3 a z toho to vytahnout do nejake 9 muze byt problem. No, a pak ty pc a
diskety uz mohli skoncit na srotaku. Koho by zajimali veci, ktere jedou na W95,
ktere na W10 neumi kazdy spustit
Nez investovat do znovuzrozeni zastaraleho neni lepsi prepsat aplikace? Nedavno jsem vytvarel novy program, ktery nahrazoval stary fandovsk. Zpetne reakce jsou jen pozitivni - uzivatele si moc chvali pohodlnejsi ovladani, intuitivnejsi rozhrani atd. Jo a muzu pohodlne koukat na web a pracovat.
Jiří Nekolný:5.10.2019 3:16
Koukám že nejenom já stůňu po fandu a také mi připadl zajímavý python. O spolupráci bych měl zájem.
Virlupus:5.10.2019 12:03
Zatím to ve fázi luštění originálních zdrojáků a rozmýšlení co tím author chtěl říct, protože je tam strojáku. Ten stroják chápu, protože to pracovalo v DOSu a s vlastní grafikou a také některé rutiny se tím značně urychlí.
Virlupus:5.10.2019 12:44
Možná by byla i cesta z úplně jiné strany. Najít si pouze jejich
datové struktury a podle syntaktických diagramů zpracovat vlastní
interpret.
Je fakt, že Python mi připadá nejschůdnější, už je proto, že se udělat
dost funkcí v "céčku" a navíc PyQt je poměrně jednoduchý grafický kit
pro zpracování prostředí.
Původní pascalovské konstrukce pak lze snadno transpilovat přímo do
Pythonu, pro zpětnou kompatibilitu a čeština samozřejmě do UTF8.
Jiří Nekolný:5.10.2019 14:44
Zachraňte FAND.
Všem, kteří programovali ve FANDu schází modernější náhrada, ti co ho
nepoužívali nechápou proč.
Kdyby bylo cokoliv stejně rychlé a efektivní pro programování v hromadném
zpracování dat, už bych to využíval. Kdo by chtěl vidět ukázkový
systém ve FANDU, ať zkusí jednoduché účetnictví od firmy Tichý a spol.
www.ucto2000.cz, které je
stále funkční a vynikající.
Programoval jsem ve FANDU od jeho 8bitové verze a tak připomenu, jak a proč
vznikl.
Tehdy se účetnictví zemědělských podniků zpracovávalo ve výpočetních
střediscích Agrodatu. Data se děrovala na děrnou pásku v podnicích a
kabelovým přenosem doručovala ke zpracování (Šup pásku do kabely a jelo
se.) Zpět podniky obdržely kontrolní sestavy a po odkontrolování se
provedlo konečné zpracování.
Někdy koncem osmdesátých let se objevily první mikropočítače a
osmipalcové diskety s úžasnou kapacitou 256 kB. Data se začala předávat na
disketách a bylo potřeba, aby měly co nejmenší velikost. Z toho vznikla
potřebná struktura dat základních čtyřech typů F, A, N a D.
F - čísla, se kterými se počítá,
A - alfanumerická data typu string,
N - numerická data, se kterými se nepočítá -typu číselník
D - datum.
Datové soubory měly pevnou strukturu, kterou znal jak odesílatel, tak
příjemce.( Na rozdíl od dbf souborů si je nenesly s sebou.)
Záznamy se zpracovávaly sekvenčně (v té době jak jinak). Diskety však
umožnily přistupovat k datům přímo a tak na začátek souboru přibyl údaj
o délce jednoho záznamu.
Tím se z délky souboru po odečtení úvodních bytů a pevné délky záznamu dalo zjistit kolik záznamů soubor obsahuje.
Rychlý přístup k datům byl vyřešen tak, že se záznamy nejprve
ukládaly setříděné a soubor se prohledával metodou půlení
intervalů.
Praxe ukázala, že je často potřeba hledat podle různých klíčů a tak k
základnímu datovému souboru přibyl indexový soubor, ve kterém je
klíčový údaj spojen s údajem o umístění, myslím nějakou formou
B-stromu. Tedy menší indexový soubor se prohledal a v něm bylo nalezena
pozice datového záznamu a data byla načtena na první přístup. Pokud
programátor povolil, mohl být klíčový údaj duplicitní a soubor se
prohledával kombinací idexového a sekvenčního prohledávání. V indexovém
souboru mohlo být stromů více, podle množství klíčů.
Tím odpadla potřeba přetřiďování souboru před prohledáváním.
Nové záznamy se z časových důvodů do neindexovaného souboru zadávaly
na konec. Bylo však možné vložit záznam na jakékoliv místo, jen to bylo
bylo časově náročnější.
U indexovaných souborů se údaj zadával vždy na konec.
Odstranění záznamu bylo téměř vždy náročnější, protože na
uvolněné místo se musel zbytek souboru připojit. U indexovaných souborů ke
každému záznamu přibyl na první pozici 1 byte,který indikoval, zda je
záznam platný či nikoliv. Tím se výmaz záznamu omezil na přepsání pouze
tohoto bytu, což je mnohem rychlejší. Vymazané záznamy se odstraňovaly v
případě akce, která stejně zpracovala všechny záznamy, kdykoliv to mohl
vyvolat programátor.
Praxe vyvolala potřebu zaznamenat delší texty rozdílné délky a tak přibyl soubor volných textů. V základním datovém souboru se pro nalezení tohoto textu ukládá pouze jeho adresa o velikosti několika bytů. Volný text mohl mít nejprve délku 64 kB, později bylo toto omezení odstraněno. Do množiny typů tedy přibyl údaj typu T - volný text. Přibyl také údaj typu R - reálné číslo v pohyblivé řádové čárce. (Upřímně nevím, jestli jsem ho někdy použil.)
Údaje pro jeden logický soubor mohou být tedy uloženy až ve třech
fyzických souborech
se stejným jménem a odlišených jen příponou.
soubor.000 - základní datový soubor
soubor.t00 - soubor volných textů
soubor.x00 - příslušný indexový soubor
Datová struktura tedy vznikala v době kdy kraloval DOS a šestnácti
bitové počítače. Pro kódování textů se nejprve využívalo prvních 128
bytů a texty byly bez diakritiky. Pak vzniklo oblíbené kódování
kamecikých, latin2 a posléze Windows (CP1250)
Fand umí pracovat jen bez diakritiky a nebo v kódech kamenický nebo latin2.
Data pro export umí převést do CP1250. A to je vše.
Při revitalizaci fandu by se zřejmě daly doplnit i další kódové stránky
ale co s UTF-8, které má pro ukládání jednoho znaku různou délku?
Údaje typu A by se daly ukládat v latin a program by pracoval s unicode. Před
načtením a před uložením by se musely provádět konverze dat.
Také by šlo přidat další údaj typu U - unicode v délce 16 bitů na znak s
pevnou délkou - podstatný nárůst velikosti datových i indexových
souborů.
Nebo by rozsah údaje A:20; neudával počet znaků v řetězci, ale maximální
délku v bytech. V češtině by se mohlo vejít dvacet, ale také jen třeba 10
znaků.
Také by se dala použít jiná datová struktura, ale byl by to ještě
FAND?
Tak kterou cestou se vydat?
Iniptor:5.11.2019 11:12
Zdá se mi, že dobrou strategií by mohlo být nejdřív revitalizovat PC Fand tak, aby v něm mohly být načteny a provozovány dosavadní projekty. Tím se získají na ověřování poslední zbytky dříve veliké uživatelské obce v ČR a SR. Ve chvíli, kdy se projekt dostane do fáze, že ho vezmou vážně tvůrci Účta a začnou spolupracovat, naděje na dokončení výrazně vzroste.
To znamená ale nejdřív zachovat staré deklarace, tj. údaj typu A by byl normální ASCII char do 255. Vždyť i excel má char a unichar.
No a pak přidat soubory (kapitoly F) s příponou .U a .UX - unicode a indexové unicode. Tak jako už teď jsou ve fandu kapitoly F s příponou dbf.
Nové programové RDB se samozřejmě musí rozšířit, názvy souborů už nemohou být jen 8 znaků. Původní RDB by se do FreeFandu daly načíst, ale pak jen uložit v nové deklaraci psané v UTF-8, nativní kódování musí být už všude v UTF-8.
Asi by tam opravdu musela probíhat konverze dat ze starých do nových, protože jinak by musely všechny funkce běžet dvojmo, a to je moc práce. Jenže rychlost konverze třeba volných textů, které mohou být ohromné, vždyť volný text jsou i "datové" programové soubory... No snad už je výkonnost počítačů zase o hodně dál.
Když by FreeFand dokázal pracovat se starými datovými soubory, bylo by ohromně snadné ověřování - prostě se ta samá velká datová úloha provede na stejných počátečních datech ve starém PC Fandu pod VDosem a ve FreeFandu - a pak se jen porovnají "bajt po bajtu" výsledné datové soubory po akci. Takže se dá skvěle využít jedoucích projektů.
Ještě v této fázi, kdy datové struktury zatím zůstávají beze změny, by bylo skvělé zařadit spolupráci s datovými formáty tabulek v excelu - tj.skutečně tabulek, které mají popis v hlavičce a jinak to pak jsou datové věty. Existuje totiž spousta programů (účetních a jim podobných, docházkové systémy apod), které mají export dat do csv nebo xlsx - jenže ten, kdo data třeba z účetnictví takto dostává, je obvykle exportuje proto, že je potřebuje nějak kontrolovat a dál zpracovávat jinak, než to dovoluje původní program. V excelu to sice jakž takž jde, ale je to strašně pracné, snadno se tam udělají fatální chyby, no prostě to není databázový program. (Stejně tak by bylo skvělé zvládat importy do nového FreeFandu přes různá ODBC.) Tímhle by se totiž postupně začala rozrůstat obec i úplně nových uživatelů, vychytaly by se dětské nemoci - a snad by se tím našli další lidé, kteří by na vývoji FreeFandu začali spolupracovat i programátorsky. Asi by bylo nejlepší mít přímo F kapitolu s příponou .csv, kde by v záhlaví deklarace byl specifikován oddělovač a jestli je hlavička v prvním řádku, to by pro začátek stačilo...
No a pak, až by byl zvládnut starý PC Fand, by se teprve začalo s texty v UTF-8, jde o údaje typu A,N,T - takže třeba U,M,W (Utf, nuMeric, Word) ...no a u volných textů je otázka, zda do nich časem nezařadit práci s rtf.... Ale to už je velmi daleko, kéž by se povedla alespoň ta první fáze tak, aby ještě bylo na co (na koho) navazovat - pořád ještě je koho se ptát, pan Tichý (tvůrce Účta) se svou ženou Blankou jsou lidé, kteří byli v původním Pc-Fandovském týmu...
Možnost přenést to do Pythonu vypadá lákavě, je to jazyk, který "jede"...
Problem neni v to to preprogramovat, ale, kdo to zaplati. Zadarmo se s tim
nikdo drbat nebude. A muj strizlivy odhad, pul roku prace po 8h po 400 kc/h je
250/2 * 8 * 400 = 400.000. Pokud tyhle penize nejsi schopen obetovat, nema smysl
uvazovat o tom, ze by nekdo chtel zprovoznit vsechny funkce toho sw. Aspon treba
pro mne by to znamenalo kompletne ten kod prostudovat a prepsat do jineho jazyka
nebo aspon do QT/cpp, protoze u nas se to nepouzivalo, tak ani nemam tuseni, k
cemu je to dobre.
Prvni vysledky bych mohl mit tak po 2-3 mesici a pak by se videlo, co jeste
treba spravit...
Virlupus:6.11.2019 20:05
Dost dobrý nápady... celkem se shodují s prvotní myšlenkou. Pokud to projde jako GNU GPL a komunitní projekt, tak se snad zbavíme i toho 1.5mega nákladů. Zatím mám zpracováno řešení datových souborů v C++, aby to bylo čitelné... vím, žádná hitovka. Pascal sice umím číst, ale šílené konstrukce už v něm nedám....
Mnoho souborů je zde už zbytečných, protože Woknenní systémy nemusí řešit grafiku a editory... Prostě čtu původní zdrojáky a zjištuji, co je fakt nezbytné a co lze vynechat....Je to moc stránek textu:-(
http://virlupus.cz/…src/FAND.zip je tam i jeden projekt, na kterém jsem z velké části dělal:-(
Zdravím všechny příznivce FANDu. Po 3/4 roční práci mám PC FAND
přepsaný do Visual C++ 2019. Zdaleka tam nefunguje vše, a už vůbec ne
spolehlivě, ale je možné tam některé úlohy spustit. K možnosti pracovat s
indexovými soubory vedla opravdu strastiplná cesta, plná utrpení v podobě
assembleru. Nicméně to nějak funguje. To, co nefugnuje vůbec, je zápis /
úprava .T00 souborů, textový editor, generování reportů a spousta
dalšího. Nicméně je to jen začátek.
Nevím, jestli to má vůbec smysl, jestli by to měl zájem někdo využít.
Pokud ano, tak na tom snad budu dál pokračovat.
V tuto chvíli můžu říct, že autorský tým PC FANDu odvedl neskutečnou
práci. Nechápu, že někdo v Pascalu dokázal napsat něco tak obsáhného a
spolehlivě funčkního. Ta práce s pamětí, assemblerem a v podstatě
každým jedním bajtem je neskutečná. Velmi poučná. My, dnešní
vývojáři, se máme jako v bavlnce, to se nedá s tou hrůzou, kterou
zažívali naši předchůdci, vůbec srovnat.
Našel by se někdo, kdo by měl zájem o testování této přepsané verze?
Případně zájem o pomoc s dalším vývojem (sqlite, jiné SQL, XML, JSON,
SOAP, ...)?
Napište mi případně na spanhel (zavináč) spanhel (tečka) eu. Díky
Jaroslav Janoušek:24.10.2020 1:10
Virlupus, programoval som PcFAND v rokoch 1991 až 1998 kým sa dalo až po Win98. Jeho logika bola úchvatná. Predtým som programoval sálový počítač v Pascale a v súčinnosti s IMAGE2000, ktorý obsahoval FORTRAN knižnicu, ale sa dalo ju "vcucnúť" resp. "obaliť" Pascalovskou hlavičkou a používať v Pascale. Potom prišli prvé personálne počítače a TurboPascal. Hľadal som spôsob ako aplikácie preniesť na PC a naprogramovať tam. Pritom som sa dostal k riešeniu v podobe PcFANDu. Kúpil som si ho za cca 500Kčs a používal aj po roku 2000. Na začiatku to vyzeralo to tak, že využijem jeho schopnosť deklarovať databázové štruktúry a potom využijem Pascalovskú knižnicu na svoju aplikáciu, ktorú vytvorím v Pascale. Ale ako sa ukázalo, jeho PcFAND script bol super! Na všetko čo som potreboval od databázy dostať sa dalo použiť to čo poskytoval PcFAND. Dnes uvažujem, že pre svoje potreby vytvorím niečo podobné v Jave tak, aby sa dala databáza prenášať aj pod Linux. No rozšíril by som DBS o nové typy položiek, pre prácu s fotografiami a filmom. Preniesť "ducha" PcFANDu do modernej verzie DBS.
Tiež patrím do generácie po 60ke. Programoval som v Assambleri dokonca aj databázové aplikácie v čase keď dáta sa ukladali priamo na sektory adresou STOPA, HLAVA a SEKTOR na 8 palcové diskety. Dnes si myslím dajú obísť veci v assambleri ktorý mal význam v rýchlosti a potrebe RAM pamäte. Programoval som aj v C++ a Jave, ale chcel by som vás priatelia inšpirovať programovacím prostredím https://processing.org/download/ v ktorom sa dá objektovo programovať v Jave ale trochu podobnej JavaScriptu. Pozrite si to.
Jára Franke:24.11.2020 17:49
Držím palce, fand se stal mým osudem. V devadesátkách jsem s jeho pomocí postavil řadu pomocných prográmků pro různé agendy úřadu práce, které ofiko program neuměl a po odchodu do privátní sféry jsem si bez něj nedovedl představit zase nadstavby pro náš IT systém. Největší projekt tehdy byla podniková banka, na kterou jsem byl patřičně hrd a pyšen. Dodnes si s fandem hraju a mám v něm i receptář na hubnoucí dietu včetně tabulek jednotlivých potravin s nutričními i kalorickými hodnotami, či jednoduchý program pro kalkulaci zájezdů, co pořádám pro kamarády a pár dalších maličkostí. Mrzí mě, že nic podobně jednoduchého a přehledného není k dispozici na moderních strojích a domnívám se, že by se nápad mohl chytit.
Jaroslav Janoušek:6.3.2024 21:10
Nazdar priateľu.
Bol som pri zrode INFORMATIKY v Československu, keď sa objavili prvé
mikroprocesory typu I 8080 a programovali sme v assembleri. To bolo niekedy v
priebehu rokov 1983. V priebehu nasledovných 7 rokov sa postupne objavili prvé
IBM PC. Pred nimi ešte nejaké 8 bitové stroje a objavil sa PCFAND, dBASE,
FoxBase a s nimi DBF súbory. Ja som začal databázy na I8080 v assambleri, kde
dáta sa ukladali do sektorov na floppy disku. Operačný systém počítača
MVS (Malý vývojový systém) predstavovala knižka písaná v assambleri, kde
som mohol využívať podprogramy toho "operačného systému" ako by boli v
knižnici. Podprogram znamenal volanie call na danej adrese. Tak som začínal.
Dva roky na to som preskočil na sálový počítač, kde som programoval
databázy vo FORTRANE využívajúc funkcie databázového systému IMAGE 1000
(1000?presne už neviem) ktoré vykonávali operácie s databázou. Na sálovom
počítači bol aj Fel Pascal, ktorý vedel pod seba zahrnúť FORTRAN knižnicu
IMAGE tak sa dalo preskočiť na programovanie aplikácií v Pascal jazyku. ...
prišiel svet IBM PC a s ním Turbo Pascal od Borlandu. A prišli DBS ako dBASE,
FoxBase, Clipper, a ... PCFAND. Keď som chcel preniesť aplikácie zo
sálového počítača na IBM PC, chcel som pokračovať v Pascale a dokonca som
si na PC vytvoril náhradu funkcií, ktoré mi dával IMAGE. No do cesty sa mi
dostal PCFAND s možnosťou Pascalu a jeho špeciálne schopnosti vytvárať
OBJEKTOVÝ SPÔSOB DATABÁZY. Nakoniec som nikdy neurobil ani jeden program v
Pascale, lebo sa ukázalo že script PCFANDU bol DOKONALÝ. Čo som potreboval
naprogramovať som urobil v ňom.
Programoval som v ňom profesionálne do roku 2003 (aj pod Windows 98 - SUPER)
od roku 1990. V 1993 (MS DOS a PC 386, 486, ...) roku som v ňom vytvoril
aplikáciu tvorby a evidencie Jednotnej colnej deklarácie pre pracovisko
Zahranično obchodnej spoločnosti VSŽ. Aplikácia pracovala v distribuovanej
databáze, pracoviská aj 2km od seba, prepojené modemami na platforme MSDOS
počítače 386 a 486 používajúce sieťový softvér LANTASTIC Z
(používajúci modemy na sériovú komunikáciu). No unikát filozofie. Projekt
o dvoch ľuďoch Vedúci pracoviska - hovoril čo potrebuje a 1 programátor -
JA. Práca trvala 3 mesiace, každý mesiac jedna etapa skončená. Potom to už
fungovalo a šiel cez neho VEŠKERÝ EXPORT VSŽ 7 rokov až do roku 2000. Vtedy
sa strachom pos..ali, že projekt nezvládne prechod cez rok 2000 a prešli na
SILNÝ IBM stroj ktorého projekt stál cca 1.5 milióna Kčs. Projekt PCFAND za
tri roky mal v databáze 90tisíc JCD a vďaka nemu spoločnosť rozšírila
službu zo 7 na cca 45 firiem, kde pôvodne 1 žena v smene nahradila pôvodne 4
ženy klepajúce na písacom stroji. Žiadnu neprepustili ale rozšírili
službu bez toho aby sa ženy trápili kontrolami obsahu. Všetko kontroloval
program. Z 90tisíc JCD som po rokoch našiel cca 12! preklepov nepodstatných
údajov vo formulároch JCD.
PCFAND bol FANTASTICKÝ aj so schopnosťou spúšťať exe súbory, ktoré
vytvoril niekto iný (takto mohol LANTASTIC vytáčať čísla telefónov a
prepájať sa na vzdialené pracoviská, kde si cez ZDIELANÉ FOLDRE NA HARD
DISKOCH prehadzovali EXPORTNÉ DÁTA).
V PROSTREDÍ PCFAND takto som dokázal v "databázovej" aplikácii vytvoriť
neskôr pre žiakov programujúcich mikropočítače v assambleri vývojové
prostredie, ktoré archivovalo zdrojové kódy, prekladalo programy a nakoniec
ich aj napalovali na mikropočítače. Program kompilátor spúšťal ako exe
program. Žiak to ovládal cez MENU DATABÁZOVEJ APLIKÁCIE! Program v jazyku
scriptu PCFAND.
Neskutočné aplikácie sa dali vytvoriť. Preto ma mrzelo, že vývojári
PCFANDu nevytvorili TÝM PRACOVNÍKOV, ktorí by ďalej pokračovali s IDEOU
PCFANDU - ako OBJEKTOVEJ DATABÁZY. Princip objektového programovania prišiel
neskôr, ale oni sa ku tomu veľmi priblížili.
Jeden pán z Košíc v tomto urobil veľa keď prehodil PCFAND na platformu
Windows. Chyba! INDIVIDUALITA - TAJNOSTI - UMREL a NEZANECHAL PO SEBE
POKRAČOVATEĽA!!! Projekty sa nedajú robiť bez IDEI UDRŽANIA VÝVOJA
NAFURT!
********* A TERAZ KU VECI ************* Pozrel som sa na zdrojové texty *.PAS
PCFANDU. Prvá CHYBA! Nestačí zverejniť ZDROJOVÉ TEXTY! Projekty sa robia
cez Analýzy a Ideové návrhy. Myšlienky predchádzajú programovanie! Ľudia
zabúdajú - JA TIEŽ!!! Po čase by som nevedel AKO SA VOLÁM!!! Ani Autori by
dnes už asi nevedeli čo a prečo majú v programoch zakódované!
Moja IDEA BOLA - skúsiť naprogramovať IDEU ako PCFAND vytváral štruktúru
databázy, ako preväzoval tabuľky ako vykonával aditívne zmeny naprieč
tabuliek ako boli na seba reťazené.
Dnes stále žije FREE PASCAL a to čo pôvodne mal urýchľovať assambler,
dnes už dokáže urýchliť HW 1000x rýchlejší než pôvodný HW.
JerryM:26.11.2024 14:34
PCFand je dnes iž naprosto mrtvá záležitost. V dnešní době je tolik náhrad, že to nemá smysl a tvoje snažení stejně skončí v odpadkovém koši. Pascal je mrtvý jazyk. Existuje sice FreePascal, ale ten už používá jen velmi málo lidí a je v něm hlavně obrovské množství chyb. Je tu Delphi, ale to už opravdu není původní Pascal (BP7.x) i když má stejnou základní syntaxi. Takže v klidu nech PCFand umřít a nesnaž se resuscitovat mrtvolu.
Zobrazeno 34 zpráv z 34.