Na FreeHostingu Endora běží desítky tisíc webů. Přidejte se ještě dnes!

Vytvořit web zdarma

Na FreeHostingu Endora běží desítky tisíc webů. Přidejte se ještě dnes!

Vytvořit web zdarma

Jednotky pro Turbo Pascal

Vechny najednou si mete sthnout ZIP hned tady (314 kB). Pibaleny jsou vechny podprn soubory pro kompilaci i bh. Nsledujc seznam ukazuje pouze samotn zdrojky - dobr pro zbn prohldnut, ale jestli je chcete k nemu pout, je dobr sthnout cel balk, aby vm neuteklo nic dleitho. TXT Pehled nvaznosti jednotek.

PAS VESA 2 - grafick jednotka pro bankovanou 256barevnou grafiku s rozlienm od 640350 po 1024768. Obsah:

Soubory s fonty nutn pro zobrazovn text jsou spolu s editorem v sekci Programy. Pokud jste si odkazem nahoe sthli vechny jednotky najednou, mte zkladn font pibalen.
Zajmav triky: kreslic algoritmy, VESA grafika obecn, virtuln obrazovka a strnkovn a spousta podrobn okomentovanho assembleru.
Novinka: oprava kreslen przdnho obdlnku - v reimu xor u mu nechyb rohy.

PAS VGA - grafick jednotka pro 256barevnou grafiku v rozlien 320200. Obsahuje sadu zkladnch kreslicch procedur (ry, obdlnky, elipsy, texty apod.) a hlavn prci s obrzky (Getimage, Putimage a 32bitov "prhledn" sprity) a virtulnmi obrazovkami pro celoobrazovkov animace. Samozejmost je sputn a ukonen grafiky a nastaviteln oezvac okno.
Zajmav triky: je to vlastn jenom jednodu VESA, take celkem nic novho.

PAS Images - univerzln jednotka pro prci s rastrovmi obrzky. Pracuje vtinou pouze s daty v pamti a ne s obrazovkou, take me spolupracovat s jakoukoli grafikou, kde 1 pixel = 1 byte (u m jednotky VESA2 a VGA). Um obrzky zvtovat a zmenovat, oezvat, zrcadlit, otet, rzn zeikmovat, kreslit do nich (pixel, ra, obdlnk, elipsa a vloen jinho obrzku), nahrazovat barvy a plynule mnit jas od jedn hrany ke druh. Dle pevd obdlnkov obrzky na "prhledn" sprite a zpt a nat a ukld formty BMP, PCX, CUT a ORF. BMP um nast z jakkoli bitov hloubky (pokud neobsahuje vc ne 256 rznch barev), ukld pouze v 8 b/px. Ukldn se d z nadazenho programu modifikovat tak, aby bralo data odjinud ne z normln pamti (teba z XMS nebo z obrazovky), take se daj uloit i obrzky vt ne 64 KB.
Zajmav triky: prakticky vechno ve uveden :-). Plus na konci zdrojku podrobn popis pouitch grafickch formt.

PAS Zvuky - jednotka pro pehrvn zvuk pes Sound Blaster. Um pehrvat a osm zvuk souasn a u kadho zvl᚝ nastavovat hlasitost. Zvuky um natat ze soubor *.WAV, kter si automaticky pevd na svj intern osmibitov monofonn formt. Za chodu je m uloen v rozen pamti (XMS). Rozhran je kompletn v etin a zdrojk sam vysvtlivka.
Zajmav triky: obsluha zvukov karty, nzkorovov prce s XMS a hlavn spousta assembleru, msty ponkud obskurnjho (32bitov instrukce psan napl ve strojovm kdu).
Pozor: jednotka jet nen pln stabiln, ve Windows XP nkdy chrchl a v Dosboxu pad.

