PCPROG.2

06 Nov 1992 - 26 Jul 1993

Topics

  1. algoritmi (223)
  2. ms.dos (250)
  3. asembler (141)
  4. jezici (278)
  5. pascal (1307)
  6. cccc (752)
  7. cpp (91)
  8. clipper (1027)
  9. baze.podataka (229)
  10. razno (379)
  11. van.teme (189)
  12. basic (56)

Messages - pascal

pascal.953 dejanr,
========== pascal/turbo #4645, from klrv, 1858 chars, Mon Apr 26 16:07:55 1993 Comment(s). ---------- I just found a small (but annoying) bug in the STony Brook Pascal compiler. The program: -------------------------------------------------------- PROGRAM bugtest; VAR buffer : array[1..100] of char; bb : char; PROCEDURE myproc (VAR b : char); BEGIN b := buffer[6] END; BEGIN bb := '6'; buffer[6] := '5'; myproc(bb); writeln (bb) END. -------------------------------------------------------- I compile this program with the option //DATA:L. I don't specify any other options. bb is incorrect (it's not '5'). If I compile without any option, bb is '5'. The code generated is: 9 b := buffer[6] 0003 B8 0127 MOV AX, SEG _BSS 0006 8E C0 MOV ES, AX 0008 C4 5E 04 LES BX, WORD PTR [BP+4] 000B 26 A0 0005 MOV AL, BYTE PTR _BSS+5 000F 26 88 07 MOV BYTE PTR ES:[BX], AL At address 0006, ES is loaded with the segment of "buffer". This is the segment that should be used in the statement at address 000B. Unfortunately, ES is overwritten by the segment of "b" at address 0008. Result: the statement at address 000B, which is preceeded by the "ES:" prefix (hex 26), [by the way, the ES: prefix is _not_ displayed in the machine code in the rightmost column], is using the ES value which was intended for the statement at address 000F. The bug appears to happen during the peephole optimization. If I specify //NOOPTIMIZE:H, the correct code is generated: 0003 B8 0002 MOV AX, SEG _BSS 0006 8E C0 MOV ES, AX 0008 26 A0 0005 MOV AL, BYTE PTR _BSS+5 000C C4 5E 04 LES BX, WORD PTR [BP+4] 000F 26 88 07 MOV BYTE PTR ES:[BX], AL (which, by the way is just as efficient as the "optimized" one, but has the added benefit of being correct :-) :-)
pascal.954 paki, -> #951, spantic
­> U svakom slučaju ne preporučujem knjige Duška Savića. Sam sam ­> svojevremeno kupio njegovu knjigu "Turbo Pascal - naredbe i ­> objekti" i ne mislim da sam iole pametno uložio novac. Nisi jedini :(((
pascal.955 dr.grba, -> #951, spantic
>> U svakom slucaju ne preporucujem knjige Duska Savica. Sam sam svojevremeno >> kupio njegovu knjigu "Turbo Pascal - naredbe i objekti" i ne mislim da sam >> iole pametno ulozio novac. Znaci, nisam jedini ))):
pascal.956 miro, -> #940, dzakic
ű> na disk. Opet, ako si siguran da je heap na početku bio prazan ű> i da je u njemu ˙samo˙ tvoje stablo, onda možeš da snimiš deo ű> memorije od HeapOrg do HeapPtr, zajedno sa stanjem pointera ű> HeapPtr i da ga, I još da je siguran da je stanje DOS memorije isto i pri drugom ulasku i da je upamtio i par neophodnih pointera i... ű> alociranje memorije. Valjalo bi probati... ...ako ima vremena za gubljenje.
pascal.957 pedjak, -> #951, spantic
> Pa nemaš baš neki izbor. Ako hoćeš da naučiš Pascal onda je najbolja > knjiga tvoraca Pascala ( pogotovo ako si već malo familijaran > sa Knjiga je sasvim ok, ali u vreme kad sam učio pascal to sam radio iz Nolitove knjige "Računarstvo sa programskim jezikom Pascal". Inače ova knjiga je prevod sa slovenačkog i svojevremeno se koristila u deželi kao udžbenik. Knjiga je vrlo fina, opisuje se najstandardniji pascal bez ikakvih ekstenzija. Preporučujem. > odnosno Borland Pascal. Za njihove ekstenzije ( da ne kažem novi > jezik ) će ti biti potrebna nova knjiga. Za to ima više knjiga, > ali verovatno će dobar izbor biti prevod "Turbo Pascal 6.0 > kompletan vodič", osim cene, avaj. Srećnim slučajem posedujem ovu knjigu i mogu ti baš reći da nisam preterano oduševljen sadržajem. Zamisli ona nosi naziv " Turbo Pascal 6.0 ", ali u knjizi nema ni jednog jedinog slova o upotrebi integrisanog asemblera, koji je jedan u glavnih noviteta u v6.0 :)) Inače nije loša, jer se obrađuju i neke opšte stvari kao što su algoritmi sortiranja, sa implementacijom. > U svakom slučaju ne preporučujem knjige Duška Savića. Sam sam > svojevremeno kupio njegovu knjigu "Turbo Pascal - naredbe i > objekti" i ne mislim da sam iole pametno uložio novac. Nemam neko lepo mišljenje o stilu Duška Savića, ali ja ovu knjigu mnogo koristim kao referencu. Kad ne mogu da se setim nekog parametra, ja lepo otvorim knjigu. Međutim, neki početnik će jako teško moći da nauči nešto iz ove knjige.
pascal.958 pedjak, -> #953, dejanr
> I just found a small (but annoying) bug in the STony Brook Pascal > compiler. Jel ima neko iskustva sa ovim kompajlerom ? Kol'ko sam čuo potpuno je kompatibilan TP 6.0 i plus ima neke nove mogućnosti, kao što su memorijski modeli i sl. pedja
pascal.959 vitez.koja, -> #946, marzi
#=> Koja knjiga je najbolja za pocetak i ucenje PASCAL-a. Milan žabavkapa : 'Osnovi programiranja u PASCALu sa ekstenzijom TURBO PASCALa'.
pascal.960 spantic, -> #953, dejanr
> I just found a small (but annoying) bug in the STony Brook > Pascal compiler. Nije previše bitno, ali da li je ovo Pascal prevodilac za ATARI ST?
pascal.961 drmarke, -> #951, spantic
> Jensen-Wirth, Pascal priručnik. > > To ti u svakom slučaju preporučujem kao osnovu u > svakom slučaju, uključujući i eventualnu kasniju > želju za prelazak na Turbo Pascal, odnosno Borland > Pascal. Ovo nikako ne stoji. Sigurno da je knjiga najbolja za Pascal (mada mislim da ni za to nije baš najbolja, jer ima puno formalizama koji su potrebni samo za konstrukciju prevodioca, i da ne govorim o radu sa stringovima itd.), ali mislim da bi sigurno trebalo preporučiti čoveku neku knjigu o Turbo Pascal-u. Tu bi se kao početnička mogla zaista preporučiti Milanova knjiga (jeste da je prilično školska ali u najboljem smislu te reči), za nastavak mislim da je dobra i ona o TP 6.0 u izdanju Micro knjige. Zavisi od toga za šta je čovek zainteresovan da radi u Pascalu. Pozdrav DrMarke
pascal.962 dejanr, -> #960, spantic
>> Nije previše bitno, ali da li je ovo Pascal prevodilac za ATARI ST? Hmmm... ne bi trebalo, postoji Stony Brook za PC, oduvek sam želeo da vidim na šta to liči... ali taman kad im pisasmo za primerak za prikaz, uvedoše sankcije :(
pascal.963 valhala,
Kako se TACNO koriste direktiva {$L ime.filea} i exec komanda?Nemam literature za tp6.0 pa ne znam a ni tphelp mi nije bas od neke pomoci. Da li se na sezamu moze negde naci bilo sta o ovim osobinama tp-a? Val.
pascal.964 almi,
Ja sam se isto zaje*ao pa sam kupio obe njegove knjige (tp5.5 tp6.0) Ia,Ia,Ia,Ia :)
pascal.965 valhala,
Begging, pleeding, crying for help!:) Treba mi procedura koja ce ucitavati u pascal slike venturinog formata, odnosno venturine style-ove, ali tako da ja mogu da ih promenim i snimim opet u ventu- rin format. Znaci napravim style u venturi, ucitam ga pomocu te procedure, pa ga izbacim na ekran, unesem odgovarajuce podatke na odgovarajuca mesta, pa sve to lepo snimim opet kao ven. format da bih ga mogao stampati. Ili bi bilo jos bolje kada bih skinutu sliku mogao da stampam i onako, samo je iz nekog programa koji bi kori- stio tu proceduru srucim na stampac(po moguctstvu ne previse izopacenu:)znaci ako moze to onda ne mora da se snima kao vent. format slike.Nadam se da me bar neko razumeo:)))) Val.
pascal.966 eagle, -> #957, pedjak
> Nemam neko lepo mišljenje o stilu Duška Savića, ali ja ovu > knjigu mnogo koristim kao referencu. Kad ne mogu da se setim > nekog parametra, ja lepo otvorim knjigu. Međutim, neki početnik ??? Sadržaj je sasvim OK, ali je to sve jaaakooo haotično sklopljeno u nešto što bi trebalo biti "priručnik za svakodnevni rad". Inače, imam pored ovog i jedan priručnik stanovitog Mihaila Šolajića, koji ima gotovo identične opise, pa čak i primere!!! Biće da su oba samo prevod nekog stranog priručnika, samo je D.Savić dodao elemente objektnog programiranja. BTW, preporučujem ovaj drugi, jer je stvarno lepo uređen. (E)
pascal.967 eagle, -> #963, valhala
> Kako se TACNO koriste direktiva š$L ime.fileać i exec > komanda?Nemam literature za tp6.0 pa ne znam a ni tphelp mi > nije bas od neke pomoci. Jednostavno definišeš procedure koje se nalaze u .obj fajlu sa external (staviš "external" posle zaglavlja), i onda (a možeš i na samom početku) staviš $L itd. Te procedure koristiš kao bilo koje druge :) Što se execa tiče, moraš pre i posle pozivanja da uradiš jedno swapvectors, da ti neki "neodgovorni" program ne bi poremetio vektore. Najsigurnije je da uvek pozivaš command.com : exec(getenv('comspec'),'/c '+ komandna_linija) Prvi parametar ti definiše datoteku koju pozivaš, a drugi komandnu liniju. U ovom slučaju pozivaš COMMAND.COM: getenv je funkcija koja vraća promenjivu tipa string, koju si postavio naredbom SET u autoexec.bat-u, ili koju DOS postavlja pri boot-ovanju. "Comspec" je path do command.com-a npr. ako butuješ sa diskete, comspec ti postaje a:Đcommand.com. Kao komandnu liniju možeš da staviš i internu komandu dosa. (E)Eagle
pascal.968 peca.st, -> #963, valhala
!-> Kako se TACNO koriste direktiva š$L !-> ime.fileać i exec komanda? Pa, koriste se onda kada ti trebaju. :) Šalim se. $L ImeFajla.OBJ se koristi kada želiš da iz nekog OBJ fajla prebaciš podatke u pascal. Tj, napravio si nešto u assembleru, od toga napravio OBJ fajl, i sad to treba povezati sa Pascalom. Za to služi $L. Međutim, prvo moraš definisati zaglavlja procedura koje se nalaze u tom OBJ fajlu, pa onda napisati da je to External procedura. Ako na primer u ZVRK.OBJ fajlu imaš procedure bla_bla (a : byte) i trt_mrt (x : real) onda to uradiš ovako: unit bez_veze; interface procedure bla_bla (a : byte); procedure trt_mrt (x : real); implementation š$L ZVRK.OBJć ------ (sori na ovom š i ć, imam YUSCII, to su vitičaste zagrade) procedure bla_bla; external; procedure trt_mrt; external; end. Što se tiče EXEC komande za to ti je stvarno dovoljan smo Help. Peđa.
pascal.969 spantic, -> #957, pedjak
> Knjiga je sasvim ok, ali u vreme kad sam učio pascal to > sam radio iz Nolitove knjige "Računarstvo sa programskim > jezikom Pascal". Inače ova knjiga je prevod sa slovenačkog Kupio sam svojevremeno tu knjigu i nemam bog-zna kakvo mišljenje o njoj. Moguće je da je razlog što je knjiga bukvalno zamišljena za totalne početnike i u programiranju. > Nemam neko lepo mišljenje o stilu Duška Savića, ali ja ovu > knjigu mnogo koristim kao referencu. Kad ne mogu da se > setim nekog parametra, ja lepo otvorim knjigu. Međutim, > neki početnik će Da bi knjiga mogla da se koristi kao referenca, mora biti pregledna. A to se za istu ne može reći :(
pascal.970 dejanr, -> #965, valhala
>> Treba mi procedura koja ce ucitavati u pascal slike venturinog formata, >> odnosno venturine style-ove, ali tako da ja mogu da ih promenim i >> snimim opet u venturin format. Da li misliš na SLIKU koju Ventura prima ili na kompletnu stranu prelomljenu u Venturi? Za sliku u PCX ili IMG formatu možda i može nešto da se nađe, a za Ventura stranu... teško.
pascal.971 dejanr, -> #967, eagle
>> exec(getenv('comspec'),'/c '+ komandna_linija) >> >> Prvi parametar ti definiše datoteku koju pozivaš, a drugi komandnu >> liniju. U ovom slučaju pozivaš COMMAND.COM: getenv je funkcija koja >> vraća promenjivu tipa string, koju si postavio naredbom SET u >> autoexec.bat-u, ili koju DOS postavlja pri boot-ovanju. >> "Comspec" je path do command.com-a npr. ako butuješ sa diskete, >> comspec ti postaje a:Đcommand.com. Kao komandnu liniju možeš da >> staviš i internu komandu dosa. A tome svemu treba dodati da na početku programa koji će koristiti exec treba staviti nešto kao {$M 16000,0,0}. Takođe, ako se ne poziva COMMAND.COM nego direktno neki .EXE fajl, mora da se navede puno ime sa sve path-om i ekstenzijom, dakle recimo D:\RAZVOJ\PROJEKAT\PRG.EXE. Path je obavezan čak i ako je PRG.EXE u tekućem direktorijumu.
pascal.972 ajankovic,
Hitno potrebna knjiga "Turbo Paskal 5.5", od autora Ivana Papeša. Ma se ajankovic ili 011/101-728...
pascal.973 valhala,
Begging, pleeding, crying for help!:) Treba mi procedura koja ce ucitavati u pascal slike venturinog formata, odnosno venturine style-ove, ali tako da ja mogu da ih promenim i snimim opet u ventu- rin format. Znaci napravim style u venturi, ucitam ga pomocu te procedure, pa ga izbacim na ekran, unesem odgovarajuce podatke na odgovarajuca mesta, pa sve to lepo snimim opet kao ven. format da bih ga mogao stampati. Ili bi bilo jos bolje kada bih skinutu sliku mogao da stampam i onako, samo je iz nekog programa koji bi kori- stio tu proceduru srucim na stampac(po moguctstvu ne previse izopacenu:)znaci ako moze to onda ne mora da se snima kao vent. format slike.Nadam se da me bar neko razumeo:)))) Val.
pascal.974 valhala,
Kakav izgled treba da ima asm fajl ako hocu da ga sa tasmom pretvorim u .obj i da ga koristim u tpascalu 6.0? Znaci kako kad ga pisem u editoru treba da izgledaju pocetak i kraj( primer CSEG SEGMENT PUBLIC ASSUME CS:CSEG GLAVNI PROC FAR ... {program} GLAVNI ENDP CSEG ENDS END ovakav izgled ima jedan asm fajl koji sam skinuo sa sezama ali nisam siguran da li radi autor je neko pod sifrom >ciki<, ne znam o kome se radi, niti sta procedura radi(davno sam je skinuo:)) )) Val.
pascal.975 drmarke, -> #957, pedjak
> Pascal 6.0 ", ali u knjizi nema ni jednog jedinog slova o > upotrebi integrisanog asemblera, koji je jedan u glavnih > noviteta u v6.0 :)) Pazi stvarno, ni u originalu nema ničeg o tome! Kako li si to primetio? Ja sam je baš lepo koristio i nisam primetio da to nema. Tek sad. Baš sam iznenađen. > Inače nije loša, jer se obrađuju i > neke opšte stvari kao što su algoritmi sortiranja, sa > implementacijom. I još mnoge lepe stvari: rad sa grafikom, pokazivačima, memorijom, portovima, objektima, Turbo-vizijom.... Pozdrav DrMarke
pascal.976 ssokorac, -> #961, drmarke
─┼┤ sigurno trebalo preporučiti čoveku neku knjigu o Turbo ─┼┤ Pascal-u. Tu bi se kao početnička mogla zaista preporučiti Mislim da je ubedljivo najbolja knjiga o Turbo Pascalu za početnike, a i ne samo za početnike O'Brienova Turbo Pascal 6.0.
pascal.977 mdrljaca,
Pozdrav svima od drpr-a : Da li ste znali da TP6.0 (ne znam za ranije verzije) ima može se reći bag kod naredbe GOTOXY. Probelm je u sledećem: Ako koristite neki nestandardni mod (recimo uz pomoć Vgamax-a) ka recimo 30 redova * 80 kolona naredba gotoxy(1,28) će vas poslati u 1,1 a ne na željeno mesto.Problem se lako rešava pozivanjem interapta 10. Uz poruku prilažem malo rešenje koje se može modifikovati po želji i po kartici za razne oblike cursora. Pozdrav, Cope cursor.arj
pascal.978 valhala, -> #970, dejanr
Evo da ilustriram problem: recimo da sam u venturi napravio style, koji kad god ga pozovem postavi na ekran odredjeni raspored teksta i ostalog(znate vec o cemu govorim). E sad, ja recimo hocu da takav style ucitam u svoj program i unesem podatke u njega, da bih ga posle mogao stampati(isto iz svog prg-a); but, ja hocu da napravim vise styleova u venturi i da ih sve ucitam u svoj program, da bi ih on kasnije koristio kao svoje styleove.Mozda umesto style bolje da stavim "tabela/formular/obrazac za unos teksta". Zasto mi to treba? Trebalo bi da pravim program za svog starog koji je sudski prevodilac i kome je dozlogrdilo da kuca stalno jedne te iste obrasce, pa bi tako mogao u jedan standardni da unosi samo nove podatke. Hope you understand me better now. Evo da probam da nacrtam: -------------------------------------------------------------------- naziv dokumenta(birth certificat...) -------------------------------------------------------------------- --------------------------------------------------------------------- - polje br1. - polje br2. - etc. - - - za unos - - - - Ako moze neko da mo pomogne unapred puuno hvala. Val.
pascal.979 mdrljaca, -> #974, valhala
-> Kakav izgled treba da ima asm fajl ako hocu da ga sa tasmom -> pretvorim u .obj i da ga koristim u tpascalu 6.0? Znaci kako -> kad ga pisem u editoru treba da izgledaju pocetak i kraj( -> primer CSEG SEGMENT PUBLIC ASSUME CS:CSEG -> GLAVNI PROC FAR -> ... {program} -> GLAVNI ENDP -> CSEG ENDS -> END Evo ti pomoći iz O'Brien-ove knjige : .model tpascal .data buffer db 256 dup (?) .code public switch switch Proc far a:dword, b:dword, dsize:word lds si,a lea di,buffer mov cx,dsize ..... ; ima jo što šta mrzi me da prepisujem ret switch endp end Objašnjenje ispod .model tpascal : nalaže Turbo asembleru da generiše kod koji treba da se linkuje sa TP programom. .code : zamenjuje dosta složene pseudo instrukcije cope PS Nadam se da si dobio dovoljno informacija (možda neke nisi ni znao :)
pascal.980 mdrljaca, -> #979, mdrljaca
Samo da napomonem da sam probao sve da prevedem u tp-u i radilo je a nisam probao da ulinkujem u pascal a i mislim da ne bi trebalo da ima nekih problema─ :) cope
pascal.981 dejanr, -> #978, valhala
Shvatam problem ali, na žalost, ne mogu da pomognem. Znam da su neki ljudi pokušavali da "dekoduju" Venturine .CHP i .STY fajlove i da su nešto uspeli, ali ne znam koliko detaljno. Bojim se da je taj format toliko složen da se ne može razumeti bez nekakve tehničke dokumentacije koju, na žalost, nemamo (bolje reći, ja je nemam), ako uopšte i postoji. Mogu da ti predložim dve stvari. Prvo, da umesto Venture uzmeš WordPerfect koji, uz ostalo, ima mail merge mehanizam koji radi baš to - proizvodi ti razne dokumente koji su identični osim što su im neka polja različita. Uz to imaš i dobar makro jezik koji je dokumentovan i kojim se rade takve stvari. Ako WP ne odgovara, možeš da uzmeš i bilo koji drugi moderniji tekst procesor, svaki bi trebalo da ima i mail merge i makroe. Drugo, ako je potrebno nešto veće, da praviš program koji obrađuje i štampa podatke, dakle ništa Ventura, sva štampa ide iz tvog programa. To znači da moraš da kontrolišeš štampač, šalješ grafičke sekvence itd, ali videćeš da to i nije tako teško kao što izgleda. Takvi programi ako ima puno "muljanja" sa podacima često se rade na Clipper-u, ali može i paskal, zašto da ne.
pascal.982 pedjak, -> #969, spantic
> Da bi knjiga mogla da se koristi kao referenca, mora biti pregledna. > A to se za istu ne može reći :( Slažem se, al' sam već naučio gde je šta :(
pascal.983 pedjak, -> #975, drmarke
> Pazi stvarno, ni u originalu nema ničeg o tome! Kako li si to > primetio? Ja sam je baš lepo koristio i nisam primetio da to > nema. Tek sad. Baš sam iznenađen. Pa trebalo mi je :) i onda videh da toga nema. Jedino među rezervisanim rečima na kraju knjige možeš da pronađeš i jedno ASSEMBLER.
pascal.984 pedjak, -> #962, dejanr
> Hmmm... ne bi trebalo, postoji Stony Brook za PC, oduvek sam želeo > da vidim na šta to liči... ali taman kad im pisasmo za primerak za > prikaz, uvedoše sankcije :( Šteta, i mene kopka :(
pascal.985 pedjak, -> #976, ssokorac
> Mislim da je ubedljivo najbolja knjiga o Turbo Pascalu za početnike, > a i ne samo za početnike O'Brienova Turbo Pascal 6.0. Pa sad... ma moraš imati više knjiga iz jedne oblasti, jedna knjiga nije dovoljna.
pascal.986 pedjak, -> #971, dejanr
> A tome svemu treba dodati da na početku programa koji će koristiti > exec treba staviti nešto kao š$M 16000,0,0ć. Takođe, ako se ne > poziva Ne mora baš $M 16000,0,0 . Heap je potrebno smanjiti toliko da se može učitati drugi program u memoriju.
pascal.987 pusa, -> #976, ssokorac
> Mislim da je ubedljivo najbolja knjiga o Turbo Pascalu za početnike, > a i ne samo za početnike O'Brienova Turbo Pascal 6.0. Imam knjigu (u vidu fotokopije :( ) i delim misljenje da je dobra. Ja sam paskal ucio iz Racunara pre X godina. To su bili dobri tekstovi i bas upravljeni na nacin razmisljanja coveka ako je malo radio sa kucnim racunarima, pa bi da predje na paskal. A objasnjavaju i razne koncepcijske stvari koje su posle potrebne i za druge jezike. Ne znam zasto Racunari od toga nisu napravili neku knjigu. Mozda jos nije kasno? :) Posle sam neko vreme radio u paskalu, ali nekako sam se stalno osecao skuceno sa onim memb, memw, outb itd - nista mi tu nije konkretno nedostajalo, ali mi je nekako bilo- ne znam, dobra rec je bas skuceno! "nasao sam sebe" kada sam se dokopao C-a, odjednom je programiranje postalo mnogo slobodnije. Mada priznajem da mi ponekad nedostaje ono sto je paskal mogao da ukljuci RANGE CHECK ON
pascal.988 skerl,
Kada je vec rec o knjigama o pascalu, evo jedne u elektronskom izdanju. Sve je legelno!!! Ima Sezamov header pa noze da ide u dir. Pozdrav, Skerl. Turbo Pascal Reference A Free Book (c) Copyright 1992 by Ed Mitchell. Welcome to the Turbo Pascal Reference, an electronic freeware book. This reference book is divided into ten chapters, providing detailed reference information to Turbo Pascal 6.0, Turbo Pascal 7.0, Borland Pascal, and Turbo Vision. Chapter 1 contains information about this book, why it was created, information regarding your right to copy this book, and a detailed outline of the remaining chapters. The contents of the book is stored as a self-extracting archive. Run: TPR-BOOK.EXE to extract the TPR chapter text files, and the two programs FIGURES.EXE and SOURCE.EXE. The latter two programs are self extracting archives containing illustrations and source code, respectively. The information in the book is stored as a standard ASCII text file. You may read it using any text editor program If you wish, you can use the README.COM program that comes with Turbo Pascal and Borland Pascal to read these chapters. To use README.COM, copy README.COM from the appropriate Borland directory (example \bp\readme.com) to the directory containing this book. Then,type: readme tpr1.txt to read chapter 1, contained in the file tpr1.txt. You can use the readme utility to easily page forward or backwards through the text and to rapidly search for keywords. Please read Chapter 1 for important information about this electronic freeware book, including the copyright notice and distribution rules (yes, you may copy this free book), and disclaimers. I have published my electronic mail address in Chapter 1 in the event that you wish to contact me directly. Thank you for reading the Turbo Pascal Reference. Sincerely, Ed Mitchell
pascal.989 .bale.,
Pascal-ovci, hocete li mozda sors tex-a (mambu)? Regards from .bale. ! #:*)+-<
pascal.990 skerl,
Drugi i poslednji deo knjige o pascalu.
pascal.991 dejanr, -> #988, skerl
Hvala na prilogu, knjiga je prebačena u direktorijum INFO.
pascal.992 zolika, -> #959, vitez.koja
>> Milan žabavkapa : 'Osnovi programiranja u PASCALu sa ekstenzijom >> TURBO PASCALa'. Bolje naučite programski jezik MODULA-2, više se isplati... :-)))))))))
pascal.993 spantic, -> #974, valhala
> Kakav izgled treba da ima asm fajl ako hocu da ga sa > tasmom pretvorim u .obj i da ga koristim u tpascalu 6.0? > Znaci kako kad ga pisem u editoru treba da Evo ti uz poruku primer gde je glavni program doduše u Cu, ali tu nekih problema nećeš imati sa definisanjem ulaza. t.j. promenljivih. U paketu imaš i make. projekat.zip
pascal.994 isekulovic,
Imam problema sa TP-om. Uđem u IDE i startujem program (Ctrl+F9), program radi, sve OK. Izađem iz programa (mog) ponovo oću da ga startujem kad imam šta da vidim sors mi totalno sjeban. Kroz ceo sors umesto ; : " ' ima znakove ispod asci(32). Mogući uzrok? Ivan ps ponovilo se "samo" triputa
pascal.995 dejanr, -> #994, isekulovic
Prvi mogući uzrok - nešto sa memorijom. Koji je računar i koji od "qemm"-ova?
pascal.996 sslavko, -> #968, peca.st
>> $L ImeFajla.OBJ se koristi kada želiš da iz nekog OBJ >> fajla prebaciš podatke u pascal. Tj, napravio si nešto u >> assembleru, A kako u TP-u 6.0 napraviti .OBJ fajl?
pascal.997 bulaja, -> #996, sslavko
> A kako u TP-u 6.0 napraviti .OBJ fajl? Nikako.
pascal.998 ficus, -> #996, sslavko
KAzu da moze sa tp 7.0 a mos i da napises funkcije pa da ih disasembliras pa da ih u asembleru prevedes u obj . treci nacin ti je ja mislim da ima negde tpu2obj raspitaj se malo a mislim da ima i tpu disasembler pa onda samo startuj masm i resio si problem
pascal.999 stomic, -> #992, zolika
$ Bolje naučite programski jezik MODULA-2, više se isplati... Pa gde si ti da nam pomogneš :). Pozdrav, stomic@hobbiton.
pascal.1000 almi,
Ja znam da je u svetu kompjutera bio program koji može da koristi fontove iz CHI-writer-a. Pozdrav Mišel.
pascal.1001 pedjak, -> #989, .bale.
> Pascal-ovci, hocete li mozda sors tex-a (mambu)? Ja hoću mambo :)
pascal.1002 lovro, -> #971, dejanr
­=- COMMAND.COM nego direktno neki .EXE fajl, mora da se navede ­=- puno ime sa sve path-om i ekstenzijom, dakle recimo ­=- D:\RAZVOJ\PROJEKAT\PRG.EXE. Path je obavezan cak i ako je ­=- PRG.EXE u tekucem direktorijumu. Onda ja imam neki falican TP6.0 jer kod mene radi. Lovro
pascal.1003 eagle,
Evo ovako: Kako da u TP-u napravim MOVE proceduru, koja bi premeštala datoteku u neki drugi direktorijum? Konkretno, hoću da premestim ceo direktorijum, nešto kao Prune&Graft iz PC-Toolsa. Thanks unapred :) (E)
pascal.1004 .bale., -> #1001, pedjak
ŮŢ Ja hoću mambo :) Ona hoce mambo! (ajmo svi)
pascal.1005 skerl,
Po zelji korisnika :) INSIDE-TP Pozdrav, Skerl. p.s. Ima Sezamov header... insidetp.zip
pascal.1006 mdrljaca,
Haj svima. Imam jedno pitanje za sve vas. Da li postoji način (relativno brz) uz pomoć koga bih mogao da snimam u datoteku stringove promenljive dužine? Evo šta hoću. Recimo imam stringove koji ne prelaze recimo 50 karaktera (string[50]) a recimo želim da snimim ime od 3 karaktera (npr'Ana') ali isto tako i nešto od čitavih 50 karaktera. Sve bi bilo dobro raditi sa blockread i write jer je writeln(dat,str) mnogo sporo. Sad me zanimaju ideje i kako sve to recimo zbudžiti da stoji u jednoj datoteci a da se dobije na smanjenju iste, od recimo slučaja kada bih pisao sve u prostoru od pedeset pa gurao blankove tamo gde nema ništa. cope PS Nadam se da sam bio dovoljno jasan :)
pascal.1007 mmile, -> #1006, mdrljaca
>uz pomoć koga bih mogao da snimam u datoteku stringove promenljive >dužine? Evo šta hoću. Recimo imam stringove koji ne prelaze recimo >50 karaktera (stringŠ50Ć) a recimo želim da snimim ime od 3 karaktera >(npr'Ana') ali isto tako i nešto od čitavih 50 karaktera. Sve bi bilo >dobro raditi sa blockread i write jer je writeln(dat,str) mnogo sporo. >Sad me zanimaju ideje i kako sve to recimo zbudžiti da stoji u jednoj >datoteci a da se dobije na smanjenju iste, od recimo slučaja kada bih >pisao sve u prostoru od pedeset pa gurao blankove tamo gde nema ništa. Napraviš dve datoteke : jedna je sekvencijalna i ukazuje na poziciju i dužinu nekog zapisa u drugoj datoteci. Tj. iz prve iscitas informacije o poziciji u drugoj datoteci, u drugoj napravis seek na tu poziciju i zatim čitaš podatke sa BlockRead. Ovo nije u jednoj datoteci ali je ideja ;)
pascal.1008 isekulovic, -> #995, dejanr
>> Prvi mogući uzrok - nešto sa memorijom. Koji je računar i koji od >> "qemm"-ova? 286/16 headland g2 ploča sa 2Mb rama, instalirani mm.sys (ems driver), qram i qext.sys (umesto himema).
pascal.1009 dejanr, -> #1008, isekulovic
Jesi li probao sa "čistom" mašinom, naročito bez QRAM-a? Mada, pošto se problem javlja povremeno, mučno je čekati ga da se pojavi...
pascal.1010 ficus, -> #1006, mdrljaca
:) Haj svima. :) :) Imam jedno pitanje za sve vas. Da li postoji nacin (relativno brz) :) uz pomoc koga bih mogao da snimam u datoteku stringove promenljive :) duzine? Evo sta hocu. Recimo imam stringove koji ne prelaze recimo Prelistaj poruke u jezici i cccc upravo se o tome diskutuje (to je jedna od tema) ali evo ti nesto cisto da imas od cega da pocnes pre nego sto prelistas te poruke mozes to da uradis ovako: u slucaju sekvencijalne datoteke: pises stringove a kraj stringa oznacis nekim terminatorom tj. procedure upis_stringa(f:text;x:string); var i:integer; begin for i:=1 to x[0] do write(f,x[i]); write(0); end; Soru ako sam negde pogresio nisam probao stvar ovo ti je vise teorija a i pascal sam pomalo zaboravio. Ako oces da mozes direktno da pristupis n-tom clanu datoteke onda pored ovog fajla uvedes jos jedan koji ti pokazuje na pocetak n-tog clana Naravno u svemu ovome postoji par problema pa lepo udari dow 5/a pa citaj na miru offline.
pascal.1011 mmile, -> #1010, ficus
> procedure upis_stringa( f:text;x:string); žvar > var i:integer; > begin > for i:=1 to xŠ0Ć do write(f,xŠiĆ); žord > write(0); > end;
pascal.1012 ficus, -> #1011, mmile
:) > procedure upis_stringa( f:text;x:string); :) Cvar :) > for i:=1 to xS0C do write(f,xSiC); :) Cord :(((((((((((( Pa rekoh da sam pisao online i da u paskalu nisam radio dugo i da je to vise algoritam nego procedura. Inace ono u prvom redu nisam siguran da je greska cini mi se da var ne mora ali ova druga greska priznajem nisam razmisljao u c-u bi proslo jer su char i int jedno te isto (istina unsigned char=byte unsigned int=word) ali eto ko radi taj i gresi.
pascal.1013 eagle, -> #1010, ficus
> procedure upis_stringa(f:text;x:string); > var i:integer; > begin > for i:=1 to xŠ0Ć do write(f,xŠiĆ); > write(0); > end; Ima par greščica. Treba da ide npr. ovako: for i:=1 to ord(xŠ0Ć) do write(f,xŠiĆ); write(f,0); Btw, ovo je malko sporo.... a i ne može kasnije da koristi seek. (E)
pascal.1014 mmile, -> #1012, ficus
>Pa rekoh da sam pisao online i da u paskalu nisam radio dugo i da je to >vise algoritam nego procedura. >Inace ono u prvom redu nisam siguran da je greska cini mi se da var ne >mora ali ova druga greska priznajem nisam razmisljao u c-u bi proslo >jer su char i int jedno te isto (istina unsigned char=byte unsigned int=word) >ali eto ko radi taj i gresi. Ma OK. Ipak mislim da se sve datoteke kao parametar moraju prenositi sa var, ali eto ko radi neboji se gladi ;))) PS neboji = ne boji.
pascal.1015 valhala, -> #979, mdrljaca
Thanks,zbilja za .code nesam znadeo:)
pascal.1016 valhala, -> #993, spantic
Kad smo vec kod make, cemu sluzi make program koji dolazi uz tasm, i uz tvision? Val.
pascal.1017 mdrljaca, -> #1010, ficus
-> Soru ako sam negde pogresio nisam probao stvar ovo ti je -> vise teorija a i pascal sam pomalo zaboravio. -> -> Ako oces da mozes direktno da pristupis n-tom clanu datoteke -> onda pored ovog fajla uvedes jos jedan koji ti pokazuje na -> pocetak n-tog clana -> -> Naravno u svemu ovome postoji par problema pa lepo udari dow -> 5/a pa citaj na miru offline. OK pogledaću iako mi je pala na pamet ideja da pravim neku vrstu zipa, naravno mnogo uprošćenog, jer meni treba neki marker da mi pokazuje gde je karaj neke reči i "kad unzipujem" ja u napred znam kolika je dužina polja gde treba da ubacim blankove da bi sve radilo kako treba . Malko razmišljanja i trebalo bi da radi, samo što ja želim da bude ultra brzo :)) cope
pascal.1018 ficus, -> #1013, eagle
:) Ima par grescica. Treba da ide npr. ovako: Ok za grescice sam vec reko nisam se petljao sa pascalom vec duze vremena... :) Btw, ovo je malko sporo.... a i ne moze kasnije da koristi seek. Sto se brzine tice ne mora da bude sporo jer prvo pise u buffer a posle u fajl a sto se seek-a tice mislim da sam i to rekao kako moze da sredi. Uos- talom imas li neki bolji predlog (ne mislim na indexne fajlove koji su u sv. slucaju bolji.). ako imas reci ga jer i mene interesuje (uostalom i meni ce uskoro trebati nesto slicno) Mada mozda bi se mogli iskoristiti oni slogovi promenljive duzine u pascalu ali nesto u stilu (neznam dal radi) slog= record case duzina:byte of 1:x:array [1] of char; ... ... 200:x:array.... end Salim se naravno jeste li probali da stavite file of string[50] mozda upali mada nesto bas ne verujem (u svakom slucaju vredi probati)
pascal.1019 ficus, -> #1018, ficus
:) 1:x:array [1] of char; ^^^ sory opet se ja zalecem u c.
pascal.1020 eagle, -> #1018, ficus
> fajl a sto se seek-a tice mislim da sam i to rekao kako moze da > sredi. Uostalom imas li neki bolji predlog (ne mislim na > indexne fajlove koji su u sv. slucaju bolji.). Sumnjam da je mnogo brže, ali je barem lakše. Dakle, kad si se već uhvatio za tip TEXT, što ne bi jednostavno koristio writeln i readln, umesto postavljanja markera? :) I ne mora "for to length" već možeš odjednom da upišeš ceo string. (E)
pascal.1021 mdrljaca,
Samo da javim da sam svoj problem uspeo da rešim i da sam ušio acd u dužini datoteke u kojoj čuva imena dirova :)). Samo me zanima kako acd uspeva onako brzo da iskenira dirove (2.5 puta brže nego ja kad je sve u kešu). Ajd jel neko ima ideju. Ja sam radio sa findfirst i findnext koje sam pravio sam uz pomoć Msdos(regs) u pascalu i ne mogu brže tj. malo sam brži od samog pascalovog jer me ne zanimaju svi oni atributi itd. Možda je moj algoritam loš recimo ja idem nešto ovako findfirst Hako nadje onda udjem u while pozivam istu proceduru( rekurzivno) za pod dir KKfindnext wrtim se sve dok findnext ne vrne ništa Ovako sam rečima napisao da nebi sve opterećivao kodom, a mislim da je jasno. MOžda acd "zna" neku foru kako da traži sam dirove jer ako stavim da mi je atribut fajla 10h dos mi daje sve fajlove i dirove. Eto malko razmišljanja ko želi a možda za ovo findfirst i next sam trebao da postravim u msdos ili u assembler :)) cope
pascal.1022 peca.st, -> #1014, mmile
!-> Ipak mislim da se sve datoteke kao !-> parametar moraju prenositi sa var, ali !-> eto ko radi neboji se gladi ;))) Moraju se prenositi, mada je najbolje sa globalnom promenljivom, zbog memorije... Peđa.
pascal.1023 spantic, -> #1016, valhala
> Kad smo vec kod make, cemu sluzi make program koji dolazi > uz tasm, i uz tvision? MAKE služi za organizaciju projekta. U njemu tačno definišeš koje sve module koristiš, kako, čime i uz koje opcije iz prevodiš, kako ih linkuješ, vodi računa da prilikom promene na nekom modulu nema potrebe sve ponovo prevoditi ( veoma značajno pri velikim poslovima )... Naročito je značajan i poželjan kada se program distribuira u sorsu da bi se lako preneo na različite platforme ( vidi primer GNU programa ).
pascal.1024 mmile, -> #1022, peca.st
> Moraju se prenositi, mada je najbolje sa globalnom > promenljivom, zbog memorije... žžžžžžžžž Ajde kazi to svom profanu iz programiranja da je tako najbolje ;)
pascal.1025 ficus, -> #1021, mdrljaca
:) kako acd uspeva onako brzo da iskenira dirove (2.5 puta brze nego ja :) kad je sve u kesu). Ajd jel neko ima ideju. Ja sam radio sa findfirst :) i findnext koje sam pravio sam uz pomoc Msdos(regs) u pascalu i ne mogu brze Pa postoji drugi nacin samo je mnoooogo komplikovan. Lepo uzmes pa direktno citas fajl u kom je direktorijum. P.S. Nisam siguran kako da pristupis root-diru i to bi verovatno jos malo zakomplikovalo ali da je brze brze je a i mozes da napravis fajl sa spiskom subdir.
pascal.1026 ssokorac, -> #1021, mdrljaca
Ja u cdp-u tražim čak sa pascalovim FindFirst i FindNext, i jedva je nešto malo sporiji od acd-a, verovatno to 'drugačije' upisivanje u fajl usporava kod tebe... P.S. Novi CDP je već duplo brži od ACD-a, uskoro ću da ga šiljnem, samo još prune&graft da završim :).
pascal.1027 miroslavn,
Kako da u TP6.0 detektujem pritisnute strelice na tastaturi? Koriste se neki extended kodovi, al pošto nemam odgovarajuću literaturu, a u online helpu to nepiše, eto meni problema. Drugi mali problemčić je kako da ulinkujem BGI u .exe fajl? Znam da to može, i da je opisano u nekoj library reference book-u od Borlanda al ja to nemam?
pascal.1028 eagle, -> #1027, miroslavn
> Kako da u TP6.0 detektujem pritisnute strelice na tastaturi? ch:char; spec:boolean; ... ch:=readkey; if ch=#0 then begin ch:=readkey; spec:=true end else spec:=false; ... Spec ti je true ako je neki "specijalan" taster pritisnut, a u ch ti onda ostaje kod tog tastera.
pascal.1029 ficus, -> #1027, miroslavn
:) Kako da u TP6.0 detektujem pritisnute strelice na tastaturi? :) Koriste se neki extended kodovi, al posto nemam odgovarajucu literaturu, Kodovi ti se sastoje od 0 i prateceg koda. mislim da su prateci kodovi negde oko 75 ali uzmi lepo pa napisi programce koje ispisuje pritisnute kodove i resio si problem (mislim da je funkcija readkey. :) a u online helpu to nepise, eto meni problema. :) Drugi mali problemcic je kako da ulinkujem BGI u .exe fajl? Znam da to moze, :) i da je opisano u nekoj library reference book-u od Borlanda al ja to nemam? Imas primer koj ti ide uz original tp 6.0 pogledaj u bgi direktorijumu programce se zove bgilink ili tako nesto.
pascal.1030 ppekovic, -> #1024, mmile
>>> Moraju se prenositi, mada je najbolje sa globalnom >>> promenljivom, zbog memorije... žžžžžžžžž >> >> Ajde kazi to svom profanu iz programiranja da je tako najbolje ;) Profesor i treba da uči tome da se što manje koriste globalne promeljive. Zavisnost procedura i funkcija od istih donosi probleme kada procedure i funkcije iz starog programa pokušaš da preneseš u novi. Paya
pascal.1031 peca.st, -> #1030, ppekovic
!-> Profesor i treba da uči tome da se što !-> manje koriste globalne promeljive. !-> Zavisnost procedura i funkcija od !-> istih donosi probleme kada procedure i !-> funkcije iz starog programa pokušaš da !-> preneseš u novi. To je apsolutno tačno, i ja se slažem. žak sam i ja za to da se koristii prenošenje putem parametara, ali mislim da postoje izuzeci. (na primer, ako se u nekoj rekurzivnoj proceduri / funkciji koristi neka povelika struktura, valjda je nećemo prenositi putem parametara, jer stek ode za tren oka) .to mmile : A što se tiče profana, kod bivšeg profesora (čeljka) skoro da nismo smeli koristiti "bočni efekat", dok od kada je došao Đurišić on maltene forsira to. :) Peđa.
pascal.1032 beast, -> #1027, miroslavn
>> Kako da u TP6.0 detektujem pritisnute strelice na tastaturi? Pročitaj taster sa Readkey, ako je #0 dobijaš još jedan scan kod, a on je: 72 za gore, 80 za dole, 75 za levo i 77 za desno. Preporučujem ti da napraviš neki proceduru (GetKey) koja u slučaju da je taster #0 čita ponovo taster (sa Readkey) i uvećava scan code za 128. Time 'gubiš' neke grafičke znake (║═█ itd.) al ko ih ionako kuca sa tastature :) a mnogo ćeš univerzalnije pisati program.
pascal.1033 .obj, -> #1025, ficus
> :) kako acd uspeva onako brzo da iskenira dirove (2.5 puta brze nego ja > :) kad je sve u kesu). Ajd jel neko ima ideju. Ja sam radio sa findfirst > :) i findnext koje sam pravio sam uz pomoc Msdos(regs) u pascalu i ne mogu b > > Pa postoji drugi nacin samo je mnoooogo komplikovan. > Lepo uzmes pa direktno citas fajl u kom je direktorijum. To bi jako tešto uradio, bilo bi nekompatibilno (sa.. pojma temam čime ;) i na kraju bi opet bilo sporo. Radi se o algoritmu. Recimo, ako onaj alg. prvo pročita glavni direktorijum, nađe neki dir i "uđe" u njega, pa onda opet tako, svašta će se nakupiti po DOS-ovim keševima i na kraju će on "odustati" od baferisanja. Zato, prvo se očita *ceo* glavni dir, pa onda *ceo* prvi poddir i tako dalje. Biće daleko brže, mada traži malo više memorije. Sve ovo, naravno, važi ako je na sistemu neki glup i mali keš (ili ga ni nema - toliko je mali;).
pascal.1034 ficus, -> #1031, peca.st
:) (na primer, ako se u nekoj rekurzivnoj proceduri / funkciji koristi :) neka povelika struktura, valjda je necemo prenositi putem parametara, :) jer stek ode za tren oka) Ne ode stek jer se povelike strukture prenose preko pokazivaca na iste tj. napravi se kopija pa onda... Ali sve jedno ode heap. Ako se cak kopija i pravi na steku ti lepo lupis u var i onda opet imas samo pointer. :) .to mmile : A sto se tice profana, kod bivseg profesora (Zeljka) skoro :) da nismo smeli koristiti "bocni efekat", dok od kada je dosao Durisic :) on maltene forsira to. :) Pa sad stilovi se razlikuju (zbog toga smo ja i kareem (jankey)) definitivno prekinuli da radimo na bilo cemu zajedno.
pascal.1035 ficus, -> #1032, beast
:) slucaju da je taster #0 cita ponovo taster (sa Readkey) i :) uvecava scan code za 128. Time 'gubis' neke graficke znake A sto ne za 256 i lepo covek resi sve probleme (naravno vraca int mesto char ili byte)
pascal.1036 ficus, -> #1033, .obj
:) > Pa postoji drugi nacin samo je mnoooogo komplikovan. :) To bi jako testo uradio, bilo bi nekompatibilno (sa.. pojma temam cime :) ;) i na kraju bi opet bilo sporo. Radi se o algoritmu. Recimo, ako onaj Ja lepo gore rekoh da je mnoooogo komplikovan. Sto se kompatibilnosti tice radilo bi u dosu dok on ne promeni nacin pisanja informacija u fajl sa dir. ali onda ce popucati mnoooogi programi. :) pa onda opet tako, svasta ce se nakupiti po DOS-ovim kesevima i na :) kraju ce on "odustati" od baferisanja. Zato, prvo se ocita *ceo* glavni Mozda ali opet oba algoritma imaju iste korene naprimer ja kad orvorim fajl lepo iscitam sta mi treba i onda rekurzivno pretrazujem a sto se redosleda trazenja tice sta bi vas algoritam reko za nesto ovakvo 2 - 3 - 4 - 5 1 (root) 6 - 10 7 - 11 8 - 12- 13- 14 - 15 - 16 9 . . . 30 - 1002-1003 ... Ocigledno je da je vas cd brzi za dir blizi root-u a moj ako je blizi top-u. P.S. Jos uvek ostajem pri tome da treba kreirati tree fajl. To cete se sloziti da je ipak najbrze.
pascal.1037 isekulovic, -> #1009, dejanr
>> Jesi li probao sa "čistom" mašinom, naročito bez QRAM-a? Mada, pošto >> se problem javlja povremeno, mučno je čekati ga da se pojavi... Javio se samo tri puta i to ne uzastopce, a nemam baš preterano vremena da čekam da se pojavi. Jedino što mogu da radim je da neko vreme kad pišem nešto dižem comp samo sa dosom, pa ako se pojavi da ponovo kukam. ako se ne pojavi koj' će ga znati.
pascal.1038 skerl,
Welcome to XMM version 1.2 ! ──────────────────────────────── eXpanded Memory Manager for Turbo Pascal Files in this package: ---------------------- README.DOC - This file! DIRECTIV.10 - Compiler directives for Quick Pascal 1.0 DIRECTIV.40 - Compiler directives for Turbo Pascal 4.0 DIRECTIV.50 - Compiler directives for Turbo Pascal 5.0 DIRECTIV.55 - Compiler directives for Turbo Pascal 5.5 DIRECTIV.60 - Compiler directives for Turbo Pascal 6.0 DIRECTIV.INC - Compiler directive back-bone XMS.PAS - Pascal source of XMM driver XMM.ASM - Assembler source of XMM driver XMM.OBJ - Object code of XMM driver XMS20.ZIP - Microsof XMS driver (Public Domain) XMS30.DOC - XMS 3.0 specifications Short description : ------------------- XMM is a Turbo Pascal eXtended Memory Manager implementation that supports Microsofts XMS specification level 3.0. It enables programs running on an AT-like, 386-like or 486-like machine to use extended memory (memory above the 1 megabyte barrier) to store data and code. Almost all code is written in machine language and Microsofts XMS driver version 2.06 (which is public domain) is included. Pozdrav, Skerl. p.s. Bulaja, prebaci ovo u dir, vec ima zainteresovanih :) Ima Sezamov header.
pascal.1039 .obj, -> #1036, ficus
> P.S. Jos uvek ostajem pri tome da treba kreirati tree fajl. To cete se > sloziti da je ipak najbrze. Pa normaalno :) Nego predlažem ti da ne izmišljaš toplu vodu :) nego pogledaj strukturu TREEINFO.NCD datoteke, vrlo je prosta, a svako se iznenadi kad vidi "opa, kako brzo pročitao.. vidi ti njega!" :) A i ja ne znam disk koji nema TREEINFO.NCD ;)
pascal.1040 m.hristodulo, -> #1008, isekulovic
>> 286/16 headland g2 ploča sa 2Mb rama, instalirani mm.sys (ems >> driver), qram i qext.sys (umesto himema). Izvinte što mašim temu ali moram odma da pitam. Sine aj mi pošalji taj mm.sys. Imam isti hardver ko ti al ne mogu da instaliram qram jer nemam EMS 4.0 u hardveru... Ako može i neki savet iskustvo i slično. Ajde care mojne da te molim dvaput!
pascal.1041 mdrljaca, -> #1026, ssokorac
-> Ja u cdp-u tražim čak sa pascalovim FindFirst i FindNext, i jedva je nešto -> malo sporiji od acd-a, verovatno to 'drugačije' upisivanje u fajl usporava kod -> tebe... -> -> P.S. Novi CDP je već duplo brži od ACD-a, uskoro ću da ga šiljnem, samo još -> prune&graft da završim :). Ako kažem kod acd-a /recreate onda sam i ja brži ali nikako da ga stigem kad kažem /qcretae ili /create :(. Više ne koristim rekurziju i milsim da ne bi trebalo da ga moje upisivanje toliko uspori :( cope PS Pogledaću tvoj novi cdp ali kako radim sa blockread i write ne verujem da ću toliko usporiti svoj program :( pss Pišem online milim ubrzati :)
pascal.1042 beast, -> #1039, .obj
>> nego pogledaj strukturu TREEINFO.NCD datoteke, vrlo je prosta ..i ogromna. :) Bolje pogledaj acd.idx, odličan 'školski' primer zapisivanja samo najneophodnijih informacija :) A NCD ima stringove iste dužine (12), tako da su većinom stringovi poluprazni (dakle: 'dos ') što nije baš elegantno :)
pascal.1043 ssokorac, -> #1039, .obj
─┼┤ iznenadi kad vidi "opa, kako brzo pročitao.. vidi ti njega!" :) A i ja Ih, NCD brz, dobar fazon :). Probaj cdp O:).
pascal.1044 zolika, -> #1034, ficus
>> Pa sad stilovi se razlikuju (zbog toga smo ja i kareem (jankey)) >> definitivno prekinuli da radimo na bilo cemu zajedno. Kad pomenu KAREEMa (onog od Montenegro?) šta je sa tim čovekom? Postoji li još na ovim našim širinama (i dužinama)?
pascal.1045 .obj, -> #1043, ssokorac
>> iznenadi kad vidi "opa, kako brzo pročitao.. vidi ti njega!" :) A i ja > > Ih, NCD brz, dobar fazon :) :) Mislio sam da on napravi programče koje čita TREEINFO.NCD pa onda da korisnik kaže "opa, ..." :) > Probaj cdp O:) Evo probaj ti OCD O:)) Copright ja 1990 :) ocd.zip
pascal.1046 ilotina,
HI! Može li se nekako izvesti sledece. Ako je grafička kartica hercules onda ide nešto ovako: var ScreenAddr:absolute $B000:0000; A ako je neka u koloru: var ScreenAddr:absolute $B800:0000; Predpostavljam da se to može izvesti onim takozvanim kondicionim prevođenjem, ali se ja baš nešto ne razumem u njega. Interesuje me još da li se kod tog prevođenja program mora kompjlirati na onoj mašini na kojoj će da radi (ja barem tako misli)? Pozdrav Ivan! P.S. Ja mislim da sam tačno ubo one video adrese:)
pascal.1047 lovro, -> #1046, ilotina
­=- Ako je graficka kartica hercules onda ide nesto ovako: ­=- var ScreenAddr:absolute $B000:0000; ­=- A ako je neka u koloru: ­=- var ScreenAddr:absolute $B800:0000; ­=- Predpostavljam da se to moze izvesti onim takozvanim ­=- kondicionim Moze! if herc then screenaddr := ptr($B000:0) else screenaddr := ptr($B800:0); Lovro
pascal.1048 valhala,
Kako da izvedem ovo: skinuo sam sa Sezama fajl sa opisom pcx formata, i sad bih da napravim program za dekodiranje slika;jedini problem je sto ne znam kako da OTVORIM .pcx fajl, odnosno bio bih zahvalan kad bi mi neko objasnio kako se uopste manipulise sa fajlovima u paskalu koji nisu pravljeni u njemu. Nadam se da ste me shvatili, jer sam pomalo konfljuzan:)) Val.
pascal.1049 dejanr, -> #1048, valhala
>> sto ne znam kako da OTVORIM .pcx fajl, odnosno bio bih zahvalan kad bi >> mi neko objasnio kako se uopste manipulise sa fajlovima u paskalu koji >> nisu pravljeni u njemu. Ima raznih načina. Evo najsporijeg, ali za početnike najjasnijeg: var slika: file of byte; a: byte; .... assign(slika, 'ime.pcx'); reset(slika) while not eof(slika) do begin read(slika,a); ... end; close(slika)
pascal.1050 ssokorac, -> #1041, mdrljaca
─┼┤ kad kažem /qcretae ili /create :(. Više ne koristim rekurziju i milsim Naravno da nećeš stići qcreate, zato što traži samo *. direktorijume. :) To značajno ubrzava...
pascal.1051 m.hristodulo, -> #1027, miroslavn
>> Drugi mali problemčić je kako da ulinkujem BGI u .exe fajl? >> Znam da to može, i da je opisano u nekoj library reference >> book-u od Borlanda al ja to nemam? Evo ti fora! Postoji čak i demo u TP6.0 paketu, ali sam ja to malo prepravio, tako da je dovoljno da u bilo kom trenutku programa izvršiš InitGraph, i grafika je tu, u EXE-u. allgraph.zip
pascal.1052 ssokorac, -> #1046, ilotina
─┼┤ Interesuje me još da li se kod tog prevođenja program mora ─┼┤ kompjlirati na onoj mašini na kojoj će da radi (ja barem tako misli)? Ma, moš' kompajlirati gde hoćeš samo piši ovako - if memŠ0:$0449Ć=7 then ScrPtr:=Ptr($B000,0) else ScrPtr:=Ptr($B800,0); Tj. ako je na 0:$0449 sedmica onda je u pitanju herkules, a ako nije onda je EGA/VGA.