PCPROG.4

22 Apr 1994 - 05 Jan 1995

Topics

  1. algoritmi (153)
  2. comment (15)
  3. ms.dos (123)
  4. windows (304)
  5. asembler (103)
  6. basic (80)
  7. jezici (196)
  8. pascal (880)
  9. cccc (586)
  10. cpp (157)
  11. clipper (1267)
  12. baze.podataka (525)
  13. razno (529)

Messages - pascal

pascal.1 dpriest...,
Evo da ostavim prvu poruku u pascal temi, iako mozda i nije za ovde... vise mu dodje za temu :treba mi... daklem, treba mi parce source-a (moze i u C-u ili u ASM-u) za prikazivanje GIF slicica na ekranu, kao i za prikazivanje TTF fontova (iliti crtanje slova, ako vam je draze)... ajde, znam da neko to ima... samo jos da ga ne mrzi da mi javi... thanx in advance... DP...
pascal.3 postmast,
From: jd53492d@buefhp.etf.uni-bg.yu (Dejan Jakovljevic) Subject: Re: pascal Date: Fri, 22 Apr 1994 15:16:58 GMT <*> Dejan Pejcinovski (dpriest...@sezam.UUCP) wrote: <*> : Ima li neko source za prikazivanje GIF-a ? <*> : ako nema moracu da izgubim par dana da ga oravim iz <*> : opisa GIF formata... POMAGAJTE JUNACI ! :( mislim da na fon-u ima nesxto (mada nisam siguran...) opis GIF-a je tamo....sigurno.... -- Jakovljevic Dejan, Sokobanja O:-) ////// yours (?), (try me at osmeh.FON.Uni-Bg.YU as dex) ////// ..dex..
pascal.4 dtadic, -> #1, dpriest...
>> daklem, treba mi parce source-a (moze i u C-u ili u ASM-u) >> za prikazivanje GIF slicica na ekranu, kao i za prikazivanje >> TTF fontova (iliti crtanje slova, ako vam je draze)... C source za rad sa gifovima imaš u IBMPC\C direktorijumu: giflib12 a01 113318 C source programa za rad sa GIF datotekama (#2/2) giflib12 arj 114224 C source programa za rad sa GIF datotekama (#1/2) Na FONu se može naći opis TTF fontova.
pascal.5 isekulovic, -> #1, dpriest...
>> daklem, treba mi parce source-a (moze i u C-u ili u ASM-u) >> za prikazivanje GIF slicica na ekranu, kao i za prikazivanje Pogledaj pascal teme u starim pc.prog konferencijama, ima dva unita. Mislim da su oba ega/vga only. Ima i za .pcx.
pascal.6 omega, -> #1, dpriest...
Ţ daklem, treba mi parce source-a (moze i u C-u ili u ASM-u) Ţ za prikazivanje GIF slicica na ekranu, kao i za prikazivanje Pogledaj PC.PROG: 4.57 i 4.108. Prvi je samo tpu (ako se ne varam), a drugi ima i source...
pascal.7 kriss,
reply na 8.877 [dpriest...] ˙˙ Ima li neko source za prikazivanje GIF-a ? ˙˙ ako nema moracu da izgubim par dana da ga oravim iz ˙˙ opisa GIF formata... POMAGAJTE JUNACI ! :( Bilo je u nekoj staroj PC.PROG konferenciji, zakačeno uz poruku. Protrči svaku što ima zakačen fajl, nema ih puno, a i naćićeš dosta često traženih sorsova.
pascal.8 dekiper, -> #4, dtadic
Može da se nađe opis TTF-a i na NewAge BBS-u pošto je FON nenormalno teško dobiti (verovatno zbog OSMEH-a). Zovi 404639 posle 11
pascal.9 ppekovic, -> #8, dekiper
>> Može da se nađe opis TTF-a i na NewAge BBS-u pošto je FON nenormalno teško >> dobiti (verovatno zbog OSMEH-a). Zovi 404639 posle 11 FON jeste tesko dobiti, ali je nesto lakse dobiti MR Systems BBS koji je mirror site FFS-a. Telefon je 4446246, 3 linije, 14400. Paya
pascal.10 markom, -> #8, dekiper
█*█ Može da se nađe opis TTF-a i na NewAge BBS-u pošto je FON nenormalno teško █*█ dobiti (verovatno zbog OSMEH-a). Zovi 404639 posle 11 Do FON-a možeš doći i preko ETF-a ... :)
pascal.11 jovca.car, -> #10, markom
/* Do FON-a možeš doći i preko ETF-a ... :) Stići može. A dl?
pascal.12 postmast,
From: dex@Osmeh.FON.Uni-BG.YU (Dejan Jakovljevic) Subject: Re: pascal Date: Mon, 25 Apr 1994 22:03:57 GMT Marko Milivojevic (markom@sezam.UUCP) wrote: ..... <*> Do FON-a mozes doci i preko ETF-a ... :) pa, mozxe....samo sxto su nesxto sredili TELNET nalog na ORLU pa visxe ne mozxe (osim preko hp-a.....)....... -- Jakovljevic Dejan, Sokobanja (poznato odmaraliste i leciliste...) dex@osmeh.fon.uni-bg.yu
pascal.13 crncic, -> #8, dekiper
│║█ Moze da se nade opis TTF-a i na NewAge BBS-u posto je FON nenormalno │║█ tesko dobiti (verovatno zbog OSMEH-a). Zovi 404639 posle 11 Radi opet ?
pascal.14 postmast,
From: ak@Osmeh.FON.Uni-BG.YU (Aleksandar Kircanski) Subject: Re: pascal Date: Tue, 26 Apr 1994 15:26:21 GMT Slobodan Jovcic (jovca.car@sezam.UUCP) wrote: : /* Do FON-a mozes doci i preko ETF-a ... :) : Stici moze. A dl? Pa moze i DL. URadis rlogin fon.fon /eight i eto.. -- Aky - Kircanski Aleksandar aky@tesla.mcs.com
pascal.15 omega, -> #10, markom
Ţ Do FON-a mozes doci i preko ETF-a ... :) Kako?
pascal.16 markom, -> #11, jovca.car
█*█ /* Do FON-a možeš doći i preko ETF-a ... :) Ispravka, moglo je :(((( █*█ Stići može. A dl? Meni je uspevalo, ali je CPS bio krajnje slab. Negde oko 200 :(
pascal.17 markom, -> #12, postmast
█*█ pa, mozxe....samo sxto su nesxto sredili TELNET nalog na ORLU █*█ pa visxe ne mozxe (osim preko hp-a.....)....... Da, na žalost, video sam :((
pascal.18 markom, -> #15, omega
█*█ Kako? Moglo je, ali više ne može. Local> c telnet (...) Telnet> open fon.fon (...) login: Sada je telnet ograničen samo na ETF-ove računare ...
pascal.19 dpriest..., -> #6, omega
>>> Ţ daklem, treba mi parce source-a (moze i u C-u ili u ASM-u) >>> Ţ za prikazivanje GIF slicica na ekranu, kao i za prikazivanje >>> >>> Pogledaj PC.PROG: 4.57 i 4.108. Prvi je samo tpu (ako se ne >>> varam), a drugi ima i source... E, sourcevi koji su zakaceni uz te poruke su toliko *stari* da sam se zaprepastio :) to je za neke prve verzije GIF-ova... radjeni su za EGA kartice, nije veliki problem da se preprave, ali su i prepravljeni prespori... zezao se celu noc i nesto kao uradio, onda pokusao da napisem onu LZW brze ali mi nesto ne radi... ili meni nesto fali u razmisljanju... verovatno iskustvo :) pa tek onda procitao opis PCX formata! Da sam znao da je *TOLIKO PROSTO* ne bi se uopste zezao s GIFovima... Bio sam pogresno informisan da je PCX slozeniji od GIF-a :(. Coveku koji me je dezinformisao je valjda jednostavnija LZW od brojanja ponavljanja... sta ces... ;) (btw: sta fakultet moze da uradi od coveka... ccc... ;) ) Jbm li mu nnu nninu... Xvala cBima 3a caBete... Digital Priest...
pascal.20 omega, -> #19, dpriest...
Ţ>>> Pogledaj PC.PROG: 4.57 i 4.108. Prvi je samo tpu (ako se ne Ţ>>> varam), a drugi ima i source... Ţ Ţ radjeni su za EGA kartice, nije veliki problem da se preprave, Ţ ali su i prepravljeni prespori... zezao se celu noc i nesto kao Prespori!? Cini mi se da jedan ima source u asm-u, i radi brzo kao i VPIC! U prevodu: ne moz' biti brze...
pascal.21 wizard, -> #15, omega
> Ţ Do FON-a mozes doci i preko ETF-a ... :) > > Kako? 25-ticom.
pascal.22 boris, -> #21, wizard
>> Ţ Do FON-a mozes doci i preko ETF-a ... :) >> >> Kako? > > 25-ticom. Bolje je 14-ticom, manje se pešači :)))
pascal.23 omega,
Stavljanjem uses crt, pascal program osudjujemo da NE radi sa extended text modovima (npr. 132x24, 132x44...)...Da li neko zna kako da se ova prepreka savlada? Pazite, ovo ne vazi za modove u kojima ima 80 kolona - oni rade bez problema, medjutim, kad je aktivan mod recimo 132x44, tp ga automatski prebaci u 80x25 :(. Da li je jedino resenje pisanje sopstvenog CRT.TPU?
pascal.25 pedjak, -> #23, omega
U vezi promene tekst moda... Možda lupam, ali da li si probao DirectVideo := False ?
pascal.26 omega, -> #25, pedjak
Ţ U vezi promene tekst moda... Mozda lupam, ali da li si probao Ţ DirectVideo := False ? Jesam...Ne vredi...Stos je u tome sto crt.tpu izgleda nekako ovako: unit crt; ************* E ovde je neki deo koji prebacuje video mod :(( end.
pascal.27 pedjak, -> #26, omega
> Jesam...Ne vredi...Stos je u tome sto crt.tpu izgleda nekako ovako: E, onda ti nema druge nego da praviš svoje rutine za ispis...
pascal.28 vpudar,
Primetio sam čudan bag kod Turbo Pascal-a 7.0, vezan za Crt unit i Readln naredbu: uses crt; var s: string; begin clrscr; write('Unesite bilo sta: '); readln(s); writeln('Napisali ste: ', s); end. "Brlja" komanda Readln, ne ispisuje prvi karakter tamo gde treba!?! Probajte i vi.
pascal.29 markom, -> #28, vpudar
*** Probajte i vi. Radi savršeno ...
pascal.30 mmitrovic, -> #27, pedjak
Ů█▀█Ţ> Jesam...Ne vredi...Stos je u tome sto crt.tpu izgleda nekako ovako: Ů█▀█Ţ E, onda ti nema druge nego da praviš svoje rutine za ispis... Ne mora. Kad se startuje program sa CRT unitom, CRT zapamti mod u kome je u LastMode promenljivoj. Samo treba da se pozove TextMode(LastMode) i rezulucija će se vratiti na početnu.
pascal.31 mmitrovic, -> #28, vpudar
Ů█▀█Ţ "Brlja" komanda Readln, ne ispisuje prvi karakter tamo gde treba!?! Ů█▀█Ţ Probajte i vi. Probao i radi. I to i na Turbo i na Borland pascalu i u real i u protected modu. Mora da je nešto do tebe. Koji su ti default switchevi?
pascal.32 omega, -> #30, mmitrovic
Ţ Ů█▀█Ţ E, onda ti nema druge nego da pravis svoje rutine za ispis... Ţ Ţ Ne mora. Ţ Ţ Kad se startuje program sa CRT unitom, CRT zapamti mod u kome je Ţ u LastMode promenljivoj. Samo treba da se pozove TextMode(LastMode) i Ţ rezulucija ce se vratiti na pocetnu. Kamo srece da je to tako :( Da objasnim jos jednom...Radimo recimo u modu 132x25. Startujemo program koji ima "uses crt" i CRT PRVO inicijalizuje 80x25, pa u LastMode stavi taj mod (znaci stavi 80x25, a NE 132x25) :(, pa nikakvo textmode(lastmode) ne moze da nam pomogne :(
pascal.34 eagle, -> #32, omega
> Kamo srece da je to tako :( Da objasnim jos jednom...Radimo recimo u modu > 132x25. Startujemo program koji ima "uses crt" i CRT PRVO inicijalizuje > 80x25, pa u LastMode stavi taj mod (znaci stavi 80x25, a NE 132x25) :(, > pa nikakvo textmode(lastmode) ne moze da nam pomogne :( Ovo možeš rešiti tako što ćeš pre CRT-a pokupiti aktivan mod. Napravi se jedan mali unit koji to radi, i stavi se u uses pre CRT-a: unit Last; interface var LastMode: byte; implementation begin LastMode := memŠ$40:$49Ć; end. program: uses Last, CRT; begin asm mov ah, 0 mov al, Last.LastMode int 10h end; ... end. Naravno, TextMode neće dozvoliti postavljanje moda sa kojim CRT ne ume da radi, pa se mora direktno.
pascal.35 omega, -> #34, eagle
Ţ Ovo mozes resiti tako sto ces pre CRT-a pokupiti aktivan mod. Ţ Napravi se jedan mali unit koji to radi, i stavi se u uses pre Ţ CRT-a: Svaka cast na ideji. Probao sam i radi! Hvala...
pascal.36 saricl,
Dali neko može da baci ovde rutinu koja radi sledeće: Potrebno je da po njenom startovanju preuzima interapt, odnosno po zahtevu za interapt startuje jednu drugu rutinu x.y nakon završavanja posla rutine x.y vraća sve u pocetno stanje. E sad sve to treba da radi u realnom vremenu. Ako neko nema gotovu rutinu nek mi bar kaže zašto mi posle aktiviranja rutine za prekid zablokira uređaj ciji je prekid korišten. Unapred hvala.
pascal.43 djelovic,
Prethodnih šest poruka stiglih preko Beointerneta su sadržale kod PCX unita, a pošto su bile previše velike ja sam zapakovao u datoteku prikačenu ovde i onda obrisao. Dakle: Subject: Yu.prog.pascal 1/6 Date: Mon, 09 May 1994 22:04:00 BS> Ostaje mi samo da probam. Mada, ja sam se nadao da moze sve iz paskala i BS> bez ASM (kojeg, usput receno, ne znam). No ipak, hvala. Izvini, zadnji put sam zaboravio da ti possaljem PCX.TPU... Ovo cce ti pomocci... unit PCX; ... pcxtpu.zip
pascal.44 dzakic, -> #36, saricl
> Ako neko nema gotovu rutinu nek mi bar kaže zašto > mi posle aktiviranja rutine za prekid zablokira > uređaj ciji je prekid korišten. Možda bi bilo lakše da si napisao o kom se uređaju radi, i koji si interapt preuzimao. Pitaću te samo ovo: jesi li vodio računa o tome da interapt procedura pamti fleg registar. Dakle: Procedure xxx; interrupt; <-- pri pozivu se desi jedno pushf begin tvoj deo; poziv stare procedure; <-- ona možda menja flegove ? tvoj deo; end; <-- izlazak vraća stare flegove sa popf
pascal.45 mvukolic,
Dok sam juče nešto radio sa FindFirst i FindNext, desilo mi se da se kao atribut za 2 direktorijuma javlja 48 ($30), a za atribute ostalim direktorijumima 16 ($10, uobičajena vrednost za dir-ove). Šta predstavlja atribut $30 i otkud taj poremećaj?
pascal.46 ognjen,
Uh, urnise me ovaj rename. :( Dakle, kazem: assign (fl, 'begin.ogi') I tu dodelim ime fajla promenjljivoj fl, onda: Rewrite (fl) Sada fajl sigurno postoji. :) Rename (fl, 'new.ogi') E, ovo me buni: - da li je promenjljivoj fl dodeljeno ime fajla new.ogi, tj fajl FL i dalje ostaje isti kakav je bio (otvoren), i samo mu je ime promenjeno, a "begin.ogi" ne postoji, - ili je FL i dalje ostalo "begin.ogi", a sve dosadasnja ceprkanja po fajlu su prebacena u "new.ogi", s tim da je "new.ogi" zatvoren, a "begin.ogi" ovoren i ima 0 bytes, - ili je nesto trece? PS: posle komande rename sledi rewrite (FL) i projavljuje gresku "Invalid file handle" ?!?!?!?!?!??!
pascal.47 omega, -> #46, ognjen
Ţ assign (fl, 'begin.ogi') Ţ Rewrite (fl) Ţ Rename (fl, 'new.ogi') Fajlove treba rename-isati PRE otvaranja datoteke, a ne posle. Ţ - da li je promenjljivoj fl dodeljeno ime fajla new.ogi, tj Ţ fajl FL i dalje ostaje isti kakav je bio (otvoren), i samo mu je Ţ ime promenjeno, a "begin.ogi" ne postoji, Postoje oba fajla, s tim sto ce drugi uvek biti velicine 0, a u prvom ce biti ono sto si napisao do rename-isanja (naravno ako si na kraju zatvorio fajl). Znaci prvi ostaje otvoren, ali za drugi nije ni bitno (?) jer je uvek velicine 0. Ţ PS: posle komande rename sledi rewrite (FL) i projavljuje gresku Ţ "Invalid file handle" ?!?!?!?!?!??! Zanimljivo, ali to se kod mene ne desava!?
pascal.48 drakce, -> #45, mvukolic
│ desilo mi se da se kao atribut za 2 direktorijuma javlja 48 ($30), a za │ atribute ostalim direktorijumima 16 ($10, uobičajena vrednost za │ dir-ove). Šta predstavlja atribut $30 i otkud taj poremećaj? └─────────── Nije poremećaj, samo su ta 2 direktorijuma imala setovan Archive flag ($20). Kada ispituješ da li je neki fajl direktorijum, nemoj koristiti jednakost: if (attribut = Directory) then writeln('To je direktorijum'); nego upotrebi logičko AND za ispitavanje Directory flag-a: if (attribut AND Directory) then writeln('To je direktorijum'); PS: Directory je konstanta iz DOS unita. Vrednost joj je $10.
pascal.49 dzakic, -> #45, mvukolic
> Dok sam juče nešto radio sa FindFirst i FindNext, desilo mi se > da se kao atribut za 2 direktorijuma javlja 48 ($30), a za > atribute ostalim direktorijumima 16 ($10, uobičajena vrednost za > dir-ove). Šta predstavlja atribut $30 i otkud taj poremećaj? Atribut čini više bitova, peti se pali kad je u pitanju direktorijum, a pored njega može biti upaljen u šesti, ako je setovan arhiv bit: Cnstant │ Value ════════════════ě════════ faReadOnly │ $01 faHidden │ $02 faSysFile │ $04 faVolumeID │ $08 faDirectory │ $10 faArchive │ $20 faAnyFile │ $3F Dakle, direktorijum ispituješ sa: if Attr and faDirecotry<>0 then ...
pascal.50 dzakic, -> #46, ognjen
> PS: posle komande rename sledi rewrite (FL) i projavljuje gresku > "Invalid file handle" ?!?!?!?!?!??! Mislim da je jedini bezbedan način za promenu imena - rename nad ˙zatvorenom˙ datotekom.
pascal.51 pedjak, -> #46, ognjen
> Rewrite (fl) > Rename (fl, 'new.ogi') Rename se radi na zatvorenim fajlovima...
pascal.52 mmitrovic, -> #36, saricl
Ů█▀█Ţ Potrebno je da po njenom startovanju Ů█▀█Ţ preuzima interapt, odnosno po zahtevu za interapt Ů█▀█Ţ startuje jednu drugu rutinu x.y nakon završavanja Ů█▀█Ţ posla rutine x.y vraća sve u pocetno stanje. procedure GetIntVec(IntNo: Byte; var Vector: Pointer); procedure SetIntVec(IntNo: Byte; Vector: Pointer); ove dve procedure uzimaju i postavljaju vektore. primer: SetIntVec($21,čMyProcedure); tvoja procedura mora biti deklarisana kao interrupt ili da je deklarises kao ASM pa da sam definises ulaz, posto interrupt procedure na pocetku stavlja sve registre na stek i postavlja DS na data segment. Za pozivanje drugih procedura koristi se stek pozivajuceg programa. Suzdrži se pozivanja procedure koje obilato koriste lokalne promenljive koje se inače alociraju na steku. Ako je u pitanju rutina za hardverski interrupt ne smes da koristis DOS procedure koje nisu reentrant, posto ces veoma verovatno da zabrljas DOS stek. Takođe se suzdrži pozivanja procedure koje obilato koriste lokalne promenljive koje se alociraju na steku. Ako si ostavio dosta HEAPa mozes slobodno da alociras memoriju, ili da koristis vec alociranu. Ako tvoja interrupt procedura treba da modifikuje neki registar moraces da koristis pseudo parametre (vidi Pascal help za "interrupt") a ne direktno menjanje. Toliko mi na pamet palo za sada. Ako ti nista ne pomogne, pisi opet. Ů█▀█Ţ E sad sve to treba da radi u realnom vremenu. Kakvo drugo vreme postoji? Ů█▀█Ţ Ako neko nema gotovu rutinu nek mi bar kaže zašto Ů█▀█Ţ mi posle aktiviranja rutine za prekid zablokira Ů█▀█Ţ uređaj ciji je prekid korišten. Ovo bas nisi jasno objasnio, koji uredjaj, koji prekid? Baci nam i tvoju proceduru ako nije tajna.
pascal.53 kriss,
Jel palo nekom napamet da posle uvođenja naredbe SYSM napravi malo programče za 'obradu' exec-a? :) Da posle svakog MAIL/GROUP/CONF SEND/REPLY doda /R? :)
pascal.54 markom, -> #53, kriss
*** Jel palo nekom napamet da posle uvođenja naredbe SYSM napravi malo *** programče za 'obradu' exec-a? :) Da posle svakog MAIL/GROUP/CONF *** SEND/REPLY doda /R? :) Zašto kad to možeš uraditi i u SOR-u ?
pascal.55 postmast,
Subject: Proenljivi zapisi Date: Sun, 15 May 1994 12:18:17 CD> kao type. Jednostavno, napravis mali pod-program koji ce da cita sam CD> podatke, bez obzira na strukturu. Evo primera: PS> PS> Eh, radi se o datotekama reda od par do par desetina megabajta. Ovaj PS> nacin bi to radio mnogo sporo. Razmisljao sam vec o tome. U Moduli bi to ne bi bio preteran problem - definises sa TYPE sve moguce strukture, a u kasnijem delu odaberes koja ti treba i definises nov TYPE koji ima osobine jednog od vec definisanih TYPE-ova i radis preko njega. Mozda moze slicno i u Pascalu, ne znam, ovakve stvari nikad nisam radio u njeu... ... QWK, QWK, QWK - mating call of the mail duck. * Origin: Prometheus BBS - The Northern Frontier - (38:111/107)
pascal.56 omega, -> #54, markom
Ţ *** programce za 'obradu' exec-a? :) Da posle svakog MAIL/GROUP/CONF Ţ *** SEND/REPLY doda /R? :) Ţ Ţ Zasto kad to mozes uraditi i u SOR-u ? A je l' moze u SDW-u?
pascal.57 omega,
Povodom direktnog gadjanja memorije, evo procedure koju sam malo sredio... print.pas
pascal.58 saricl, -> #44, dzakic
%%% Možda bi bilo lakše da si napisao o kom se uređaju radi, i koji si %%% interapt preuzimao. Pitaću te samo ovo: jesi li vodio računa o tome Ovo je taj Pascal program. Inace on je skroz pojednostavljen, a to je zato što još nije konacno zavrešen. Program Pritisnut; Uses DOS, CRT; var tim : String; vectorPrekida : pointer; Procedure prk; interrupt; Begin clrscr; tim:=' P R I T I S N U T J E T A S T E R '; Writeln(tim); end; Begin Getintvec($0b,vectorPrekida); Setintvec($0b,@prk); Delay(5000); SetIntvec($0b,vectorPrekida); end.
pascal.59 markom, -> #56, omega
*** A je l' moze u SDW-u? Pa gde god ti se daje mogućnost da edituješ komandnu liniju, može, samo se tre- ba toga setiti, i naravno, povremeno pratiti SEZAM:sor ;>
pascal.60 .djn,
Radi periodicnog angazovanja potreban mi je jedan ili vise saradnika koji poznaju neke ili sve od navedenih stvari: - Borland Pascal 7.0 with Objects, - Turbo Pascal, - Turbo Pascal for Windows, - objektni Pascal, - Turbo Vision, - Object Windows Library, - Paradox Engine za Pascal, - pravljenje komunikacionih programa u Pascalu... Zainteresovane molim da mi ostave poruku sa brojem telefona na mail. Dejan
pascal.61 omega, -> #59, markom
Ţ Pa gde god ti se daje mogucnost da editujes komandnu liniju, moze, samo se :) Pa komandnu liniju editujes rucno, a ne automatski, zar ne?
pascal.62 markom, -> #61, omega
*** :) Pa komandnu liniju editujes rucno, a ne automatski, zar ne? Ne znam sa SDW, ali u SOR-u može da se namesti da umesto MAIL SEND piše i POŠA- LJI POŠTU, ako hoćeš ...
pascal.63 dzakic, -> #58, saricl
> tim:=' P R I T I S N U T J E T A S T E R '; > Writeln(tim); > Getintvec($0b,vectorPrekida); Da nisi hteo da uzmeš int 09? On se generiše prilikom svakog pritiska i otpuštanja tastera... Drugi razlog zašto ne radi (umrtvi se mašina?) je zato što u svojoj rutini za obradu prekida nigde nemaš pozivanje originalne procedure pa računar više nema podatak o tome šta se dešava za tastaturom... Adresu originalne procedure si upamtio u 'vektorPrekida'. Deklariši ga sa vektorPrekida:Procedure;, a pozivaj ga sa asm pushf end; vektorPrekida; Naravno, fali i asm mov ax,SEG @data mov ds,ax end; na početku interapt procedure.
pascal.64 kriss,
Ako neko reši, svaka mu čast, ja više nemam živce da pogađam ko je lud, me or TP 6.0 ;) Nije veliko ni teško, ko hoće da se zanima ima sve objašnjeno u arhivi. I ko ima nerve ... ;) evo.zip
pascal.65 mvukolic, -> #64, kriss
> Ako neko reši, svaka mu čast, ja više nemam živce da pogađam ko je lud, Greška je u zaglavlju procedure Unos. Treba da stoji 'var kraj:boolean', a ne 'kraj:boolean'.
pascal.66 kriss, -> #65, mvukolic
˙˙ Greška je u zaglavlju procedure Unos. ˙˙ Treba da stoji 'var kraj:boolean', a ne 'kraj:boolean'. Zašto? Šta treba zameniti? Var se odnosi i na kraj ... Za nepupućene, zaglavlje izgleda ovako: Procedure Unos (x,y,no:byte; Var g:string; kraj:boolean); I TP uporno odbija da vrati kraj pri pozivu ...
pascal.67 d.stamen, -> #66, kriss
> Zasto? Sta treba zameniti? Var se odnosi i na kraj ... > > Za nepupucene, zaglavlje izgleda ovako: > > Procedure Unos (x,y,no:byte; Var g:string; kraj:boolean); Ovako kako si napisao var se definitivno ne odnosi na promenljivu kraj. Ono sto tebi treba, da bi kraj bila ulazno/izlazna promenljiva je Procedure Unos (x,y,no:byte; Var g:string; Var kraj:boolean); u suprotnom promenljiva kraj je samo ulazna za proceduru Unos. Znaci poslusaj savet MVukolic-a i sve ce biti OK.
pascal.68 mvukolic, -> #66, kriss
> ˙˙ Greška je u zaglavlju procedure Unos. > Zašto? Šta treba zameniti? Var se odnosi i na kraj ... > Procedure Unos (x,y,no:byte; Var g:string; kraj:boolean); > I TP uporno odbija da vrati kraj pri pozivu ... Procedure Unos (x,y,no:byte; var g:string; var kraj:boolean); Normalno da ne vraća kraj pri pozivu zato što gore ne stoji 'var'. Ako ne staviš 'var' šta god da uradiš sa promenjivom u proceduri, njena vrednost se neće promeniti (tj. posle kraja izvršavanja procedure, vrednost ostaje ista kao i pre poziva). Elementarno znanje Pascala...
pascal.69 kriss, -> #68, mvukolic
˙˙ Procedure Unos (x,y,no:byte; var g:string; var kraj:boolean); Hvala, radi. Mislio sam da se Var odnosi na sve što ga sledi. Pogršno sam naučio ... ˙˙ Elementarno znanje Pascala... Kad zatražim pomoć ne činim to iz hira već zato što ne znam kako da rešim određen problem. Kada umem nekom da pomognem, pomognem. Nikada ne 'poklapam' sa ovakvim izjavama ...
pascal.70 zloboleon, -> #64, kriss
ňňň Ako neko reši, svaka mu čast, ja više nemam živce da pogađam ňňň ko je lud, me or TP 6.0 ;) Jesi li probao sa TP 7.0 ;) ?
pascal.71 mmitrovic, -> #63, dzakic
Ů█▀█Ţ asm pushf end; Ů█▀█Ţ vektorPrekida; U ovom slucaju (sa int 09) bi radilo, ali ako su flagovi važni neće raditi pošto će na stek doći flag registar koji je handler već menjao. Tada mora da koristi pseudo parametar Flags: asm push Flags end; Za način definisanja pseudo-parametara za interrupt proceduru pogledajte BP help za rezervisanu reč INTERRUPT. Ů█▀█Ţ asm mov ax,SEG čdata Ů█▀█Ţ mov ds,ax Ů█▀█Ţ end; Ů█▀█Ţ fali na početku interapt procedure. pocetak interrupt procedure (init (ili begin) kod) je: push ax ; registri na stek (njima se posle pristupa .. ; preko pseudo-parametara (read help!)) push es push bp ; postavlja stek frame na steku prekinutog mov bp,sp ; programa sub sp,Local ; lokalne promenljive mov ax,SEG čDATA ; *!*!*!*!*!*!*!*!*!*! mov ds,ax ; !*!*!*!*!*!*!*!*!*!* ....... ; rutina tako da se ovo što predlažeš već dešava automatski.
pascal.72 mmitrovic, -> #55, postmast
Subject: promenljivi slogovi. Ů█▀█Ţ PS> Eh, radi se o datotekama reda od par do par desetina Ů█▀█Ţ PS> nacin bi to radio mnogo sporo. Razmisljao sam vec o tome. Ů█▀█Ţ Ů█▀█Ţ U Moduli bi to ne bi bio preteran problem - definises sa Nije ni ovde neki problem, važna je samo jedna struktura: FileRec iz Dos unita. Ona pokriva i netipizirane i tipizirane datoteke. Tačnije važno je polje strukture zvano RecSize. U helpu se nalazi pod TFileRec, ali se u stvarnosti ipak zove FileRec (Borlandov propust). Kad mu se zada var F: File of <nešto>; on automatski postavlja RecSize na veličinu tipa. dok kod var F: File; to radi user preko reset (ili rewrite) (sećate se drugog parametra?) a po defaultu je 128 bajtova?? (nemam pojma što bas tolko). Dakle evo primer koji bi trebao da radi (bar je sintaksno ispravan), nisam ga nikad probao jer mi nije trebao, teorijski šljaka. uses Dos; type PWord = žWord; var F: File of Word; š recsize=2 ć a: LongInt; begin assign(F,trte-mrte); reset(F); š u ovom trenutku RecSize postaje 2 ć FileRec(F).RecSize:=SizeOf(LongInt); š RecSize postaje 4 ć š Može i neki drugi broj npr. 234 ć š ili čak i varijabla ć read(F,PWord(ča)ž); š pointer typecast je neophodan da bi ć š se zavarao BP compiler ć š učitace 4 bajta (LongInt) umesto 2 (Word). ć ... - Neat trick, ha? -
pascal.73 mmitrovic, -> #58, saricl
Ů█▀█Ţ var tim : String; Ů█▀█Ţ Ů█▀█Ţ tim:=' P R I T I S N U T J E T A S T E R '; Ů█▀█Ţ Writeln(tim); Ne valja ti rabota. ;) Imaćeš dve kopije stringa u memoriji jednu u Code a drugu u Data Segmentu. Stavi samo writeln(' P R I ........ E R '); Ovo nije fatalna greška ali bez potrebe zauzima mesto u Data segmentu.
pascal.74 mmitrovic, -> #66, kriss
Ů█▀█Ţ Zašto? Šta treba zameniti? Var se odnosi i na kraj ... Ů█▀█Ţ Za nepupućene, zaglavlje izgleda ovako: Ů█▀█Ţ Procedure Unos (x,y,no:byte; Var g:string; kraj:boolean); Ů█▀█Ţ I TP uporno odbija da vrati kraj pri pozivu ... Var koji definiše promenljive i Var u definiciji formalnih parametara su dve sasvim različite stvari. U ovom drugom slučaju označava parametar koji će biti prenet kao adresa te se svaka promena nad vrednošću promenljive u proceduri automatski reflektovati na stvarnom parametru. Opseg ovog Var je do sledećeg ; tako da se kod tebe ne odnosi i na kraj. Kad smo već kod parametara, da li ste znali da postoje i const parametri. Pr: procedure XYZ (const a); prima kao stvarni parametar samo promenljivu, i prenosi je kao adresu (slično kao i var) ali ne dozvoljava menjanje parametra iako postoji dostupna adresa na steku. procedure XYZ (const a:word); prima kao stvarni parametar i konstantu i varijablu, i prenosi je kao kopiju vrednosti (slično kao bez var) ali ne dozvoljava menjanje parametra iako postoji dostupna kopija vrednosti na steku. Međutim parametar se može menjati iz internog asemblera u oba slučaja. Mešanje var i const ne radi. BP Help ne pominje ništa o ovome. Bug or Feature?
pascal.75 dpriest...,
Hi. Ako vas ne mrzi skinite ovaj pokusaj pravljenja jednog efekta mora i recite mi onda da li vam to lici na vodu i da li ga vredi stavljati u jedan intro. Radi *samo za tridend* kartice za sada, pa ako povoljno prokomentarisete mozda ce raditi i za ostale... Unapred hvala, DP... PS Nema veze sa temom, ali ga napisah u pascalu, i eto ga ovde... :) w.arj
pascal.76 postmast,
Subject: pascal Date: Tue, 17 May 1994 10:40:00 "V> From: "Marko Vukolic" <mvukolic@sezam.UUCP> "V> Dok sam juce nesto radio sa FindFirst i FindNext, desilo mi se "V> da se kao atribut za 2 direktorijuma javlja 48 ($30), a za atribute "V> ostalim direktorijumima 16 ($10, uobicajena vrednost za dir-ove). "V> Sta predstavlja atribut $30 i otkud taj poremecaj? Evo tabele atributa datoteka, koja se inace nalazi u TP Help-u: Constanta Vrednost =================== ReadOnly $01 Hidden $02 SysFile $04 VolumeID $08 Directory $10 Archive $20 AnyFile $3F =================== Atribut $10 znaci da je nadjena datoteka u stvari direktorijum. Atribut $30 je u stvari zibr atributa $10 i $20 sto znaci da je to direktorijum ali sa ukljucenim Archive flegom. On se koristi za oznacavanje sta je izmenjeno od poslednjeg BACKUP-a.. Nadam se da ce biti od pomoci. Pozdrav Predrag Supurovic, 38:101/101@setnet.org broker@osmeh.fon.uni-bg.yu ... Hej! Jesi li postao Clan YUCCA? * Origin: Oreska BBS, UZICE = SF BIBLIOTEKA = SETNet: (38:101/101)
pascal.77 postmast,
Subject: .PCX file reader Date: Mon, 16 May 1994 10:59:00 Pozdrav! Dat je jedan ASEMBLER-ski listing za citanje .PCX grafickih fajlova. Sve ovo je moguce uraditi i iz PASKAL-a. Da li je bolje raditi ASEMBLER-om ne znam, ali imam UNIT koji cita .PCX fajlove. Ovo je napisao jedan moj ortak za nas program i stvar radi. Doduse, nama je trebao UNIT za citanje mono PCX slika, ali imam PCX TECHNICAL REFERENCE, u kome je opisana stuktura PCX formata. Nisam je sada poslao, jer je dugacak nekih 7-8 stampanih strana. Koga zanima, moze dobiti informacije i o drugim stvarima koje se mogu raditi iz PASKAL-a (promena oblika kursora, emulacija sivih boja, identifikacija IDE diskova,...). Strajder P.S. Ako ti treba ovaj listing, poslacu ti ga. Ostavi poruku. Isto vazi i za uputstvo. Mogu ti dati i za TIFF i GIF formate. A ako imas jos neki problem, pitaj. ... Najveca brzina u svemiru je Brzina Gluposti! * Origin: *TAURUNUM BBS +381 11 2354-253, 22 do 07* (38:38/115.1)
pascal.78 postmast,
Subject: Turbo Pascal 6.0 Date: Wed, 18 May 1994 04:28:04 MS> Kud ces polaganije od ovoga. :)) 3-4 godine radim na TP-u, ali eto, > kad uleti asembler u paskal, onda, hoces-neces, pomislis: 'mozda bi ovo > islo brze da je u asm?' I, kako to vec ide, poljubis sve knjige o tp-u, a > bacis se na trazenje help-a za tp 6.0. Ipak, u pravu si: ako ne laganije > uciti, onda svakako detaljnije. Vidim da si sam najbolje otkrio problem... Mogla bi ti pomoci knjiga koja se distribuira o fajlu (tpr-book.*), imas je i na FonFile Serveru. Help ti nece mnogo pomoci oko pointera ali knjige svakako hoce. MS> No, to je OK, ali jel' moze kako sa se eliminise ono mrljanje oko misa. > Da nije greska u mom drajveru? ( Ili treba laganije...:)))) Hmm, nisi citirao pa ne znam o cemu se radi. Siguran sam da ti nisam odgovarao u vezi mrljanja misa jer o tome ne znam uglavnom nista. Sto se tice laganijeg tempa, pa pomenuo sam ga samo jednom i mislio sam na pointere i slicno. Normalno je da pretpostavim da je neko uleteo u nebrano grozdje kada pogresno zove Viziju i ne zna sta su pointeri, molim te da se ne ljutis zbog toga. Inace iako znam da radim sa pointerima, skoro nikad ih ne koristim jer smatram da ako razmisljam na Pascal-u, onda mi padaju na pamet samo struktuirana resenja koja su toliko dobra da za njih ne trebaju pointeri koje sam nekako povezao sa brljotinama pa ih uglavnom izbegavam. Uglavnom pointere smatram vestackim delom paskala pa ih i ne koristim, kao ni goto (cak ni u bejziku ga ne koristim). Zeljko Dakic a.k.a. DesireCo. -- SPEED 1.30 [NR]: REALITY.SYS Corrupted: Re-boot universe? (Y/N/Q) * Origin: Oreska BBS, UZICE = SF BIBLIOTEKA = SETNet: (38:101/101)
pascal.79 postmast,
Subject: Proenljivi Zapisi Date: Wed, 18 May 1994 04:28:06 PS> Eh, radi se o datotekama reda od par do par desetina megabajta. Ovaj > nacin bi to radio mnogo sporo. Razmisljao sam vec o tome. HI! Nisam video poruku na koju ti je on odgovorio. U cemu je problem, mozda mogu da pomognem ? Zeljko Dakic a.k.a. DesireCo. -- SPEED 1.30 [NR]: In DoubleSpace, no one can hear your files scream. * Origin: Oreska BBS, UZICE = SF BIBLIOTEKA = SETNet: (38:101/101)
pascal.80 postmast,
Subject: Array Date: Wed, 18 May 1994 04:28:08 MS> Packed Array[1..12,char] of String[20] BS> A sta mu dodje ovo 'packed' ? Uglavnom nista. Turbo Pascal to ignorise a ta rec se koristi u standardnom pascalu za neko muljanje. Ostala je da bi bio kompatibilan sa standardnim pascalom. Zeljko Dakic a.k.a. DesireCo. -- SPEED 1.30 [NR]: Radite kako vam kazem, a ne kako ja radim! * Origin: Oreska BBS, UZICE = SF BIBLIOTEKA = SETNet: (38:101/101)
pascal.81 mvukolic, -> #69, kriss
> Kad zatražim pomoć ne činim to iz hira već zato što ne znam kako da > rešim određen problem. Kada umem nekom da pomognem, pomognem. Nikada ne > 'poklapam' sa ovakvim izjavama ... Tačno ono što sam ja uradio u svojoj prvoj poruci, a ti nisi poslušao.
pascal.82 omega, -> #74, mmitrovic
Ţ Kad smo vec kod parametara, da li ste znali da postoje i const Ţ parametri. Pr: Ţ procedure XYZ (const a); Je l' nekom pada na pamet za sta bi ovo moglo da se koristi?
pascal.83 gpplanum,
Evo domaceg zadatka za sve paskal programere kojima je dosadno: Rezidentni programcic koji ce svirnuti svaki put kada se neki taster pritisne(radi stvaranja utiska klickanja tastature). Slabo stojim sa TSR programima,a zeleo bih to da naucim! P.S.Ne bi trebalo da bude tesko,ali ni doneti pivo nije tesko,a plavusa ne zna;) -Ju!Sine sa kim se ti uporedjujes! -Sto mama i plavuse su ,ooovaj,i plavuse su, I PLAVUSE SU KORISNE!!;)
pascal.84 dgrbic, -> #74, mmitrovic
:: Mešanje var i const ne radi. Isto ko ni mešanje deklaracija far i near u C-u. Jasno da ne radi, kad su to dve suprotne stvari.
pascal.85 pedjak, -> #83, gpplanum
> Evo domaceg zadatka za sve paskal programere kojima je dosadno: > Rezidentni programcic koji ce svirnuti svaki put kada se > neki taster pritisne(radi stvaranja utiska klickanja tastature). Takav programčić imaš u helpu, uz objašnjenje procedure Keep.
pascal.86 vitez.koja, -> #83, gpplanum
#=> Evo domaceg zadatka za sve paskal programere kojima je #=> dosadno: Rezidentni programcic koji ce svirnuti svaki #=> put kada se neki taster pritisne(radi stvaranja utiska #=> klickanja tastature). Baš taj primer (inače trivijalan) dat je u TP helpu za funkciju keep.
pascal.87 jasicp, -> #74, mmitrovic
> procedure XYZ (const a); > prima kao stvarni parametar samo promenljivu, i prenosi je kao adresu > (slicno kao i var) ali ne dozvoljava menjanje parametra iako postoji > dostupna adresa na steku. Imam TP6.0. Da li ovo radi samo u BP-u ? Ima li BP ( i TP7.0 ) znacajno sire biblioteke objekata i mogu li koristiti uz 6.0 bez problema / valjda mogu...
pascal.88 gpplanum, -> #86, vitez.koja
># => Evo domaceg zadatka za sve paskal programere kojima je ># => dosadno: Rezidentni programcic koji ce svirnuti svaki ># => put kada se neki taster pritisne(radi stvaranja utiska ># => klickanja tastature). > > Bas taj primer (inace trivijalan) dat je u TP helpu za funkciju > keep. Da,bas sam majmun! Ali,sta mogu,markom me zaplasio;> P.S.Sada znam RFM!! Ali ko ce ceo help da cita.
pascal.89 gpplanum, -> #75, dpriest...
> mora i recite mi onda da li vam to lici na vodu i da li ga > vredi stavljati Pa,ako ce se inicijalizovati ovako dugo;)bolje nemoj! Pozdrav,gpplanum! P.S.Meni vise lici na maglu(majke mi!).
pascal.90 kriss, -> #81, mvukolic
˙˙ Tačno ono što sam ja uradio u svojoj prvoj poruci, a ti nisi ˙˙ poslušao. Nisam jer me je zanimalo _zašto_ je to tako. A kasnije sam (kad si i objasnio zašto je to tako) i poslušao - ispravio.
pascal.91 kriss, -> #74, mmitrovic
˙˙ reflektovati na stvarnom parametru. Opseg ovog Var je do ˙˙ sledećeg ; tako da se kod tebe ne odnosi i na kraj. Aaaa, e to mi nije bilo jasno. :) Mislio sam da se Var odnosi na sve što ga sledi. Hvala. :)
pascal.92 mmitrovic, -> #84, dgrbic
Ů█▀█Ţ Isto ko ni mešanje deklaracija far i near u C-u. Ů█▀█Ţ Jasno da ne radi, kad su to dve suprotne stvari. Pa nisu baš suprotne stvari, bar sa stanovišta koda (const a) i (var a:tip) obe ostavljaju 32bit pointer (const a:<tip>) i (a:<tip>) obe ostavljaju kopiju velicine <tip> far i near se razlikuju po veličini (32 i 16 bita).
pascal.93 mmitrovic, -> #77, postmast
Ů█▀█Ţ identifikacija IDE diskova,...). Ů█▀█Ţ i za uputstvo. Mogu ti dati i za TIFF Ove dve stvari bi dobro došle.
pascal.94 mmitrovic, -> #80, postmast
Ů█▀█Ţ BS> A sta mu dodje ovo 'packed' ? Ů█▀█Ţ Uglavnom nista. Turbo Pascal to ignorise a ta rec se koristi u Ů█▀█Ţ standardnom pascalu za neko muljanje. Ostala je da bi bio kompatibilan packed služi da označi "pakovani niz". Primer: da ne bi kucao: const a: array Š1..5Ć of char = ('a','b','c','d','e') kucaš const a: packed array Š1..5Ć of char = ('abdef'); Borlandovi Pascal-i ignorišu packed jer se svi nizovi u TP i BPu podrazumevaju kao packed. Korisna stvar za definisanje ASCIIZ stringova (bez bajta za dužinu, sa #0 na kraju).
pascal.95 markom, -> #88, gpplanum
*** Ali,sta mogu,markom me zaplasio;> Dobro ono je trivijalan primer, ali za neki komplikovaniji TSR, hmm, mora da se pazi na sve živo ... *** P.S.Sada znam RFM!! Jock, RTFM ...
pascal.96 saricl, -> #63, dzakic
|||| asm pushf end; |||| vektorPrekida; |||| asm mov ax,SEG @data |||| mov ds,ax |||| end; Jel može detaljnije objašnjenje šta ovo radi. Inace u toj proceduri jeste bio int09 ali mi je krajnji cilj int5 (LPT 2)
pascal.97 asrdjan,
Da li bi neko mogao da mi malo objasni pojam pointera. Npr. ako treba da napravim niz od n članova,a n mi je poznato tek nakon ulaska u program. Thanx a lot:). - Anri The III -
pascal.98 mmitrovic, -> #87, jasicp
Ů█▀█Ţ Imam TP6.0. Da li ovo radi samo u BP-u ? Ima li BP ( i TP7.0 ) Ů█▀█Ţ znacajno sire biblioteke objekata i mogu li koristiti uz 6.0 bez Ů█▀█Ţ problema / valjda mogu... Za prvo, pojma nemam, više ne držim 6.0, probaj pa vidi. Što se tiče biblioteka objekata, van TVision-a BP ima malo korisnih stvari kao što je TCollection i njegovi naslednici, pogledaj help za unit OBJECTS. Tu su svi objašnjeni. BP7 biblioteke se ne mogu koristiti u 6.0 jer se razlikuju TPU fajlovi, ali OBJECTS postoji i u TP 6.0.
pascal.99 dejanr, -> #97, asrdjan
>> Npr. ako treba da napravim niz od n članova,a n mi je poznato tek nakon >> ulaska u program. To se radi otprilike ovako: type nizt: array [1..65000] of byte; nizp: ^niz; var niz: nizp; n: longint; begin readln(n); getmem(niz, n); niz^[1]:=123; niz^[n-1]:=222; itd end.
pascal.100 postmast,
Subject: pascal Date: Mon, 23 May 1994 09:48:04 To: "Miljan Mitrovic" <mmitrovic@sezam.UUCP> "M> Nije ni ovde neki problem, vazna je samo jedna struktura: "M> FileRec iz Dos unita. Ona pokriva i netipizirane i tipizirane Ovo je bilo veoma zanimljivo. Iako mi nije direktno resilo problem, dalo mi je ideju kako da ga resim. Hvala, broker ... Ups. Ostadoh bez tagova... * Origin: Oreska BBS, UZICE = SF BIBLIOTEKA = SETNet: (38:101/101)
pascal.101 dzakic, -> #96, saricl
>> asm pushf end; >> vektorPrekida; >> >> asm mov ax,SEG @data >> mov ds,ax >> end; > Jel može detaljnije objašnjenje šta ovo radi. Kad pozivaš proceduru preko pointera na nju, paskal izvrši običan far call, dok se interapt procedura završava instrukcijom IRET. Iret skuplja sa steka adresu za povratak, ali isto tako i fleg registar, pa zato pre takvog pozivanja treba flegove ručno gurnuti na stek (sa pushf). A punjenje ds registra adresom data segmenta je neophodno jer u svojoj interapt proceduri koristiš globalne promenljive koje se tamo nalaze. Paskal očekuje da DS registar uvek ukazuje na data segment, što nije slučaj kada nastane interapt (pritisnut taster) i ds registar ostane da ukazuje na data segment aplikacije koja se u tom trenutku izvršava. Ti onda treba da sačuvaš ds, da mu daš tačnu adresu (na opisan način) i po završetku opet vratiš nazad.
pascal.102 dgrbic, -> #92, mmitrovic
:: (const a) i (var a:tip) obe ostavljaju 32bit pointer :: (const a:<tip>) i (a:<tip>) obe ostavljaju kopiju :: velicine <tip> Nije bitno to, nego log'ka! Kad mu kažeš da je VAR onda znači da oćeš da ga menjaš, a kad mu kažeš CONST da ne nameravaš tu ništa da menjaš. I tu nije bitno što se u oba slučaja prenosi far pointer, nego što je navođenje oba prefiksa kontradikcija, da ne kažemo paradox :) Pascal je, sa te strane, mnogo restriktivniji od c-a. TP je, istina, olabavio provere (deklaracija var a - bez tipa - npr.) Ono što se mnogim programerima osobito dopada kod Wirthovih jezika upravo stroga provera tipova, što programera sprečava da radi nelogične stvari (koje bi kompajler mogo da proguta bez problema, ali...) Uvećavanje pointera je tipičan primer sprečavanja nelogičnih stvari, koje su neki put tako korisne... za razliku od const var a ;)
pascal.103 mmitrovic, -> #101, dzakic
Ů█▀█Ţ call, dok se interapt procedura završava instrukcijom IRET. Iret Ů█▀█Ţ skuplja sa steka adresu za povratak, ali isto tako i fleg registar, pa Ů█▀█Ţ Paskal očekuje da DS registar uvek ukazuje na data segment, što nije Ů█▀█Ţ slučaj kada nastane interapt (pritisnut taster) i ds registar ostane da Ů█▀█Ţ ukazuje na data segment aplikacije koja se u tom trenutku izvršava. Ti Da li vi ljudi imate ignore za mene, ili ne čitate moje poruke iz principa?
pascal.104 dzakic, -> #94, mmitrovic
> Korisna stvar za definisanje ASCIIZ stringova (bez bajta za > dužinu, sa #0 na kraju). const a:pchar='abcde'; ?
pascal.105 dzakic, -> #103, mmitrovic
> Da li vi ljudi imate ignore za mene, ili ne čitate moje poruke > iz principa? Nemam ignore ni na koga. U poslednje vreme ne pratim konferencije baš sa posebnom pažnjom pa mi je tvoja poruka promakla. Ok, nisam znao da paskal automatski postavlja DS registar u procedurama deklarisanim sa interrupt. Ako sam i znao, izgubio sam iz vida, jer TSR pišem u asembleru, ne u paskalu. Hteo sam samo da pomognem čoveku i naveo razloge koji su možda mogli da budu uzrok njegovih problema.
pascal.106 toca,
Kako je i da li je uopšte moguće iz TP-a startovati BAT fajl? Konkretno verzija 6.0.
pascal.107 bigbrada, -> #106, toca
*>> Kako je i da li je uopste moguce iz TP-a startovati BAT fajl? *>> Konkretno verzija 6.0. Pa ovako nekako... ... SwapVectors; Exec ('C:\Ime.Bat', ''); SwapVectors; ...
pascal.109 ognjen, -> #99, dejanr
)-> type nizt: array [1..65000] of byte; Ovako se zauzme cela memorija dozvoljena za variables (64 Kb), i nema meste ni za jednu promenjljivu. I jos ako se stavi ovo, indexi mogu ici do 65k ali vrednosti clanova u nisu ne mogu biti veci od 356. Sto je niz... :) Znam, znam, moze se staviti of integer, ali je onda niz duplo "kraci". Kako recimo da definisem ovkakav niz: type korisnik = record ime : String[15] ; prezime : String[30] ; alias : String[14] ; broj_poziva : LongInt ; end; )-> nizp: ^niz; I, nek neko najzad objasni sta su to pointeri, ne kapiram nista... :( )-> var niz: nizp; NizP - vidi Niz; Niz - vidi NizP ???? :) )-> getmem(niz, n); Da li se ovako oslobadja mamorija za niz, tako da onih 64Kb ostaje slbodno za druge promenjljive?
pascal.110 ognjen,
M A I L S O R T !!! [jos ne radi] :( Radi se o programu koji (bi trebao da) sortira mailove, ustvari, sve sto radi je menja njihove brojeve. Mislio sam i kasnije kad razvijem program da uvedem i neku statistiku, ali naidjoh na ove bug-ove, i ne mogu da skontam sta nije u redu... Dakle, imena fajlova sa mail porukama se unose iz komandne linije (MAILSORT msg.1 msg.2) i pocinje obrada fajlova. Pretpostavlja se da ste fajlove uneli redom po datumu, tj, u prvom navedenom fajlu se nalaze najstarije poruke, u drugom novije... Dakle, program uzima prvi fajl (pa drugi, pa treci, kroz petllju For I := 1 to ParamCount) i trazi tring od 25 znakova "=" (pocetak poruke). Kada ga nadje, obradjuje heder, i u izlazni fajl upisuje istu tu poruku, ali sa promenjenim brojem. (pocinje se od 1, pa 2, 3, 4, 5...). I u jednom nizu se pamti originalni broj, kako bi se pri nailasku na string "Odgovor na" u hederu stavio tacan broj poruke na koju se odgovara. Sve bi trebalo da radi lepo, i radi, sve dok ne stigne do neke poruke (jednom je to bila poruka 90, drugi put 320 (zadnja u fajlu)...) gde prepise celu poruku, ali onda, kada treba da upise futer u fajl (ono ---(...)----brojporuke---) zbuni se, i proizvoljan broj "-" (uvek manji od trazenog (44)), i tu stane. Kraj. I, sve ovo sam napisao da bih vam rekao samo jedno: UPOMOOOOC!