PAS Woknows 4 - soubor grafickch ovldacch prvk pro pascalovsk programy "nepatrn" pipomnajc Okna od pana Gatese. Objektov tlatka, pepnae, nabdky, posuvnky, textov pole, okna atd., rzn dialogy (mstn nabdka, menu, otzka ano/ne, zadvn textu nebo sla, vbr souboru atd.) a pr dalch vc pro usnadnn prce. Nejedn se o ist objektov hierarchick systm jako Windows, obrazovka je pod normln pstupn pro klasick neobjektov kreslen. To me bt vhoda i nevhoda podle toho, co zrovna potebujete. ZIP Demo zde.
Veker texty v jednotce (vetn klvesovch zkratek) jsou uloeny v externm souboru a nataj se a pi startu programu, co zjednoduuje tvorbu rznch jazykovch mutac (balk pod odkazem nahoe obsahuje eskou a anglickou verzi). Toto loit text mohou vyut i programy, kter jednotku pouvaj.
Zajmav triky: spousta objekt, dynamickch struktur a mraven prce.
Novinky: pibyla monost pesouvn oken my a automatick integrace objektovch prvk s okny, take se daj spolu s nimi hromadn pesouvat, kontrolovat i ruit.

PAS Klvesy 2 - jednotka pro obsluhu klvesnice. Obsahuje vlastn Keypressed a Readkey (bez CRT), funkce pro zjitn stavu Shift, Alt, Ctrl a Lock, pepnn Lock, zpis do bufferu klvesnice, ekn na klvesu, diagnostiku atd.. Pedevm ale m vlastn ovlada klvesnice a kdy ho spustte, zskte monost detekovat vc stisknutch klves najednou, rychlej bufferovan ten (protoe u nemus volat dn systmov sluby), monost povsit si proceduru na Printscreen a vbec kompletn pedefinovat cel rozloen klves. Rozloen se nat ze souboru (piloeny jsou dva zkladn pro eskou a anglickou), take nejsme zvisl na OS. D se nadefinovat samostatn tabulka kd pro kad peaova (lev a prav Alt se rozliuje, Controly a Shifty ne) i mrtv klvesy (hky, rky a tak). Funguj vechny ti Locky (vetn kontrolek), Pause/Break a zadvn ASCIIkd pes Alt+sla. Spousta vc se d pekonfigurovat podle poteby.
Zajmav triky: obsluha klvesnice pes int $16, int $21 a stavov word i pes vlastn peruen. Dle podrobn popis, jak klvesnice funguje.
Program pro vytven novch definic rozloen klves najdete v sekci Programy.

PAS My 4 - prakticky vechno, co potebujete pro prci s my ve VESA grafice: inicializace, kontrola polohy a stavu tlatek, nastaven citlivosti, omezen rozsahu pohybu, zobrazovn a pohyb kurzoru (podporuje i strnkovanou grafiku), zmna tlatek apod.. Me pracovat ve dvou reimech. Bu run, kdy je poteba neustle volat proceduru pro zobrazen kurzoru, nebo automatick, kdy se cel obsluha myi povs na pslun peruen a ve je pak jet jednodu ne u standardnho kurzoru v BGI.
Soubory s kurzory nutn pro funkci jednotky jsou spolu s editorem v sekci Programy (jeden zkladn kurzor je pibalen v balku vech jednotek).
Zajmav triky: zkladn obsluha myi pes peruen $33 a zaveden vlastnho handleru na pozad.

PAS My pro VGA - jednotka pro prci s my v grafice VGA (320200 px, 256 barev). Pouv se pln stejn a um pesn tot jako My 4.
Zajmav triky: viz ve.

PAS Grafika 4 - rzn grafick blbinky pro VESA grafiku: oblouky, vsee, stnovan text, "procentov" indiktory, komiksov bubliny, prce s bitmapami apod., vypnut a zapnut obrazovky a vektorov etzcov grafika vetn psma (ZIP ti ukzkov fonty jsou zde).
Zajmav triky: pouit XMS pro ukldn obrzk, dynamick pole s promnnou velikost prvku.
Novinka: nov objekt Xmsimage pro ukldn a natn obecnch vez obrazovky do/z XMS, zruen procedury Savescr a Loadscr.

