PCPROG.5

05 Jan 1995 - 02 Oct 1995

Topics

  1. algoritmi (106)
  2. comment (2)
  3. ms.dos (27)
  4. windows (332)
  5. asembler (203)
  6. basic (228)
  7. jezici (126)
  8. pascal (1085)
  9. cccc (546)
  10. cpp (117)
  11. clipper (1048)
  12. baze.podataka (194)
  13. fox (231)
  14. cavo (192)
  15. razno (593)

Messages - pascal

pascal.102 postmast,
From: Arpadffy.Zoltan@f107.n111.z38.setgate.setnet.co.yu (Arpadffy Zoltan) Subject: kbd. buffer Date: Tue, 17 Jan 1995 12:01:50 hi :-) Imam jedan problem. Ima li neko resenje... Potrebno je da nekom programu podturim (nekim interaptom ) neke karaktere tako da taj program detektuje kao da je stiglo sa tastature, stim da mi tastatura i nadalje bude pristupna. Bez panike... Nije rec o virusu nego o komunikacionom programu. Taj interapt bi sa COM porta skidao karaktere ali problem je dati programu. Napominjem nemam puno iskustva sa interaptima, ovo je doslo silom prilike. cu Zoli ... Sorry, the Dog ate my Blue Wave packet. * Origin: Prometheus BBS - The Northern Frontier - SETNET (38:111/107)
pascal.103 postmast,
From: Amir.Zolic@f115.n103.z38.setgate.setnet.co.yu (Amir Zolic) Subject: pascal Date: Mon, 23 Jan 1995 00:01:03 -=> Quoting "Vlada Biskupljanin" to All <=- "B> From: "Vlada Biskupljanin" <vgenije@sezam.UUCP> "B> Newsgroups: yu.prog.pascal "B> Organization: SEZAM Beograd, 011 648-422 "B> Kako da izbegnem da me ne izbacuje iz programa ako na pitanje za neku "B> varijablu tipa real korisnik ogovori sa nekim slovom? "B> Ocu da kazem kako da ga vratim na to isto pitanje ako je pogresio sa "B> numerickim formatom? "B> pozdrav Ovako nesto bi trebalo da radi. var r : real; error : integer; begin { ... } repeat {$I-} readln(r); {$I+} error := IOResult if (error <> 0) then WriteLn('Pogresan unos. Unesite ponovi...'); until (error = 0) { ... } end. Za vise podataka pogledaj help za {$I} direktivu i funkciju IOResult. Pozdrav Amir * Origin: Atlantis BBS 22-05 tel. 3225-548 ■Belgrade■ (38:103/115)
pascal.104 pedjak, -> #102, postmast
> Potrebno je da nekom programu podturim (nekim interaptom ) > neke karaktere tako da taj program detektuje kao da je > stiglo sa tastature, stim da mi tastatura i nadalje bude > pristupna. AH = 05h CH = scan code CL = ASCII character INT 16h Return: AL = 0 success AL = 1 buffer full Samo pazi: neki jako stari BIOS-i ne podržavaju ovu stvar. Tek sa pojavom proširenih tastatura, javlja se i ovaj poziv.
pascal.105 janko, -> #94, vgenije
pedjak: > var > a:real; > begin > repeat > (*I-*) > readln(a); > (*I+*) > until ioresult=0; > end. > vgenije: >> sigurno radi, pa prilagodi svoj program prema tome.. Koju >> ti poruku inace javlja program..? > > Tvoj program je isto izbacivao na onom mestu readln(a) kao > u stilu nije dobar odgovor zbog formata... > Od druga sam uzeo ovaj primer i on radi mada logicki > gledano trebao je i tvoj: > uses dos,crt; > var a:integer; > s:string > begin > repeat > readln(a); > str(a,b); > until ioresult=0; > end. Prvi program javlja grešku kada se ukuca alfanumerik jer umesto (*I-*) i (*I+*) treba da stoji (*$I-*) i (*$I+*) Drugi program bi takođe trebalo da javlja istu grešku iz istih razloga, osim ako nisi u međuvremenu promenio podešavanja na Compiler Options meniju. Takođe, drugi program besmisleno troši string s, zatim, b nije nigde deklarisano, testiranje na ioresult nema smisla ako je I opcija ugašena i sl. Međutim, moguće je prvo učitavati u string a zatim ga konvertovati sa val, pa da se ne izaziva ran tajm greška, ali program izgleda malo drugačije. Sve u svemu, imaš još puno puno puno toga da učiš...
pascal.106 zeljkoj, -> #98, postmast
> Evo ti nesto sto je meni pomoglo: Hvala.
pascal.107 mmitrovic, -> #97, postmast
Ů█▀█Ţ Function NReadLn (len : byte) : Integer; ... Ů█▀█Ţ end; š function NReadLnć Oh my god! :) Kako te nije mrzelo da pišeš tu funkciju kad $I- i IOResult rešavaju stvar. Osim toga ova funkcija neće raditi ako se uradi redirekcija pri startovanju programa jer koristi CRT modul.
pascal.108 inikolic,
Vidim da se ovde razvila poprilicna polemika o ANSI-ju i sta modem salje. Ja imam drugo pitanje . Sta modem salje kada je u pitanju ACSII. Konkretno me zanima kako da se pomeri za red gore, kako da se kursor pozicionira u gornji levi ugao, kako da se izbrise ekran. Dolaze u obzir i sve ostale sekvence. Znaci cist ASCII, nema ANSI. Ivan
pascal.109 postmast,
From: Aleksandar.Nikov@f131.n108.z38.setgate.setnet.co.yu (Aleksandar Nikov) Subject: pascal Date: Tue, 24 Jan 1995 09:28:00 -=> Quoting "Zeljko Jovanovic" to All <=- "J> Kad smo vec kod kodova :)) interesuje me sta komunikacioni program "J> posalje "drugoj strani", recimo Sezamu :), kada pritisnem neku od "J> strelica ili neki drugi taster koji nema svoj ASCII kod? U ASCII -ju mislim da ne salje nista. A u ANSI salje kombinaciju kodova. Pr. za levu strelicu salje ESC [ A. ĆĆ Anikov žž ... Taglines are irrelevant. You will be assimilated into the VEGA BBS * Origin: SetNet * VEGA BBS * Skopje * +389-91-225-280 (38:108/131)
pascal.110 postmast,
From: Aleksandar.Nikov@f131.n108.z38.setgate.setnet.co.yu (Aleksandar Nikov) Subject: pomoc (chr) Date: Tue, 24 Jan 1995 10:12:00 * Vo porakata za All, Stevan Dejanovic reche: > Da li neko moze da mi da savet kako da ubacim svoje > fontove u svoj program > BTW radim u Pascalu 6.0 uses Graph,Crt; var Driver, Mode : Integer; TestFont : Integer; c : char; begin TestFont := InstallUserFont('triplex.chr'); if GraphResult <> grOk then begin WriteLn('Greska u instaliranju'); ReadLn; end; Driver := Detect; Mode := 0; InitGraph(Driver, Mode, 'egavga.bgi'); if GraphResult <> grOk then Halt(1); SetTextStyle(Testfont, HorizDir, 9); OutTextxy(100,100,'Novi font'); c:=Readkey; Closegraph; end. ĆĆ Anikov žž ... Read messages, not taglines. * Origin: SetNet * VEGA BBS * Skopje * +389-91-225-280 (38:108/131)
pascal.111 vitez.koja, -> #62, niklaus
#=> ps Nažalost (po sve nas koji "trpimo" YUSCII) C to #=> nema, inače bi bilo manje Ima :) janko je slao detalje, čini mi se čak i jedan program u tom fazonu.
pascal.112 postmast,
From: Sebastian.Adanko@f107.n111.z38.setgate.setnet.co.yu (Sebastian Adanko) Subject: Real2Int Date: Mon, 23 Jan 1995 03:28:44 Hail to you, oh great Predrag of the house Supurovic ! >rekoh,nemam volje.Moje potrebe zadovoljava.BTW,kakve provere da uvodim? >(cisto da znam ako pravim nesto ozbiljnije) PS> Kad god nesto pravis, prvi do kraja. Tako ces steci naviku. Pokusavam,ali ovakve stvari pravim samo dok mi trebaju. ;) PS> Mislio sam na provere da li je unesena vrednost u dozvoljenom opsegu i PS> slicno... Aha,pa sto ne kazes odma ;) Znas kako,ovaj put me MRZELO ;) Naime,kad unosis neku hex vrednost,on moze da istrpi cetiri-pet-sest,ne secam se koliko cifara,a blesavo mi je da ogranicavam binarni broj na isto toliko cifara,a da pisem rutinu za proveru velicine broja u odnosu na sistem u kojem je,to me je jaaaaako mrzelo ;) pa sam taj deo izostavio. I uglavnom,sve sto fali je zbog moje lenjosti ;)))) PhuZZY L0GiK ... He who has a shady past knows that nice guys finish last. * Origin: Prometheus BBS - The Northern Frontier - SETNET (38:111/107)
pascal.113 postmast,
From: Varga.Mihály@f111.n111.z38.setgate.setnet.co.yu (Varga Mihály) Subject: Re: pascal Date: Mon, 23 Jan 1995 06:30:01 "B> Kako da izbegnem da me ne izbacuje iz programa ako na pitanje za neku "B> varijablu tipa real korisnik ogovori sa nekim slovom? "B> Ocu da kazem kako da ga vratim na to isto pitanje ako je pogresio sa "B> numerickim formatom? "B> pozdrav "B> Probaj sa: {$I-} {iskljucis proveru I/O} repeat { a ovde lepo ispitas da lije ispravno uneto ono sto ves treba da se unese} { koristi whereXY pa mu javi da je pogresno unet podatak i onda ga vratis} { lepo na zapamceno mesto } until IOresult=0 {$I+} {vratis nazad I/O proveru} Mishi. PS: Ako ti ovo nije dovoljno javi, posto je sad jutro 6:30 i zurim na posao. A i 'skocice' Ti u pomoc mislim i ostali. * Origin: {SETNET} TĺKţDĺ Inc. BBS 64-572 Zrenjanin (38:111/111)
pascal.114 postmast,
From: Stevan.Dejanovic@f119.n111.z38.setgate.setnet.co.yu (Stevan Dejanovic) Subject: pomoc (chr) Date: Mon, 23 Jan 1995 12:00:06 JS> JS> Zdravo. Ako ti treba pomoc, javi se ponovo, ali malo preciznije: o JS> kakvim fontovima se radi, da li radis u grafickom ili text modu, itd... JS> JS> Jole :Q... JS> Radim u grafickom modu i za pravljenje fontova koristio sam font editor (samo za chr fontove i za paskal) neznam kako da navedem u programu koje fontove treba da cita. => Mad Dog <= ... SENILE.COM found . . . Out Of Memory . . . * Origin: ECSTASY BBS * Indjija * 022 53 218 * SETNet: (38:111/119)
pascal.115 postmast,
From: markom@setnet.co.yu (Marko Milivojevic) Subject: Re: pascal Date: Sun, 29 Jan 1995 02:21:49 -=> Reply to: "Kristijan Lazic" <=- "L> Probao sam sve one parametre iz tabele, medutim jock. ESC[0m Radi provereno ;-) -=> MM <=- ... Hapiness is... CONNECT 19600/ARQ/HST/HST/V42BIS * Origin: SETNet - Exodus, Beograd #137-477# from 22:00 to 09:00 (38:103/130)
pascal.116 niklaus, -> #111, vitez.koja
Subject: Re: '(*' '*)' menjaju 'š' 'ć' u paskalu. A u Cu? (:> #=> ps Nažalost (po sve nas koji "trpimo" YUSCII) C to (:> #=> nema, inače bi bilo manje (:> (:> Ima :) janko je slao detalje, čini mi se čak i jedan program u (:> tom fazonu. Ako može, daj da izvšimo jezičku reformu i - svi pređemo na YUSCII. (: (: Sean :) ps Nemojte po glavi! (:
pascal.117 postmast,
From: broker@setnet.co.yu (Predrag Supurovic) Subject: pascal Date: Sat, 28 Jan 1995 15:14:00 >From: "Zeljko Jovanovic" <zeljkoj@sezam.UUCP> >Uz pomoc programa MONITOR iz Procomma za Windows moguce je >posmatrati kodove svih karaktera koji se primaju ili idu na com port. Radi li to pod DOS-om? Ja imam potrebu da utvrdim koje kodove jedan DOS program salje modemu... * Origin: Oreska BBS, Uzice = SF BIBLIOTEKA = SETNet: (38:101/101)
pascal.118 zeljkoj, -> #117, postmast
> Radi li to pod DOS-om? Ja imam potrebu da utvrdim koje kodove > jedan DOS program salje modemu... Ne, MONITOR je deo Procomma za Windows.
pascal.119 matan,
Kakvi su to ogromni .$$$ fajlovi koji mi se javljaju po TP direktorijumima?
pascal.120 andrejt, -> #119, matan
Q> Kakvi su to ogromni .$$$ fajlovi koji mi se javljaju po TP Q> direktorijumima? TP-ovi temp fajlovi. Mozes slobodno da ih obrises. Meni to ostavi kad resetujem komp. usred TP-a.
pascal.121 zeljkoj, -> #119, matan
> Kakvi su to ogromni .$$$ fajlovi koji mi se javljaju po TP To su neki temp fajlovi koje možeš da obrišeš. Najverovatnije si na neregularan način prekinuo rad TP-a (reset ili sl.)
pascal.122 inikolic,
Zar je moguce da nema nikoga da mi odgovori na temu ASCII-a u modemskoj komunikaciji. Ponovicu jos jednom, jer se mozda prva poruka provukla negde. Pitanje je kako da se u ASCII-u preko modema generise pomeranje kursora po ekranu, da se kursor pozicionira na odredjeni deo ekrana, da se obrise ekran... i sve druge sekvence koje mogu doci u obzir. IVAN
pascal.123 kum.zoki, -> #119, matan
You --> Kakvi su to ogromni .$$$ fajlovi koji mi se javljaju po You --> TP direktorijumima? Slobodno ih obrisi !!!
pascal.124 vlador, -> #119, matan
> Kakvi su to ogromni .$$$ fajlovi koji mi se javljaju po TP > direktorijumima? Briši! :) To su privremeni fajlovi koji ostaju ako neregularno izađeš iz TPa (restrikcija, reset). --- ■ VLADOR ■ Sine, ne otvaraj prozor! Baka ce da odleti!
pascal.125 dcolak, -> #122, inikolic
│ Zar je moguce da nema nikoga da mi odgovori na temu ASCII-a u modemskoj │ komunikaciji. Ponovicu jos jednom, jer se mozda prva poruka provukla negde. │ Pitanje je kako da se u ASCII-u preko modema generise pomeranje kursora po │ ekranu, da se kursor pozicionira na odredjeni deo ekrana, da se obrise │ ekran... i sve druge sekvence koje mogu doci u obzir. Preko ASCII nikako. Kraj priče ;) Sledge DAMMIR!
pascal.126 vitez.koja, -> #122, inikolic
#=> Pitanje je kako da se u ASCII-u preko modema generise #=> pomeranje kursora po ekranu, da se kursor pozicionira na #=> odredjeni deo ekrana, da se obrise ekran... Možeš da pomeriš kursor ulevo (backspace, ASCII 8), i eventualno da orbišeš ekran (form feed, ASCII 12). Takođe možeš da pomeriš kursor na početak reda (carriage return, ASCII 13) i u sledeći red (line feed, ASCII 10). To je sve što može da se uradi sa ASCIIjem.
pascal.127 janko, -> #125, dcolak
>│ Zar je moguce da nema nikoga da mi odgovori na temu >│ ASCII-a u modemskoj komunikaciji. Ponovicu jos jednom, >│ jer se mozda prva poruka provukla negde. Pitanje je kako >│ da se u ASCII-u preko modema generise pomeranje kursora >│ po ekranu, da se kursor pozicionira na odredjeni deo >│ ekrana, da se obrise ekran... i sve druge sekvence koje > mogu doci u obzir. > > Preko ASCII nikako. Kraj priče ;) Daleko od toga "nikako." Ne širi dezinformacije. Vidi drugu poruku.
pascal.128 janko, -> #122, inikolic
> Zar je moguce da nema nikoga da mi odgovori na temu > ASCII-a u modemskoj komunikaciji. Ponovicu jos jednom, jer > se mozda prva poruka provukla negde. Pitanje je kako da se > u ASCII-u preko modema generise pomeranje kursora po > ekranu, da se kursor pozicionira na odredjeni deo ekrana, > da se obrise ekran... i sve druge sekvence koje mogu doci > u obzir. Pomoću čistog ASCII-ja se stvarno može štošta uraditi, čak, mogu se napraviti "animirane" sekvence. Sezam, recimo, filtrira i ovakve sekvence, inače bi recimo, korisnik u rezimeu mogao imati npr. "vozić" koji se preveze sa kraja na kraj ekrana, pred očima čitača rezima, čak i bez ANSI drajvera. Vrlo korisno, naravno. ;>> ASCII kodovi 0-31 i 127 su tzv. "kontrolni karakteri." Dizajnirani još u vreme kada se za konzole koristio teleprinter, nisu zamišlejni tako da daju sve pogodnosti jednog, recimo, ekranskog editovanja, ali mnogo toga mogu da urade, u zavisnosti od toga koliko ih određeni sistem podržava (jer razni proizvođači su do različite mere podržavali ove kontrolne znake). Najbitniji znaci (decimalno) su: 8 - Backspace 9 - Tab 10 - Line Feed 12 - Form Feed 13 - Carriage Return Na sistemima koji podržavaju ove znake, mogu se uraditi razni "efekti." Komunikacioni programi obično, u no-ansi emulacijama, ako imitiraju "prazan PC" interpretiraju ove znake ovako: 8 - Pomeranje kurzora jedno mesto nazad (*) 9 - Ispisivanje određenog broja razmaka, tako da se kurzor pozicionira na sledeću "tab stanicu." 10 - Pomeranje kurzora jedan red niže, bez pomeranja na početak (**) 12 - Brisanje ekrana (ili, samo, pozicioniranje na (0,0)) (***) 13 - Pomeranje kurzora na početak istog reda (****) Zvezdice znače da se ova ponašanja kod određenih programa mogu konfigurisati jer se svi sistemi ne pridržavaju ASCII specifikacije. PC se pridržava. Evo i primera jedne "animacije", napisanog na Turbo Pascalu. Ako ovo neko u današnje vreme 3d-rej-trejs-renderinga-na-kućnim-igračkama smatra ozbiljnom temom, neka mu je sa srećom. :)) ------------- (* primer plain ASCII "animacije" Janko 1995. *) uses crt; (* primer sekvence za animaciju koja koristi PLAIN ASCII *) const niz : string = 'oo#'#8#8#8' oo#'#8#8#8' oo#'#8#8#8' oo#'#8#8#8' oo#' + #8#8#8' oo#'#8#8#8' oo#'#8#8#8' oo#'#8#8#8' oo#'#8#8#8' oo#'#8#8#8 + ' oo#'#8#8#8' oo#'#8#8#8' oo#'#8#8#8' oo#'#8#8#8' oo#'#8#8#8' oo#' + #8#8#8' oo#'#8#8#8' oo#'#8#8#8' '#10#8#8#8'#oo '#8#8#8#8#8 + '#oo '#8#8#8#8#8'#oo '#8#8#8#8#8'#oo '#8#8#8#8#8'#oo '#8#8#8#8#8 + '#oo '#8#8#8#8#8'#oo '#8#8#8#8#8'#oo '#8#8#8#8#8'#oo '#8#8#8#8#8 + '#oo '#8#8#8#8#8'#oo '#8#8#8#8#8'#oo '#8#8#8#8#8'#oo '#8#8#8#8#8 + '#oo '#8#8#8#8#8'#oo '#8#8#8#8#8'#oo '#8#8#8#8#8'#oo '#8#8#8#8#8 + '#oo '#8#8#8#8#8'#oo '#8#8#8#8#8'#oo '#8#8#8#8#8'#oo '#8#8#8#8#8 + '#oo '#8#8#8#8#8'#oo '#8#8#8#8#8'#oo '#8#8#8#8#8'#oo '#8#8#8#8#8 + '#oo '#8#8#8#8#8'#oo '#8#8#8#8#8'#oo '#8#8#8#8#8'#oo '#8#8#8#8#8 + '#oo '#8#8#8#8#8'#oo '#8#8#8#8#8'#oo '#8#8#8#8#8'#oo ' ; var i : integer; begin clrscr; writeln('Pritisni neko dugme za početak'); i:=ord(readkey); for i:=1 to length( niz ) do (* najobičnija petlja *) begin delay( 400 ); (* da bi se animacija videla, znaci moraju da sporo pristižu *) write( niz(. i .) ); (* jedan znak u svakom prolazu *) end; end.
pascal.129 postmast,
From: glisin@galaxy.fon.bg.ac.yu (Ivan Glisin) Subject: Re: pascal Date: Sat, 4 Feb 1995 18:59:25 GMT "Igor Nikolic" <inikolic@sezam.UUCP>: >> Zar je moguce da nema nikoga da mi odgovori na temu ASCII-a u modemskoj Pa zar ne bese ovde ostavljen spisak ANSI i VT100 sekvenci? To ti resava problem oko upravljanja terminalom preko modema, naravno ako sa druge strane ceka ANSI ili VT100 (ili jaci) terminal. To su obicne ESC sekvence koje se samo prinuju na odredisni terminal i to je sve. ________________________________________ Ivan Glisin (glisin@galaxy.fon.bg.ac.yu)
pascal.130 kenza,
Hi! Imali neko f-je za pustanje audio cd-ova na cd rom-u? Onih par najjednostavnijih. Poz, Kenza
pascal.131 dcolak, -> #127, janko
│ Daleko od toga "nikako." Ne širi dezinformacije. Vidi drugu poruku. Kako da pozicioniraš kursor na 0,0 ? Print i šta? Sledge DAMMIR!
pascal.132 inikolic,
Zahvaljujem na pomoci oko ASCII-a . Samo ima jos jedna ideja. brisanje ekrana moze da se ostvari i skrolovanjem ekrana tako sto se posalje 25 puta #10 IVAN
pascal.133 janko, -> #131, dcolak
> Kako da pozicioniraš kursor na 0,0 ? Print i šta? write(#12) To sam već bio napisao, ne paziš na času, sedi, jedan. ;>
pascal.134 dcolak, -> #133, janko
│> Kako da pozicioniraš kursor na 0,0 ? Print i šta? │ │ write(#12) │ │ To sam već bio napisao, ne paziš na času, sedi, jedan. ;> Profesore, da li si ti to proverio. Nešto mi se čini da ne radi... Sledge DAMMIR!
pascal.135 andrejt,
Iz teme BASIC poruka 5.46. Q> Izasao sam iz stosa, pretpostavljam da bi trebalo samo: Q> const imena=('Mile','Pera','Laza'); Ovo nije moguce u TP-u. Ono sto je moguce je ono sto si napisao a to je array sa predefinisanom (al' sam se izrazio :)) vrednoscu. Cini mi se da je ovde bila neka rasprava o ovome prosle godine.
pascal.136 inikolic,
Da li je moguce, i kako da se OBJ ulinkuje u PASCAL. Ali sta je fora: na primer u ASM-u se napravi ceo program i napravi se OBJ i onda da se taj program uvuce u PASCAL, znaci kao da se pozove taj program u PASCAL-u, stim sto bi trebao da on bude uvucen u PASCAL program. Znaci da se program startuje iz PASCAL-a i da bude u njemu. IVAN
pascal.137 inikolic,
kako da se u ASCII-u kursor pozicionira na koordinate 0,0, u pitanju je modemska komunikacija. IVAN
pascal.138 vitez.koja, -> #134, dcolak
#=> Profesore, da li si ti to proverio. Nešto mi se čini da #=> ne radi... Radi, radi. Ali samo ponegde ;))) Sezam na CLS reaguje slanjem ASCII 12. Ako ti radi prozvana komanda, onda funkcioniše. Naravno, ANSI drajver za PC konzolu ne priznaje ovakve arhaizme :)
pascal.139 vitez.koja, -> #137, inikolic
#=> kako da se u ASCII-u kursor pozicionira na koordinate #=> 0,0, u pitanju je modemska komunikacija. Ama, ti uopšte ne slušaš šta se priča :( Ako hoćeš da pozicioniraš kursor (ASCII kursor??) na 0,0 I PRITOM OBRIŠEŠ EKRAN, pošalješ ASCII 12. Ako nećeš da brišeš ekran, a nalaziš se u prvoj (odnosno, nultoj) koloni ekrana, pošalješ ASCII 13. Ako nećeš da brišeš ekran, a ne nalaziš se u prvoj koloni ekrana, ne možeš da uradiš šta si naumio.
pascal.140 dejanr, -> #136, inikolic
>> Da li je moguce, i kako da se OBJ ulinkuje u PASCAL. Moguće je, koristi se opcija {$Limefajla}. Međutim, mora se dodati i malo "paskalskih" deklaracija funkcije. Ovo sam dosta davno radio pa se baš mnogo ne sećam kako se prenose argumenti itd, ali se svakako sećam da se može uraditi i da u dokumentaciji ima primer :)
pascal.141 inesic, -> #135, andrejt
> Q> const imena=('Mile','Pera','Laza'); > > Ovo nije moguce u TP-u. Ono sto je moguce je ono sto si napisao > a to je array sa predefinisanom (al' sam se izrazio :)) > vrednoscu. Cini mi se da je ovde bila neka rasprava o ovome > prosle godine. Ovo se piše kao const imena:array[3] of string[4]=('Mile','Pera','Laza');
pascal.142 vlador, -> #136, inikolic
> on bude uvucen u PASCAL program. Znaci da se program startuje iz PASCAL-a i > da bude u njemu. Ajde pročitaj šta si napisao pa pokušaj to reći u dve rečenice. :) Ovako je teško zaključiti šta si _tačno_ tražio. --- ■ VLADOR ■ :) :)) :))) Ko se zadnji smeje, najsladje se smeje!
pascal.143 mibak, -> #136, inikolic
> Da li je moguce, i kako da se OBJ ulinkuje u PASCAL. Ali sta je Isto sam hteo da pitam mudre glave. Koristim MASM61 i prevodim uz direktivu .pascal ali Turbo Paskal mi javlja invalid format OBJ?
pascal.144 pedjak, -> #136, inikolic
> Da li je moguce, i kako da se OBJ ulinkuje u PASCAL. Ali sta je > fora: na primer u ASM-u se napravi ceo program i napravi se OBJ i > onda da se taj program uvuce u PASCAL, znaci kao da se pozove taj > program u PASCAL-u, stim sto bi trebao da on bude uvucen u PASCAL > program. Znaci da se program startuje iz PASCAL-a i da bude u njemu. Može. Potrebno je samo taj tvoj program prevesti u modelu tpascal i pri tome ulaznu proceduru u program označiti kao public. Zatim na početku paskal programa kažeš (*$L ImeOBJfajla*) procedure ImeUlazneProcedure;external;far; i to je to.
pascal.145 andrejt, -> #141, inesic
Q> Ovo se pise kao Q> const imena:array[3] of string[4]=('Mile','Pera','Laza'); Ma Ok. :) Ali to nije ono sto je on hteo (pogledaj na sta sam odgovarao). On je hteo konstantu a ne ovo sto si ti napisao i sto nije konstanta jer moze da se menja.
pascal.146 kriss, -> #144, pedjak
˙˙ (*$L ImeOBJfajla*) ˙˙ procedure ImeUlazneProcedure;external;far; Ja svojevremeno nisam dodavao FAR na kraju i radilo je. Da li siguran da je obavezno? (u smislu da može da proguta, ali da posle može da pravi i probleme)
pascal.147 inesic, -> #145, andrejt
> Ma Ok. :) Ali to nije ono sto je on hteo (pogledaj na sta sam > odgovarao). On je hteo konstantu a ne ovo sto si ti napisao i > sto nije konstanta jer moze da se menja. Pa niko ga i ne bije po ušima da je menja. Ja sam pokazao način kako da u memoriji rezerviše tačno onoliko prostora koliko mu treba, a to što može da se menja ne znači da i mora.
pascal.148 inikolic, -> #139, vitez.koja
Poznato mi je da ce da u TM-u #12 da izbrise ekran i da pozicionira kursor na 0,0 ali u MTE- on reaguje kao da je pristigao #10. IVAN
pascal.149 pedjak, -> #146, kriss
> Ja svojevremeno nisam dodavao FAR na kraju i radilo je. Da li > siguran da je obavezno? (u smislu da može da proguta, ali da posle > može da pravi i probleme) Zavisi. Ako je asm procedura prevedena kao FAR, onda i u paskal programu mora stajati far, inače za NEAR ne treba da stoji ništa. Ova informacija u stvari govori samom kompajleru kakav skok da izvrši pri pozivu rutine (far ili near)
pascal.150 kriss, -> #149, pedjak
˙˙ Zavisi. Ako je asm procedura prevedena kao FAR, onda i u ˙˙ paskal programu mora stajati far, inače za NEAR ne treba da ˙˙ stoji ništa. Ova informacija u stvari govori samom kompajleru ˙˙ kakav skok da izvrši pri pozivu rutine (far ili near) To za FAR je jasno, ali sam mislio da li paskal vrši neke intervencije na samoj proceduri (.OBJ) ako mu kažeš FAR, a procedura je NEAR? :)
pascal.151 bigbrada, -> #146, kriss
*>> Ja svojevremeno nisam dodavao FAR na kraju i radilo je. Da li *>> siguran da je obavezno? (u smislu da može da proguta, ali da *>> posle može da Može 'ladno da proguta, a što se tiče problema ja ih još nisam imao (i nadam se da će tako i da ostane :) The.Great
pascal.152 pedjak, -> #150, kriss
> To za FAR je jasno, ali sam mislio da li paskal vrši neke > intervencije na samoj proceduri (.OBJ) ako mu kažeš FAR, a procedura > je NEAR? :) Ne, ali će doći do zakucavanja mašine prilikom povratka iz rutine, jer će na steku ostati dva bajta više.
pascal.153 vgenije,
Skinuo sam ono programce za pravljenje door-ova i za prelazak pascal programa u door ali mi nije jasno kako da koristim ni jedan ni drugi program! Npr napisao sam program.Kako da ga presaltujem u door pomocu onog programa koji se nalazi u direktorijumu /bbs? Ako gore pomenuto nije moguce kako da napisem program pomocu one biblioteke example.pas pozdrav
pascal.154 sbrk,
Naleteo sam na neku biblioteku potprograma za TP koja koristi neki STAKDUMP.OBJ koji (naravno) nije priložen :( To je napisao neki Kim Kokkonnen i nalazi se na nekom TPro Bonus Disku ?! Ima li neko ovo?
pascal.155 dejanr,
Jeste li čuli za Delphi, zvani interno Borland Pascal 8.0? Nekoliko pestih pitanja: ========== pascal/turbo #4706, from abailey, 8680 chars, Fri Feb 17 21:33:25 1995 Comment to 4705. ---------- >I had been under the impression that Delphi was more of a code generator >and less of a compiler. It's both. The visual part lets you drag components around on a form. Once you get them the way you want, you click on the code window and you have the basic code written for you. Just add the meat of the application. Then when the code is right you compile it just like BP7 and you have an executable EXE You could take your current Turbo Pascal for Windows and compile it too, if you didn't want to fool around with the forms. But that's no fun! Here's a descriptive doc from Borland on Delphi. Last update 1/16/95. 1. What is Delphi? A) Delphi is an unreleased high performance visual client/server Rapid Application Development (RAD) tool. A portion of the Delphi technology was demonstrated at the BIC conference in Orlando on June 7, and we have been traveling around the world demonstrating Delphi at User Group functions and Trade Shows. 2. What is the Delphi target audience? A) Delphi is targeted to corporate developers, departmental programmers, vertical marketing consultants, VARs and independent developers who want a client/server or desktop development tool that is easy to use and that produces small, fast, single file executables. 3. What are the major benefits of Delphi over competing products? A) Delphi is the first tool that offers the high performance of a native code compiler with the speedy turnaround time and and hearty database access capability of a RAD client/server applications. It provides greater productivity, code reuse and performance than any competing product. 4. Will there be both a desktop and a client/server version of Delphi? A) Yes, there will be both a client/server version of Delphi and a standalone Desktop version for local PC development. 5. Will there be a 32-bit version? A) Yes, there will be a 32-bit version of Delphi that will run on Windows 95 (aka Chicago) and Windows NT. 6. Can Delphi link to C/C++ DLL's? A) Yes. You can link to any C/C++ DLLs that use the Pascal or C calling conventions. 7. What is the difference between the client/server version and desktop version? A) The client/server version of Delphi will include SQL links for connections to Oracle, Sybase, Interbase, Informix, and ODBC. It will also include Reportsmith and other team development tools not found in the desktop version. The desktop version is basically a subset of the client/server tool. 8. Will I be able to start with the desktop version and later upsize my applications to the client/server version? A) Yes. 9. How much will Delphi cost? Will there be upgrades? A) Pricing for the product has not yet been announced. 10. When will Delphi be released? A) No specific release dates have been announced. The first version of Delphi will be available in the first quarter of 1995. The 32-bit version of Delphi will be available after Windows 95 ships. 11. What language does Delphi use? A) We wanted a structured object-oriented language that would support our goals of reuse, easy to maintain code, and high performance. Object Pascal met these goals better than other language. 12. What is Object Pascal? A) Object Pascal is Delphi's underlying language. It is similar to Borland Pascal, but has been enhanced for use in Delphi's high- performance visual environment. Object Pascal language features include Exception Handling, Runtime type information, and far virtual method tables. 13. Is Delphi a replacement for Borland Pascal or Turbo Pascal? A) Delphi is a new product line and does not replace BP7. BP7 and TP7 will stay on the market. 14. Will Delphi write DOS programs? What about DPMI? A) No. Delphi is a Windows-only development product. 15. Will Delphi run on NT and Windows 95? A) Yes, you will be able to run 16-bit Delphi under Windows 95 and Windows NT, but you will only be able to write 32-bit programs for Windows 95 and NT with the 32-bit version of Delphi. 16. Will Delphi support Dynamic Data Exchange (DDE)? A) Yes. Delphi has built-in controls that facilitate DDE. 17. Will Delphi support VBX's? What versions? A) Yes. Delphi currently supports level 1-compliant VBXs. We are looking into supporting higher-level VBX controls in a later version. 18. Will Delphi support OLE 2.0? A) Yes. Delphi has built-in controls that support OLE 2.0 containers. The first release of Delphi will not have built-in support for OLE servers or automation. 19. Will Delphi support OCX? A) The first release of Delphi will not support OCX, but we are planning to add support for OCX in a later release of Delphi. 20. Will Delphi support OpenDoc? A) The first release of Delphi will not support OpenDoc, but we are planning to add support for OpenDoc in a later release of Delphi. 21. Where can I find articles about Delphi? A) PC Magazine, November 1994 Windows Tech Journal, October 1994 PC Techniques, November 1994 & December/January 1995 The Pascal Magazine, August/September 1994 & October/November 1994 Windows Sources, December 1994 (Delphi vs. VB article) InfoWorld, October 31, 1994 & November 21, 1994 22. Who do I contact if I want to be a beta tester? A) Download SURVEY.ZIP from BPASCAL library 2 or the Borland Download BBS (408-431-5096). Complete that application and follow the directions for returning it to Borland. Please understand that we receive many more beta test application than we have room for. 23. How can I get a copy of Delphi now? A)There is one way to get Delphi right now: Borland SI/VAR Connections is a program for System Integrators, VARs, and Consultants who want a business relationship with Borland for generating leads, getting access to technical information, training, and early access to Delphi and other Borland software. Cost is $1500 annually. Call 800-353-2211 or GO BORCONN on CompuServe for information on Connections. The Delphi Discovery program, a Delphi early-experience program, is now closed due to a very large initial response. Thanks for your support! 24. How do I get a copy of Delphi if I live outside the USA? Contact your local Borland distributor regarding Connections and/or Discovery in your country. 25. Will Delphi compile my Borland Pascal or Turbo Pascal for Windows code? A) Yes, Delphi will compile your existing Object Windows Library (OWL) and non-OWL Windows source code. 26. Is Delphi Borland Pascal 8.0? A) No. Delphi is a new development tool targeted for Windows only. We have not announced any other new products at this time and will keep Borland Pascal 7.0 and Turbo Pascal 7.0 on the market for DOS and DOS Protected Mode developers. 27. Does Delphi include the Borland Database Engine? Delphi includes the same core database technology found in the Borland Database Engine, dBASE 5.0 for Windows, and Paradox 5.0 for Windows. Delphi doesn't come with the same C/C++ development tools as does the Borland Database Engine 2.0. 28. What database formats does Delphi support? The Borland Database Engine, which is built into Delphi, includes built-in support for dBASE and Paradox tables and database servers such as Oracle, Sybase, Interbase, Informix. 29. Does Delphi support ODBC? A) Yes. The Borland Database Engine includes a socket for ODBC. 30. Does Delphi support SQL? A) Yes. Delphi allows you to issue pass-through SQL commands to database servers. You can also use SQL to query dBASE and Paradox tables. 31. Is Delphi the same as the VBK? A) The press has occasionally referred to the desktop version of Delphi as the Visual Basic Killer (VBK). The client/server version of Delphi also competes against PowerBuilder. 32. What is VCL? A) VCL stands for Visual Component Library. It is the name for the object library that Delphi is built on top of. VCL is constructed from the ground up with 32-bit portability in mind, so your applications will require little or no changes to source code when compiling between 16 and 32-bit. 33. Can I generate DLL's with Delphi? A) Yes. You can generate DLLs in Delphi that are callable not only from other Delphi applications, but also from C, C++, Visual Basic, Object PAL, or virtually any other Windows programming environment. You can use VCL objects in your DLLs. 34. Is Delphi an interpreter or a compiler? A) Unlike most competing products, Delphi generates true, optimized, compiled executables and DLLs. There is no run-time interpreter module (e.g. VBRUNx00.DLL) necessary for applications developed in Delphi. Since the code is compiled into machine code, performance is 10-20x faster than p-code interpreters such as PowerBuilder and Visual Basic.
pascal.156 drpr,
Haj, pozdrav svima, ima li neko sors (tj. samo parče) koji sortira jednostruko povezanu listu? Dugo to nisam radio pa sam malo zarđao tako da molim nekog ko to ima da mi to baci ovde u conf ili na mail. Ja to sad radim čistom silom dva puta prolazim kroz listu i pravim novu ali znam da moze. Ajte da se čiča ne muči :) Cope PS Kako se pravi lista i sve ostalo znam toliko zarđao nisam.
pascal.157 vlador, -> #156, drpr
> prolazim kroz listu i pravim novu ali znam da moze. Ajte da se > čiča ne muči :) Najbolje da pogledaš sors QuickSorta koji se deli uz TPascal. --- ■ VLADOR ■ Ne pucajte u pijanistu!
pascal.158 janko, -> #157, vlador
>> prolazim kroz listu i pravim novu ali znam da moze. Ajte >> da se > Najbolje da pogledaš sors QuickSorta koji se deli uz > TPascal. žovek traži sortiranje LISTE. Lista se mora tretirati kao i sekvencijalna datoteka. Dakle, mora MERGESORT.
pascal.159 dkolar,
Hteo bih, ne znam po koji put, da postavim pitanje, ako neko zna, kako da iz paskala iscitam serijski broj IDE hard diska! Ako je neko vec to uradio ili zna kako, neka mi poshalje poruku na privatnu postu na ima dkolar. cu
pascal.160 djelovic, -> #159, dkolar
> Hteo bih, ne znam po koji put, da postavim pitanje, ako neko zna, kako da i > paskala iscitam serijski broj IDE hard diska Ta funkcija je ostavljena u ovoj temi početkom Januara ove godine. Potraži malo.
pascal.161 msmiljanic,
Kako da TP program koji koristi Crt unit 'prepozna' mod i font? Resenje je unit PreCrt: unit PreCrt; interface var mode: byte; { video mod } implementation begin mode:= mem[$0000:$0449]; mem[$0000:$0449]:= 7; { 0, 1, 2, 3 ili 7 } end. Program treba da izgleda otprilike ovako: program xyz; uses ... , PreCrt, ... , Crt, ... ; { PreCrt ispred Crt-a } ... begin ... mem[$0000:$0449]:= mode; { Pre prvog rada sa ekranom } ... end. Sve funkcije i procedure Crt-a radice bez greske na celom ekranu.
pascal.162 jasicp,
Da li se objekat moze prostirati u vise unita ( valjda ne moze ). I sta znaci kada DosError vrato kod 18 -> No more files ?
pascal.163 vlador, -> #162, jasicp
> znaci kada DosError vrato kod 18 -> No more files ? Baš to. :) Znači da je FindNext ispucao sve fajlove koji odgovaraju traženom. --- ■ vlador ■ Kad ono mene tuku!...
pascal.164 mmitrovic, -> #155, dejanr
Ů█▀█Ţ performance visual environment. Object Pascal language features Ů█▀█Ţ include Exception Handling, Runtime type information, and Ů█▀█Ţ far virtual method tables. ------------------------- Ovo je novost. žemu bi ovo moglo da služi? Možda za direktno bindovanje externih funkcija kao metoda? Ů█▀█Ţ A) Unlike most competing products, Delphi generates true, Ů█▀█Ţ optimized, compiled executables and DLLs. There is no run-time Yes, napokon da vidim optimizaciju u pascal-u. :) Ovaj Delphi je izgleda neka mešavina Paradox-a f/w i BP 7.0, pravljena za razvoj baza. U principu, to će biti vrlo moćna "alatka". Pitanje je samo kol'ko resursa arči? ;)
pascal.165 mmitrovic, -> #162, jasicp
Ů█▀█Ţ Da li se objekat moze prostirati u vise unita ( valjda ne moze ). I sta Ů█▀█Ţ znaci kada DosError vrato kod 18 -> No more files ? a) Ne može iz prostog razloga što VMT tabele sadrže NEAR pointere, pa svi virtualni metodi moraju biti u istom segmentu. Delphi će imati FAR VMT, pa će možda i ovo moći da se izvede, mada sumnjam (identifier missing). b) DosError 18 obično vraćaju FindFirst i FindNext funkcije kada u pretraživanom DIR-u više nema datoteka koje se traže.
pascal.166 toca,
Potrebna mi je pomoć. Ukoliko nekog od vas ne mrzi, neka mi okaci ovde ili na mail listing programa koji ocitava serijki broj hard diska, moze i pointer na poruku. Znam da ce mi neki reci bilo je to u Racunarima, ali to ne radi. THNX, Toca
pascal.167 dejanr, -> #166, toca
>> Znam da ce mi neki reci bilo je to u Racunarima, ali to ne radi. Otkud ne radi??? Procedura je korektna i koliko znam radi, ja sam je koristio mali milion puta. Za svaki slučaj, evo je još jednom, u nešto luksuznijoj ali i slabije optimizovanoj formi: function getserno(diskime: string): string; var regs: registers; buf: array[1..32] of byte; b1, b2, b3, b4: longint; function hex(ulaz: longint): string; const hcif: array[0..15] of char = ('0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'); begin hex:=hcif[ulaz div 16]+hcif[ulaz mod 16]; end; begin regs.ah:=$69; regs.al:=0; if diskime='' then regs.bl:=0 else regs.bl:=ord(upcase(diskime[1]))-ord('A')+1; regs.ds:=seg(buf); regs.dx:=ofs(buf); intr($21, regs); if regs.flags and $1 <> 0 then getserno:='-111' else begin b1:=buf[3]; b2:=buf[4]; b3:=buf[5]; b4:=buf[6]; getserno:=hex(b4)+hex(b3)+hex(b2)+hex(b1); end; end;
pascal.168 mibak,
Zadatak: Potrebno je Grafički fajl urađen u nekom poznatom formatu štampati iz pascala. Probao sam sa TPPCX ali koristim TP 7.0 koji ne prepoznaje TPU fajlove ovog programa. Hvala. /\/\|3
pascal.169 darkovas,
Da li je moguce na Turbo Pascalu formirati niz od ~ 250 000 clanova. Treba bi jer bi radio FFT za 512x512 tacaka. Unapred zahvalan za svaku sugestiju!
pascal.170 dejanr, -> #169, darkovas
>> Da li je moguce na Turbo Pascalu formirati niz od ~ 250 000 clanova. Kao jedan niz, ne. Struktura je ograničena na 64 k. Možeš eventualno da alociraš (na heap-u, sa getmem) više nizova po 64 K, pa da onda procedura koja piše odluči na osnovu adrese u koji niz upisuje, i na koji ofset.
pascal.171 janko, -> #165, mmitrovic
> Ů█▀█Ţ Da li se objekat moze prostirati u vise unita ( > valjda ne moze ). I sta Ů█▀█Ţ znaci kada DosError vrato > kod 18 -> No more files ? > > a) Ne može iz prostog razloga što VMT tabele sadrže NEAR > pointere, pa svi virtualni metodi moraju biti u istom > segmentu. Delphi će imati FAR VMT, pa će možda i ovo moći > da se izvede, mada sumnjam (identifier missing). VMT tabele nisu bitne. Ideja je puno prostija: Junit je hijerarhijski viši od objekta. A i čemu to, jedan objekat u više junita? Ne vidim potrebu za time?
pascal.172 janko, -> #169, darkovas
> Da li je moguce na Turbo Pascalu formirati niz od ~ 250 > 000 clanova. Treba bi jer bi radio FFT za 512x512 tacaka. > Unapred zahvalan za svaku sugestiju! 250Kx8 bajtova = 2 MB. Ako koristiš TP 6.0, ili imaš slabu mašinu, nema šanse. Posle TP 6.0 nisam pratio. Pretpostavljam da TP for Win (nisam u toku sa TP > 6.0) može da adresira više od 640 K barijere. U jednom nizu sigurno opet ne možeš da imaš više od 64 KB, jer je kod sigurno 16-bitni (eh, Windows). Ali zato niz nizova (nisam siguran), ili (sigurno) niz pokazivača na nizove mora da prođe. Da dodam i ja pitanje, ume li neko da izloži karakteristike u kratkim crtama TP-ova koji su se pojavili posle 6.0? Delfi ne mora da pominje, sad pročitah o njemu.
pascal.173 zeljkoj, -> #170, dejanr
>>> Da li je moguce na Turbo Pascalu formirati niz od ~ 250 000 > clanova. > > Kao jedan niz, ne. Struktura je ograničena na 64 k. Zato ako možeš predji na FORTRAN, niz može biti velik onoliko koliko imaš memorije - nema ograničenja od 64 kB.
pascal.174 mmitrovic, -> #171, janko
Ů█▀█Ţ VMT tabele nisu bitne. Ideja je puno prostija: Junit je hijerarhijski Ů█▀█Ţ viši od objekta. To objašnjenje je čisto teorijsko, a ono što stvarno sprečava postavljanje metoda u druge unite je činjenica da svaki unit u Pascalu zauzima jeddan segment i da VMT tabele sadrže NEAR pointere. Ukoliko bi deklarisao metod u objektu, a zatim ga ne definisao u IMP. sekciji dobio bi poruku o grešci. Ne zato što je Unit viši od objekta, već zato što Pascal ne dozvoljava "rupe" koje bi se popunile pri linkovanju. Ů█▀█Ţ A i čemu to, jedan objekat u više junita? Ne vidim potrebu za time? Ne vidim ni ja, ali je čovek pitao dal' može. Osim toga, u Delphi info-u piše da će podržavati FAR VMT, a to može da služi samo za jedno: da različiti metodi budu u različitim segmentima. Iako ne vidim svrhu toga, sačekaćemo Delphi i videćemo zašto su ubacili. ;)
pascal.175 mmitrovic, -> #172, janko
Ů█▀█Ţ Da dodam i ja pitanje, ume li neko da izloži karakteristike u kratkim Ů█▀█Ţ crtama TP-ova koji su se pojavili posle 6.0? Delfi ne mora da pominje, - TP f/w 1.5 * Pravio je 16b aplikacije za Win3. Sadržao je ObjectVision 1.0 (?). Nije radio pod ni za DOS/DPMI. Valjda je na 5 disketa. - TP 7.0 * Turbo Pascal 7.0. Radi samo za DOS, bez Win/DPMIa. Sadrži TurboVision 2.0, kao i source-ove za većinu TV unita. Dakle unapređeni TP6.0. Na 2 diskete. - BP 7.0 w/obj * Borland Pascal 7.0 with objects. Radi na/za sve tri platforme. Sadrži ObjectVision 2.0 i TurboVision 2.0 Sourceova NEMA, iako u DOCu piše da ih ima, ali rade oni iz TP7.0. Win aplikacije su i dalje 16b, iako su podržane neke 32b funkcije. Pod DPMI-om na raspolaganju je do 16Mb, ali je veličina strukture i dalje ograničena na 64K. Tol'ko za sada.
pascal.176 janko, -> #174, mmitrovic
> Ů█▀█Ţ VMT tabele nisu bitne. Ideja je puno prostija: Junit > je hijerarhijski Ů█▀█Ţ viši od objekta. > > To objašnjenje je čisto teorijsko, a ono što stvarno > sprečava postavljanje metoda u druge unite je činjenica da > svaki unit u Pascalu zauzima jeddan segment i da VMT > tabele sadrže NEAR pointere. Ukoliko bi deklarisao metod u > objektu, a zatim ga ne definisao u IMP. sekciji dobio bi > poruku o grešci. Ne zato što je Unit viši od objekta, već > zato što Pascal ne dozvoljava "rupe" koje bi se popunile > pri linkovanju. Principi određuju implementaciju a ne obratno. Implementacija je samo posledica unapred postavljenih ograničenja. > Ne vidim ni ja, ali je čovek pitao dal' može. Osim toga, u > Delphi info-u piše da će podržavati FAR VMT, a to može da > služi samo za jedno: da različiti metodi budu u različitim > segmentima ..samo kaže da će da VMT ulaz troši 4 bajta. E sad, da li je to klasičan FAR pointer ili šta bilo, videćemo, ali, ko kaže da možda i juniti neće biti veći od segmenta (što je čisto implementacioni detalj?)
pascal.177 mmitrovic, -> #176, janko
Ů█▀█Ţ Principi određuju implementaciju a ne obratno. Implementacija je samo Ů█▀█Ţ posledica unapred postavljenih ograničenja. Pazi, mi sad ovde možemo mesecima da raspravljamo šta je starije: kokoška ili jaje. Delom se i slažem sa tobom. Međutim, ja se primarno bavim sistemskim programiranjem i ono što sis.prog. definitivno ne podnosi su teorijska ograničenja. Mene ništa, sem nedostatak vremena, ne sprečava da napišem Pascal kojem bi objekat bio hijerarhijski iznad unita. Ne bi to, naravno, bilo nešto specijalno, ali bi funkcionisalo. :) žisto da ti objasnim da u nekim slučajevima teorija sputava praktičnu primenu. Ů█▀█Ţ ..samo kaže da će da VMT ulaz troši 4 bajta. E sad, da li je to klasičan Ů█▀█Ţ FAR pointer ili šta bilo, videćemo, ali, ko kaže da možda i juniti neće Ů█▀█Ţ biti veći od segmenta (što je čisto implementacioni detalj?) Citiram: A) Object Pascal is Delphi's underlying language. It is similar to Borland Pascal, but has been enhanced for use in Delphi's high- performance visual environment. Object Pascal language features include Exception Handling, Runtime type information, and far virtual method tables. ------------------------- Nigde se ne pominje 4 bajta, osim toga u protected modu 32b pointer je NEAR pointer. FAR pointer zauzima 6 bajtova (16b selektor + 32b offset). Što se tiče multi-segmentnih unita, to baš i nije za očekivati. Prvo, zato što bi bilo veoma teško odrediti šta ide u koji segment, a bilo bi puno očekivati od korisnika da to manuelno označi; drugo, u Prot. modu segmenti su ograničeni na dohvat 32b offseta, znači 4Gb. Ne znam kol'ko dug program da pišeš, sigurno će stati u jedan segment. Sve zajedno sa DOSom, WindowSOM, alatkama, backupom diska i gomilom slika. :)
pascal.178 ilotina,
Kako da disejblujem ctrl-c, ranije sam znao ;) Ivan
pascal.179 postmast,
From: Knezovic.Bojan@f133.n103.z38.setgate.setnet.co.yu (Knezovic Bojan) Subject: novi TP? Date: Sat, 04 Mar 1995 11:53:02 Hi! Cuo sam da treba da izadje novi Turbo Pascal, objektni cini mi se? Jel moze neko da mi kaze nesto podrobnije o njemu, rekose da ce biti cudo nevidjeno;)) Kada da se ocekuje i kako ce se zvati? * Origin: SETNet * BBS Politika, Bgd * +381 11 3229148 * 0-24 (38:103/133)
pascal.180 vitez.koja, -> #175, mmitrovic
#=> ObjectVision 1.0 (?). ObjectWindows - dalji rođak Turbo Vision-a. ObjectVision je nešto sasvim drugo.
pascal.181 postmast,
From: broker@setnet.co.yu (Predrag Supurovic) Subject: Memory Date: Thu, 09 Mar 1995 18:55:10 SA> Zanimalo bi me samo koliko bitova (ili bajtova?) zauzima u memoriji SA> jedna promenljiva tipa Boolean? SA> Ili,jos bolje,da ne bude zabune,da mi neko lepo kaze kako TP SA> rasporedjuje Boolean promenljive u memoriji? :) Trebalo bi da zauzima samo jedan bit, posto koliko znam u Turbo Paskalu ima poseban Boolean tip koji zauzima ceo bajt. ... Fatal ERROR! Missing power supply! * Origin: Oreska BBS, Uzice = SF BIBLIOTEKA = SETNet: (38:101/101)
pascal.182 postmast,
From: Sebastian.Adanko@f107.n111.z38.setgate.setnet.co.yu (Sebastian Adanko) Subject: Memory Date: Tue, 28 Feb 1995 21:51:17 Hi narode! Zanimalo bi me samo koliko bitova (ili bajtova?) zauzima u memoriji jedna promenljiva tipa Boolean? Ili,jos bolje,da ne bude zabune,da mi neko lepo kaze kako TP rasporedjuje Boolean promenljive u memoriji? :) 10x in advance, Phuzzy Logik ... Jump out of range error ??? * Origin: Prometheus BBS - The Northern Frontier - SETNET (38:111/107)
pascal.183 postmast,
From: bear@setnet.co.yu (Attila Csipa) Subject: Memory Date: Thu, 09 Mar 1995 00:08:01 SA> Zanimalo bi me samo koliko bitova (ili bajtova?) zauzima u memoriji SA> jedna promenljiva tipa Boolean? SA> Ili,jos bolje,da ne bude zabune,da mi neko lepo kaze kako TP SA> rasporedjuje Boolean promenljive u memoriji? :) Po defaultu 1 boolean zauzima jedan bajt, zbog brze operacije. Ako se tip definise kao PACKED BOOLEAN, onda se radi bitovima, ali se (kao) rad usporava. ... Radni sto je korpa za smece sa fiokama. * Origin: Prometheus BBS - The Northern Frontier - SETNET (38:111/107)
pascal.184 postmast,
From: Sebastian.Adanko@f107.n111.z38.setgate.setnet.co.yu (Sebastian Adanko) Subject: Memory Date: Wed, 08 Mar 1995 20:55:30 Hail to you, oh great Attila of the noble house Csipa ! SA> Zanimalo bi me samo koliko bitova (ili bajtova?) zauzima u memoriji SA> jedna promenljiva tipa Boolean? AC> AC> Po defaultu 1 boolean zauzima jedan bajt, zbog brze operacije. Ako se AC> tip definise kao PACKED BOOLEAN, onda se radi bitovima, ali se (kao) AC> rad usporava. Posto mi je usteda memorije ovog puta izuzetno bitna,da li bi mogao da me prosvetlis i kazes kako da definisem promenljivu kao packed? (mrzi me da ceprkam po helpu,uvek mi odnese po pola sata ;) Nije valda da samo kazem nesto kao var I:Boolean(packed) ili nesto slicno?? Phuzzy Logik ... I just took an IQ test. The results were negative. * Origin: Prometheus BBS - The Northern Frontier - SETNET (38:111/107)
pascal.185 dejanr, -> #184, postmast
>> Posto mi je usteda memorije ovog puta izuzetno bitna,da li bi mogao >> da me prosvetlis i kazes kako da definisem promenljivu kao packed? >> (mrzi me da ceprkam po helpu,uvek mi odnese po pola sata ;) >> Nije valda da samo kazem nesto kao var I:Boolean(packed) ili nesto U Turbo Pascalu nikako - reč packed je podržana, ali nema dejstvo (piše u uputstvu). Dakle, napravi niz flags[1..10000] of byte a onda funkcije setflag, clearflag i testflag koji primaju argument između 1 i 80000 i onda maskiraju odgovarajući bit u odgovarajućem elementu flags registra. Eventualno se ove procedure mogu napraviti na asembleru, ako je i vreme kritično; inače, lepo rade i na TP-u.
pascal.186 jasicp,
Sta znaci kada TP7.0 izbaci run time error 215 ? Imam dokumentaciju za 6.0 a tamo ovoga nema.
pascal.188 ivantod, -> #186, jasicp
Help kaže ovako: Run-time error 215: Arithmetic overflow error This error is reported by statements compiled in the {$Q+} state when an integer arithmetic operation caused an overflow, such as when the result of the operation was outside the supported range. Nadam se da pomaže... Ivan
pascal.189 jasicp,
Da li TP7.0 ima bag u Editors unitu (ili nekom drugom koji ovaj koristi) ? Naime, kada aktiviram TFileWindow odnosno TEditor, text se lepo prikaze, ali samo dok ne pritisnem backspace. Tada iskoci run time error 215. Kod editors iz TP6.0 nema greske, radi normalno (ali on koristi buffers iz TP6.0 kojih opet nema u TP7.0. Ima li grupe za OOP Pascal ? Ako ima pitam za prijem, ako nema otvoricu je pa molim interesente na mail. Mislim samo za OOP, ne i ostalo.
pascal.190 janko, -> #177, mmitrovic
> funkcionisalo. :) žisto da ti objasnim da u nekim > slučajevima teorija sputava praktičnu primenu. Ne slažem se, u vezi sputavanja -- ograničenja vidljivosti su velika blagodet modernog programiranja, a ne mana. Zato i postoje juniti, moduli, objekti. Ako ti sve treba "preko granica" piši i dalje u Fortranu sa COMMON područjima. > Nigde se ne pominje 4 bajta, osim toga u protected modu > 32b pointer je NEAR pointer. FAR pointer zauzima 6 bajtova > (16b selektor + 32b offset). Međutim, s obzirom da ništa još ne prave "stvarno tridesetdvobitno" vrlo verujem da će sizeof(farvirtualptr) ipak biti 4 bajta -- tj. da koriste starinsku terminologiju. Da dočekamo da vidimo? :)
pascal.191 mmitrovic, -> #180, vitez.koja
Ů█▀█Ţ ObjectWindows - dalji rođak Turbo Vision-a. ObjectVision je nešto Ů█▀█Ţ sasvim drugo. U pravu si. :) Mislim jedno, pišem drugo. Što se tiče kompleksnosti, TurboVision je mnogo kompleksniji od ObjectWindowsLibrary-a, iako se misli da je obrnuto (valjda zato što OWL radi pod Windowsom). ;) Pod DOSom je sve trebalo uraditi od nule, sve osmisliti, kreirati visualne elemente, grupe, podršku za Evente. ObjectWindows se 100% oslanja na Windows ili BWCC za visualne elemente i Evente, dok mu sve podatke (pr. elementi liste) drži Windows; u samim objektima nema ništa sem poziva WinAPIa.
pascal.192 mmitrovic, -> #186, jasicp
Ů█▀█Ţ Sta znaci kada TP7.0 izbaci run time error 215 ? Imam dokumentaciju Ů█▀█Ţ za 6.0 a tamo ovoga nema. 215: Arithmetic overflow error Reported by statements compiled with š$Qć when an integer arithmetic operation caused an overflow or the result was outside the supported range. In the $Q+ state, certain integer operations are checked for overflow, such as: +, -, * Abs, Sqr, Succ, and Pred Dakle, integer overflow. Ako ti je overflow bio namera, stavi $Q-. Sve greške imaš u helpu, pod stavkom Errors. Tu se nalaze i RunTime greške i Compiler greške podeljene u dve grupe. Dakle, ubuduće Shift-F1.
pascal.193 mmitrovic, -> #190, janko
Ů█▀█Ţ Ne slažem se, u vezi sputavanja -- ograničenja vidljivosti su velika Ů█▀█Ţ blagodet modernog programiranja, a ne mana. Zato i postoje juniti, Ů█▀█Ţ moduli, objekti. Ne slažem se sa tobom, i evo ti konkretan primer. Sinulo mi pre neki dan dok sam razmišljao čemu bi FVMT koristilo. Uzmimo na primer (nepostojeću) klauzulu "substitute". Primer: procedure TView.HandleEvent(var Event:TEvent); virtual; substitute; begin ... end; Šta bi ovo radilo? Zamenilo bi kod standardnog HandleEventa ovim, i to ne ne kraju hij. stabla, već na samom početku, tako da bi ubuduće svi pozivi starog metoda ustvari ulazili u ovaj novi metod. Tehnički ovo uopšte nije teško izvesti. Ako je metod virtuelan, izmeni se VMT tabela objekta TView, ako nije onda se pri linkovanju koristi nova adresa. Pošto će novi metodi sigurno biti u drugim segmentima, potrebna je FVMT. žemu sve ovo služi (a uz to i ne radi :) Jedna od najvećih primena bi bila u dijagnostici. Sa ovim može lako da se izmeni ponašanje čitavog stabla klasa, menjanjem jeddnog metoda. Mogu na primer izmeniti ClearEvent, HandleEvent, SetState TView objekta tako da javljaju nekoj funkciji kad god instanca obradi ili primi Event, kad god se promeni stanje objekta (izgubi fokus, itd). Pošto će biti izmenjen top objekat, a sve dobro organizovane objektne hijerarhije (kakav je i TV) pozive prosleđuju uz stablo, svi će ti pozivi doći do promenjenih metoda. Postoji još par primena koje mi se vrte kroz glavu, al' ih još nisam smisleno formulisao. :) Naravno cela ova priča podrazumeva da znaš OOPascal i funkcionisanje TurboVizije. I očigledno ova tehnika krši sva teorijska ograničenja, a ipak je blagodet. B) Ů█▀█Ţ Ako ti sve treba "preko granica" piši i dalje u Fortranu sa COMMON područjima. Arghh, a tako mi je lepo počeo dan. :( FORTRAN & BASIC out of my life. I mean it. Ne volim ih, mrzim ih, uh. Znam da mašinci ne mogu bez njega, al' ne moraju svi da pate zbog toga, mrzeo sam ga u srednjoj, mrzeću ga i sad kad me budu terali da ga učim ponovo. Jednostavno nema te stvari koju može fortran a ne može pascal ili C. Ů█▀█Ţ Međutim, s obzirom da ništa još ne prave "stvarno tridesetdvobitno" vrlo Ů█▀█Ţ verujem da će sizeof(farvirtualptr) ipak biti 4 bajta -- tj. da koriste Ů█▀█Ţ starinsku terminologiju. Da dočekamo da vidimo? :) Nema potrebe. :) Citiram opet: 5. Will there be a 32-bit version? A) Yes, there will be a 32-bit version of Delphi that will run on -------------- Windows 95 (aka Chicago) and Windows NT. 10. When will Delphi be released? A) No specific release dates have been announced. The first version of Delphi will be available in the first quarter of 1995. The 32-bit version of Delphi will be available after Windows 95 ships. ---------------------- 15. Will Delphi run on NT and Windows 95? A) Yes, you will be able to run 16-bit Delphi under Windows 95 and Windows NT, but you will only be able to write 32-bit programs for Windows 95 and NT with the 32-bit version of Delphi. Dakle pod Windowsom 95 i NTom radiće 32b verzija koja će moći da pravi 32b aplikacije. Ipak, ono >after Win95 ships< ne zvuči oduševljavajuće, ipak je to Microsoft. ;)
pascal.194 jasicp, -> #163, vlador
> Bas to. :) Znaci da je FindNext ispucao sve fajlove koji odgovaraju > trazenom. Znam aili uopste ne upotrebljavam spomenutu naredbu vec samo assign + reset za textualni fajl :). Mora da mi jesto drugo. Mada mi ne pada na pamet sta. Smesno.
pascal.195 jasicp, -> #192, mmitrovic
> Dakle, integer overflow. Ako ti je overflow bio namera, stavi $Q-. > Sve greske imas u helpu, pod stavkom Errors. Tu se nalaze i RunTime > greske i Compiler greske podeljene u dve grupe. Dakle, ubuduce Shift-F1. Ne, nego sam se vijao sa nekom bubom u implementaciji editora. Pojavi se kada pritisnem backspace. Dolazi do problema u editors unitu, pa je verovatno nesto malo komlikovanije. Problem je u Shift-F1. Ili sam skroz izlapeo ili zaista nema ugradjena objasnjenja za Run time greske. Sve je ostalo normalno osim ovog ( radim mnogo godina u ovome :) stvarno nije u tome problem ) pa mi nije jasno da li stalno nesto previdjam :)).
pascal.196 vlador, -> #194, jasicp
> reset za textualni fajl :). Mora da mi jesto drugo. Mada mi ne pada na > pamet sta. Smesno. Baš smešno. :) Baci parče koda, ovo bi moglo biti interesantno.
pascal.197 postmast,
From: Sebastian.Adanko@f107.n111.z38.setgate.setnet.co.yu (Sebastian Adanko) Subject: Die & Run Date: Thu, 09 Mar 1995 23:01:39 Hi! Svojevremeno je neko ovde objasnio kako ima neki fazon koji dopusta da se iz Turbo Pascala (7.0) postigne to da neki program stane, istovremeno pustajuci u rad neki drugi program.Ne mislim na Exec, nego na to da se bas,redovno,prekine i onda pusti onog drugog. Ali,ako se moze postici samo opasnim hakerskim cackanjem onda mi ne treba,jer ne bih da komplikujem i ovako komplikovan program ;) Samo mi se cini kao da je neko nasao 'zvanicno' resenje. CU & 10x in advance... Phuzzy Logik ... Who was Casper the Friendly Ghost before he died? * Origin: Prometheus BBS - The Northern Frontier - SETNET (38:111/107)
pascal.198 postmast,
From: Kliment.Andreev@f108.n108.z38.setgate.setnet.co.yu (Kliment Andreev) Subject: Memory Date: Sat, 11 Mar 1995 00:15:00 PS> SA> Zanimalo bi me samo koliko bitova (ili bajtova?) zauzima u memoriji PS> SA> jedna promenljiva tipa Boolean? PS> SA> Ili,jos bolje,da ne bude zabune,da mi neko lepo kaze kako TP PS> SA> rasporedjuje Boolean promenljive u memoriji? :) PS> Trebalo bi da zauzima samo jedan bit, posto koliko znam u Turbo PS> Paskalu ima poseban Boolean tip koji zauzima ceo bajt. PS> ... Fatal ERROR! Missing power supply! Evo ssta kazze original uputstvo za TP6.0: "A Boolean type is stored as a byte that can assume the value of 0 (False) or 1 (True)." KAN ■ SPEED 1.30 [NR] ■ Speed Read or die! * Origin: SETNet: Struga BBS +389 96 74074 * Macedonia * (38:108/108)
pascal.199 postmast,
From: bear@setnet.co.yu (Attila Csipa) Subject: Memory Date: Sat, 11 Mar 1995 00:38:49 AC> Po defaultu 1 boolean zauzima jedan bajt, zbog brze operacije. Ako se AC> tip definise kao PACKED BOOLEAN, onda se radi bitovima, ali se (kao) AC> rad usporava. SA> SA> Posto mi je usteda memorije ovog puta izuzetno bitna,da li bi mogao SA> da me prosvetlis i kazes kako da definisem promenljivu kao packed? SA> (mrzi me da ceprkam po helpu,uvek mi odnese po pola sata ;) SA> Nije valda da samo kazem nesto kao var I:Boolean(packed) ili nesto SA> slicno?? Uf, kad sam ja tako poslednji put radio u paskalu... Ako me secanje ne vara, trebalo bi da ide u stilu VAR I:ARRAY[1..8] OF PACKED BOOLEAN, ili PACKED ARRAY[1..8] OF BOOLEAN. Eksperimentisi malo, valjda ces pronaci :) ... Artificial Intelligence is no match for natural stupidity * Origin: Prometheus BBS - The Northern Frontier - SETNET (38:111/107)
pascal.200 postmast,
From: broker@setnet.co.yu (Predrag Supurovic) Subject: Memory Date: Sat, 11 Mar 1995 09:21:30 PS> SA> Zanimalo bi me samo koliko bitova (ili bajtova?) zauzima u memoriji PS> SA> jedna promenljiva tipa Boolean? PS> Trebalo bi da zauzima samo jedan bit, posto koliko znam u Turbo PS> Paskalu ima poseban Boolean tip koji zauzima ceo bajt. KA> Evo ssta kazze original uputstvo za TP6.0: KA> "A Boolean type is stored as a byte that can assume the value KA> of 0 (False) or 1 (True)." U pravu si i u mom uputstvu to pise. Nisam uspeo da pronadjem ali sam siguran da sam negde video da TP ima poseban Boolean tip koji zauzima bajt (mozda word?) i to mi se ucinilo zanimljivo ali nisam nasao upotrebnu vrednost. Zbog toga sam ovak iz glave zakljuco da verovatnoobican Boolean koristi memoriju na nivou bita, ali sam se prevario. ... Don't shoot! There are people too. * Origin: Oreska BBS, Uzice = SF BIBLIOTEKA = SETNet: (38:101/101)
pascal.201 postmast,
From: broker@setnet.co.yu (Predrag Supurovic) Subject: Memory Date: Sat, 11 Mar 1995 09:21:31 AC> Uf, kad sam ja tako poslednji put radio u paskalu... Ako me secanje AC> ne vara, trebalo bi da ide u stilu VAR I:ARRAY[1..8] OF PACKED BOOLEAN, AC> ili PACKED ARRAY[1..8] OF BOOLEAN. Eksperimentisi malo, valjda ces AC> pronaci :) U Turbo Paskalu je rec PACKED ostavljena samo radi kompatibilnosti, a inace nema funkciju posto se nizovi uvek pakuju. ... Don't shoot! There are people too. * Origin: Oreska BBS, Uzice = SF BIBLIOTEKA = SETNet: (38:101/101)
pascal.202 zeljkoj, -> #197, postmast
> Svojevremeno je neko ovde objasnio kako ima neki fazon koji > dopusta da se iz Turbo Pascala (7.0) postigne to da neki > program stane, Pitanje je postavio dejanr u PC.SOFT, poruka 9.6. (13.11.1989.) Odgovori su u porukama 9.7 i 9.24.