PAS uMAC 4 - jednotka pro zobrazovn vektorovch grafickch struktur (*.MAC), kter se vytvej editorem AlmostCAD (viz sekci Programy). Vhodou tohoto formtu jsou minimln nroky na pam i msto na disku pi libovolnch vizulnch rozmrech obrzku, monost plynule mnit mtko zobrazen (po procentech) a hel natoen (po stupnch) a monost tvorby animac. Formt byl vyvinut hlavn pro hry, ale u jsem v nm kreslil i pr schmat do koly :-).
Zajmav triky: dynamick beztypov pole s promnnou velikost prvku a petypovan ukazatele, to ve v maximlnm monm mnostv.

PAS Matematika - sbrka aplikovanch vzorek od zkladn koly po vysokou:

Zajmav triky: z programtorskho hlediska jsou nejzajmavj matice (dynamick 2D pole), vyhodnocovn vraz (prce se zsobnky) a obrsla (dynamick pole, bitov operace a vpoetn algoritmy).

PAS as - obsahuje procedury pro ekn nebo men asu nezvisl na rychlosti potae (funguj na bzi zrychlenho systmovho asovae, pesnost na 5 ms nebo v ppad poteby a 1 ms). Zatek a konec ekn je oddlen. Pouit je velmi jednoduch, protoe veker instalace i odinstalace peruen probh pln automaticky a ostatn je podobn jako u Delay. Dle tu najdete jednoduch objektov stopky na bzi GetTime (pesnost na sekundy) a monost nechat na pozad v zadanm asovm intervalu automaticky volat vlastn proceduru.
Zajmav triky: zrychlen asovae, pouit vlastnho peruen vetn jeho automatick instalace a odinstalace a voln procedury z tohoto peruen.

PAS COM - jednotka pro komunikaci dvou pota po kenm sriovm kabelu RS-232. Vyuv FIFO frontu na pjem i odesln, o oboje se star obsluha peruen. Tak um st a pepnat vechny pmo pstupn piny. Nkolik port souasn provozovat neum. ZIP Demo zde.
Zajmav triky: sriov komunikace obecn - co, jak a pro. Snad kad krok je v komentch podrobn vysvtlen, najdete tam i teoretick vod.

PAS XMS - umouje vyut a 64 MB rozen pamti, a to z obyejnho real mdu. V ppad, e rozen pam nen dostupn, kompletn ji emuluje pomoc doasnch soubor na disku. Oeteno je i automatick uvolnn alokovan pamti pi ukonen programu.
Jako high-level jsou tu dva objekty: jeden pro natn a uchovvn text z textovch soubor (co umon vrazn snit spotebu omezen zkladn pamti bez toho, aby se muselo pod trachat v souborech) a druh pro uchovvn sprit (co je nezbytn, protoe do zkladn pamti se dn rozshlej grafika prost nevejde).
Zajmav triky: vyuit funkc ovladae pamti (hodn Asm) a ukldn etzc do beztypov struktury.

PAS Genertor Xsprit - mal jednoelov jednotka pro tvorbu knihoven sprit, kter se daj natat do objekt typu Xsprite z jednotky XMS a dle zpracovvat jednotkami Images, VGA nebo VESA2.

PAS CFG - jednotka pro prci s textovmi konfiguranmi soubory. Formt je vcemn kompatibiln s *.INI, ale pro jistotu pouvm vlastn koncovku CFG. V programu sta pout konfiguran objekt, napojit ho na svoje promnn a potom u je hromadn uloen nebo naten hodnot otzkou jednoho pkazu.
Jako high-level funkce je tu monost uloit do konfiguranho souboru nco jako "podpis" a z nj potom poznat, jestli program b na tomto potai poprv nebo ne.
Zajmav triky: spojov seznamy s promnnou velikost prvk, prce s etzci a hledn "zaruen uniktnch" informac v potai.

PAS Paleta 2 - jednotka pro prci s barevnou paletou ve 256barevn grafice: ten a nastavovn jednotlivch barev i celch palet, zmny jasu (0..200%), plynul pechody jedn palety do druh, rotace palety, vyhledvn nejbli barvy a monost pepnout grafickou kartu do 8bitovho reimu (kdy se rozsah RGB sloek zjemn ze standardnch 0..63 na 0..255) a zpt.
Zajmav triky: prce s paletou pes porty grafick karty, zbytek je o cyklech, potn procent a v ppad hledn nejbli barvy o Pythagorov vt.

PAS Need For Speed UnderPascal - obsahuje rzn variace na Move (32 a 64bitov varianta) a Fillchar (32bitov; pidn jet Fillword, kter vypluje wordem msto bytem) a rychl celoseln sinus a cosinus. Zrychlen oproti standardnm procedurm je pomrn vrazn. Dle tu najdete vylepenou verzi datovho typu mnoina (zvldne a 65535 prvk) a vylepenou sprvu pamti (Getmem a Freemem).
Zajmav triky: 32bitov instrukce v Asm a koprovn dat pes koprocesor.

PAS Chybov hlky - obsahuje proceduru pro pohodln vypisovn chybovch hlen s monost ukonit program, pokraovat nebo se zeptat uivatele (pro jakkoli textov i grafick reim, pi kompilaci se d zvolit mezi etinou a anglitinou) a dle esk chybov hlky pro jednotku XMS, standardn promnnou Doserror a funkci IOresult.
Zajmav triky: vpis hlky na obrazovku pomoc slueb Dosu (take nezle na reimu obrazovky a nejsou poteba dn dal jednotky).

PAS Disk - obsahuje objekt Turbosoubor na bufferovan ten ze soubor (asi nejuitenj metody jsou "naje za..." a "ti do..."), rzn vci pro prci se soubory (koprovn, mazn, test existence, pejmenovn na windowsovsky dlouh jmno, jednoduch ifrovn, vytvoen seznamu nebo stromu adres...), nkolik diagnostickch procedur (existence a vlastnosti diskovch jednotek a mechanik) a pr dalch drobnost (operace se jmny soubor, reset potae, hromadn nastaven atribut apod.).
Zajmav triky: prce se soubory, dynamick spojov struktury, insertsort, rekurze, vyuit funkc Dosu a Biosu.

PAS etzce - funkce pro operace s etzci: pevod nejrznjch selnch typ na etzec a etzc na sla, zarovnvn a oezvn etzc, koprovn sek, pevod etzc na velk nebo mal psmena, rozklad etzce na slova nebo na dky, pevody esk diakritiky nebo obecn nahrazovn jednch znak druhmi, etzce neomezen dlky apod..
Zajmav triky: prce s etzci a spojovmi seznamy, obas trochu Asm a dost divokho pstupu ke stringm.

PAS Texty 2 - pepnut do textovho reimu 8025, ovldn textovho kurzoru, nastaven znakov sady a dle rzn procedury pro vstup na obrazovku pmm zpisem do videopamti: psan znaku a etzce, smazn dku, sloupce, bloku dk nebo cel obrazovky, barven psma, zobrazovn slic a psmen ve stylu sedmisegmentovho displeje. Ve pro fyzickou i virtuln obrazovku. Nepouv jednotku CRT.
Zajmav triky: pstup k obrazovce pes ukazatel na absolutn promnnou a spousta Asm.

PAS Textov menu - jednoduch objekt pro obsluhu nabdek v textovm reimu. Umouje udlat menu s npovdou ke kad poloce a e interakci s uivatelem.
Zajmav triky: asi nic, nejsloitj pouit algoritmus je hledn maxima v poli.

PAS Nhoda - Random s longintovm rozsahem, x-stnn a procentov kostka, funkce, kter vrac nhodn slo ze zadanho rozsahu a automatick Randomize pi startu.
Zajmav triky: jednoduch aplikace metody plen intervalu; zbytek je jenom o pouit standardn funkce Random.

Zbytky a trosky

Star a pekonan jednotky, kter u nepouvm a nebudu vylepovat. Vechny je najdete v ZIP tomhle balku (196 kB). Nerum za funknost - stahujete je na vlastn nebezpe a na bugreporty u asi nebudu reagovat.

Konstanty - rzn konstanty, znaky (ipky...), pomocn mnoiny znak (nap. pro rychl roztdn vstupu z klvesnice) apod.
Zajmav triky: asi nic.

Klvesy - obsluha klvesnice. Pro bufferovan ten pouv sluby Dosu, pro okamit ten stisk jednotlivch klves m vlastn peruen. Vlastn een bufferovanho vstupu jako verze 2 ovem jet nem.
Zajmav triky: jak napsat vlastn Keypressed a Readkey, jak st shifty a spol. a jak detekovat vc souasn stisknutch klves.

PCX - natn a ukldn obrzk mezi obrazovkou a soubory typu PCX. Spolupracuje s jednotkami VGA a VESA, pepn se to direktivou pi kompilaci.
Zajmav triky: nic moc, radi si sthnte Images - tam je to lp popsan a implementovan bez chyb :-).

Paleta - star, ale univerzlnj jednotka pro prci s paletou. Funguje s 16 i 256barevnmi paletami, ale pro 256barevn nem tolik funkc jako Paleta 2.
Zajmav triky: viz Paleta 2, plus prce s 16barevnou paletou.

SVGA 4.1 - upraven jednotka pro 256barevnou grafiku z knihovny SVGA 4 od ASP/VR Group. Podrobn seznam prav je ve zdrojku.

VESA - dal vvojov fze jednotky SVGA. Ubyly speciln funkce pro pmou obsluhu grafickch karet rznch znaek, zstal jenom obecn standard VESA. Naopak pibyla spousta novch funkc a optimalizac.

Grafika - rzn grafick procedury, nap. ukldn a natn cel obrazovky (do konvenn pamti (64048016) nebo na disk (univerzln, ale nkdy pomal)), vypnut nebo zapnut obrazovky, rychl Getimage a Putimage pro reim 64048016, procedury pro psan vlastnmi fonty (rastrov, 88 pixel, kresl se Putpixelem) a dal.

My - jednotka pro zkladn obsluhu myi. Obsahuje mj. nkolik integrovanch grafickch kurzor (kreslench pomoc ar, d se nastavit barva i velikost). Funguje ve vech BGI reimech.
Zajmav triky: pouit promnnch typu procedura a zklady prce s my.

Woknows - prvn verze moj GUI jednotky. Pracuje v BGI grafice, obsahuje mnohem mn objekt a funkc ne Woknows 3 a u nerum za provozuschopnost.

Woknows 3 - posledn verze, kter m jet texty zapsan pmo ve zdrojku. Pro VESA grafiku.

Spout VGA - sta ji pout v programu a o start grafickho reimu se nemuste dle starat (BGI, 64048016).
Zajmav triky: pilinkovn grafickho ovladae do programu (u dn *.BGI soubory!).

Spout SVGA - tot, ale spout grafiku SVGA (SVGA256.BGI). Skld se ze dvou jednotek (jedn pro reim 640480256 a druh pro 800600256) a OBJ souboru s grafickm ovladaem.
Zajmav triky: viz ve + pouit nestandardnho BGI ovladae (InstallUserDriver a spol.).

Zvuky - vlastn Sound a Nosound (Asm, nepotebuje CRT), jedna ppac procedura a nevyzkouen pokus o objektov pehrva melodi, ve pro intern PC speaker. Nezamujte se stejnojmennou novj jednotkou, kter pracuje se zvukovou kartou.

Texty - jednotka pro textov vstup, prakticky jenom aplikace standardnch funkc z CRT.

Global - konstanty (kdy grafickch a textovch reim) a promnn (stav monitoru, myi, klvesnice atd.), kter slou k vmn informac mezi jednotkami navzjem a programy. Nkter z pedchozch jednotek ji vyuvaj.