pascal.205postmast,
From: Srdjan.Stanisic%f104.n103.z38@setnet.setnet.co.yu (Srdjan Stanisic)
Subject: Re: Zastita programa
Date: Mon, 13 Nov 1995 22:03:07
DL> Da li je moguce napraviti u Paskalu takvu zastitu nekog programa da
DL> ako korisnik programa (da li ste mu instalaciju nekog skupog programa
DL> pa necete da mu dozvolite da je rasiri dalje) hoce da program presnimi
DL> program na disketu/diskete zastita automatski obrise *.exe fajlove tog
DL> programa (recimo da je ceo program u jednom direktorijumu)?
DL> Ako jeste, a verujem da jeste posto je meni skoro uspelo, samo imam
DL> nekoliko manjih rupa u znanju izlaznih kodova, kako bi on izgledao?
DL> Puno vam se unapred zahvaljujem!
DL> CUL8R or maybe RSN
DL> P.S. Ja licno imam TS-Pascal tako da to malo komplikuje stvari (ko
DL> zna-zna)! CU
Ja sam radio neke zastite u TP programima. Sta te zanima konkretno? Da
se odmah razumemo. Nijedna zastita nije 100% sigurna, al' ove mogu da
dobro namuce. A ako ti je klijentela "neobrazovana" po pitanju
programiranja... Nema problema. Postavi konkretno pitanje i reci ako
zelis source.
Strider
... Ako kanis pobijediti, ne smijes izgubiti!
* Origin: *SETNet: Taurunum BBS +381 11 2354-253, Zemun* (38:103/104)
pascal.206postmast,
From: Boris.Zutic%f125.n103.z38@setnet.setnet.co.yu (Boris Zutic)
Subject: Re: GRAPH.TPU
Date: Mon, 13 Nov 1995 00:19:04
-=> Vladimir Svrkota je svojevremeno izjavio <=-
VS> Doslo mi je do ostecenja na instalacionoj disketi Turbo Pascala 7.0 i
VS> fajl GRAPH.TPU mi je unisten, a grafika mi u ovom trenutku treba.
VS> Zato vas _molim_, da ako je neko rad da mi ovaj fajl arhivira i
VS> posalje, neka mi ostavi poruku u mail. Unapred se zahvaljujem.
Javi se na tlf 642-263 radnim danom posle podne trazi Boris-a
... - I t█ld yo█, never█touch █he flop█y disk s█rfac█!
* Origin: SETNet:Birostroj BBS:NON-STOP:14400bps:011/609945 (38:103/125)
pascal.207postmast,
From: broker@setnet.co.yu (Predrag Supurovic)
Subject: Zastita programa
Date: Mon, 13 Nov 1995 13:25:14
Dragan Levic said:
PS> Nisam sasvim siguran da li si mislio na zastitu programa koji si ti
PS> pisao ili zastitu programa koji si mu samo instalirao pa ne zelis da
PS> moze da ga kopira dalje?
DL> Da hocu da zastitim program koji sam ja sam pisao ne bi bilo nikakvih
DL> problema ali posto to nije moj program vec samo program koji ja treba
DL> da instaliram na disk i sprecim korisnika od daljeg sirenja programa
DL> (presnimavanja). A sto se tice drugih mera to nije potrebno ja samo
DL> hocu da unistim dati program, a ne celi disk!
Ivan Stamenkovic je u nekim od prvih brojeva Cipa (CHIP), pisao bas
o metodi zastite gotovih exe programa. Dao je cak i TP izvorni kod
necega slicnom PKLite-u.
Stvar se nakaci na EXE i ne dozvoljava pokretanje programa ako
odredjeni uslovi nisu ispunjeni. Uslove sammozes da odredis
posto imas izvorni kod.
Pretpostavljam da je najbolje da pokupis neke sistemske podatke
o konfiguraciji na kojoj je program instaliran i da, ako se to promeni
sprecis rad programa.
E sad, ne bih ti bas preporucio da brises program, vec samo da ga
onesposobis (prepises preko EXE-a neke bezvezne (RND) vrednosti) ili
slicno. Brisanje moze nekada da izazove unistenje i drugih podataka,
a ne samo tog programa.... Mozes recimo da napravis Trunc
(pogledaj tu funkciju u TP help-u) nad EXE-om.
* Origin: Oreska BBS, Uzice = SF BIBLIOTEKA = SETNet: (38:101/101)
pascal.209postmast,
From: Asmir.Badnjevic%p1.f135.n135.z38@setnet.setnet.co.yu (Asmir Badnjevic)
Subject: stancanje grafike (stampanje)
Date: Tue, 14 Nov 1995 20:12:52
PS> ==== Asmir Badnjevic rece: ======================================
==== PredraG Supurovic rece :))) ===============================
PS> Pa onda ti mogu pomoci ovako: komande za grafiku su iste za skoro sve
PS> matricne stampace, sto verovatno vazi i za tvoj, pogotovo ako je EPSON
PS> kompatibilac.
EPSON RX80 (za sada)
PS> Da te obradujem, na BS-u imam jedan TPU koji stampa sliku sa ekrana na
PS> bilo koji matricni stampac. To sam sinoc pronasao u arhivi jednog
PS> PAS programa za stampanje kalendara by neki momak iz Vojvodine.
PS> Arhiva s zove KALEND*.* (dovoljno da je nadjes). Sve u njoj je u
PS> sorsu pa i taj TPU za stampanje.
KHM, KHM, samo ima jedan problem ... postu skidam sa VILACO BBSa
(ko' sto pise u ORIGINu) ali ne sa MOG racunala (kompjutera :))
neGo ja fino odem do njiH i oni mi skinu postu. Sta se iz ovoGa moze
zakljuciti??? Da ja nemam MODEM :(((. Znaci ne moGu skinuti source.
Pa bi' te zamolio (jel' treba kleknuti ???) da (ako mozes) source
posaljes putem maila. Kao poruku. Nisam siGuran da li moze, jer sam
pravilnik SETNet-a zaGubio, pa ako moze ... :))))))))
AB> BTW. U kojem jeziku programiras (ako :)) ?
PS> Primeri koje imam u prirucniku su u bejziku (bljak)...
PS> Eto, nadam se da ti je i ovo bilo dovoljno.
Nije. Ne proGramiras valjda u bejziku ??? Ko je kad vidio
proGramirati u bejziku ???
P.S. Posalji primjer pa makar i u bejziku (bljak) ...
PS> Pedja
a ja mislio PredraG Supurovic :)))
pozdraw, ASKO
... I haven't lost my mind; it's backed up on tape somewhere!
* Origin: Vila co.BBS # Prijedor_RS # +381 79 11 301 # SETNet: (38:135/135.1)
pascal.210postmast,
From: Asmir.Badnjevic%p1.f135.n135.z38@setnet.setnet.co.yu (Asmir Badnjevic)
Subject: EMS XMS
Date: Tue, 14 Nov 1995 20:12:52
PS> ==== Asmir Badnjevic rece: ======================================
==== PEDJA rece ================================================
PS> Imas na Oreska BBS-u biblioteke koje to rade. U sorsu su naravno.
AB> Koliko kila?
PS> Ma kratko je to. Jedino je sama dkumentacija za XMS velika, sami
PS> sorsovi su kratki.
Dobro ... Hvala.
UzGred znas li mozda kako da promjenljive bacim u memoriju iznad 640kb ???
pozdraw, ASKO
... Press any user to continue.
* Origin: Vila co.BBS # Prijedor_RS # +381 79 11 301 # SETNet: (38:135/135.1)
pascal.211postmast,
From: Vladimir.Svrkota%f119.n111.z38@setnet.setnet.co.yu (Vladimir Svrkota)
Subject: Strimovi
Date: Mon, 13 Nov 1995 15:56:01
Imam jedan problem prilikom koriscenja strimova. Napisao sam program
koji ce u strim na disku da upise jedan string, ali kakav god da je
string, na disku ce on uvek biti duzine 1. U cemu je problem?
Program sledi:
uses Objects, Drivers;
var s:PDosStream;
ime:PString;
begin
ime^:='Vladimir';
s:=new(PDosStream, Init('text',stCreate));
s^.WriteStr(ime);
s^.Done
end.
Kompajler inace ne javlja nikakvu gresku.
... éí 'aaníígóó 'áhoot'é
* Origin: ECSTASY BBS * Indjija * 022 53-884 * SETNet: (38:111/119)
pascal.212postmast,
From: Vladimir.Svrkota%f119.n111.z38@setnet.setnet.co.yu (Vladimir Svrkota)
Subject: Turbovizija
Date: Mon, 13 Nov 1995 15:56:02
Naisao sam na jedan problem koristeci turboviziju. Naime, trebalo bi mi
da mi se u jednom prozoru ispise sadrzaj jedne tekstualne datoteke. Pri
tom ne mislim da to bude editor, tj. sadrzaj te datoteke ne sme da se
menja, vec samo da se vidi. U turboviziji postoji objekat TWindow, ali
ne znam kako da u njega upisem sadrzaj datoteke. Unapred hvala.
... éí 'aaníígóó 'áhoot'é
* Origin: ECSTASY BBS * Indjija * 022 53-884 * SETNet: (38:111/119)
pascal.214visnja,
U temi DELPHI iste ove konferencije sa, svecano objavio da sam isti nocas
instalirao i odusevio se. Pitanje vezano za Borland Pascal, TV & PXENGINE:
Da li je neko pokusao da natera PARADOX ENGINE za PASCAL da radi u protected
rezimu (target:protected). Kada cistu TV aplikaciju prevedem u protected
HeapView prijavi mnogo bajtova slobodno na Heap-u. Iz Editor demoa sam
Aktivirao 'ladno stotinak instansi TEditWindow-a. Kada je target >>real<<
par prozora - i heap se zagusi. E sada kada bi mogao i PdoxEngine...
Probao sam onal DLL za windowse da zovem iz dos-a - naravno nema sansi.
Sada mi je ideja da C libove za PDox nekako ulinkujem u protected pascal
aplikaciju, moze li? Ima li neko iskustva?
ILI postoji li sansa da se nesto od DELPHI DBE iskoristi za BP70?
Pozdrav, Visnja.
pascal.215visnja,
-> #196, pedjak> sklepano na brzinu - štampa dela ekrana na epson kompatibilnim
> štampačima, evo ga uz poruku.
Odlicno! Hvala!
pascal.216visnja,
-> #212, postmast> tom ne mislim da to bude editor, tj. sadrzaj te datoteke ne sme
> da se menja, vec samo da se vidi. U turboviziji postoji objekat
> TWindow, ali ne znam kako da u njega upisem sadrzaj datoteke.
> Unapred hvala.
Nadji u primerima TTextView objekat. Tu je sve sto ti treba...
pascal.217zeljkoj,
-> #209, postmast> AB> BTW. U kojem jeziku programiras (ako :)) ?
> PS> Primeri koje imam u prirucniku su u bejziku (bljak)...
> PS> Eto, nadam se da ti je i ovo bilo dovoljno.
> Nije. Ne proGramiras valjda u bejziku ??? Ko je kad vidio
> proGramirati u bejziku ???
>
> P.S. Posalji primjer pa makar i u bejziku (bljak) ...
>
Kakve su ovo gluposti u vezi BASIC-a?
Da li ste vas dvojica uopšte nekada videli neki dobar BASIC kompajler
tipa Microsoft Proffessional BASIC-a 7.1 (koji je te, 1990. godine zauzimao
preko 15 MB (što ipak govori nešto o kompleksnosti i mogućnostima),
a mogao je (i još može ;) da pravi DOS i OS/2 programe...
Turbo Pascal je bio vrrrlo skromnih mogućnosti u odnosu na njega.
Da ne pominjem Visual BASIC u izdanjima za DOS i Windows...
Na kraju, BASIC kao jezik (ne uzimajući u obzir konkretnu implementaciju),
je daleko bolji od Pascala.
pascal.218nlazic,
-> #214, visnja*> ILI postoji li sansa da se nesto od DELPHI DBE iskoristi za BP70?
Delphi U SVEMU posmatraj kao direktnog naslednika BP-a. Dakle,
Delphi=BP80. Iz toga sledi i odgovor na tvoje pitanje: SVE iz BP70 će
progutati i Delphi, a obrnuto zavisi od slučaja do slučaja. Znači, bez
sorseva ništa (nažalost verzije bp-ova nisu kompatibilne na bin. nivou,
tj. unit kompajliran u jednoj ne radi u drugoj).
Pozdrav,
:) Nebojša :)
pascal.219dr.urbano,
Zna li neko kako mogu da procitam ime diskete ? (vrlo je hitno)
Pozdrav,
Vladimir.
P.S.
Da slucajno neko nema nesto o kriptovanju, ili neki primer ?
P.P.S
Koliko pc-game enclikopedija postoji, imam jednu da li ih ima jos ?
pascal.220pedjak,
-> #217, zeljkoj> Na kraju, BASIC kao jezik (ne uzimajući u obzir konkretnu
> implementaciju), je daleko bolji od Pascala.
U čemu je bolji..?
pascal.221djelovic,
-> #219, dr.urbano> Da slucajno neko nema nesto o kriptovanju, ili neki primer ?
Bio je ovde neki FAQ na tu temu, potraži đal u dirketorijumima, đal u
ranijim verzijama ove konferencije.
pascal.222zeljkoj,
-> #220, pedjak
> U čemu je bolji..?
Na primer - string tip ne postoji u standardnom Pascalu, nego samo char. :)
žak i Turbo Pascal ograničava dužinu stringa na 255 znakova, dok BASIC
ima 32767 (čak i na Spectrumu ;). Dalje, mora se na početku programa
deklarisati max. dužina, dok BASIC ima dinamičke stringove čija max. dužina
ne mora biti poznata pre izvršavanja programa. Ok - BP 7.0 ima null-terminated
stringove pristojne dužine, ali - string ne sme sadržati karakter sa ASCII
kodom 0, dok se u BASIC-u string može sastojati iz bilo kakvih karaktera.
Dalje, u Pascalu je obavezna deklaracija promenljivih (i svega ostalog ;),
dok je u BASIC-u opciona. (Novije verzije kompajlera imaju i naredbe za
implicitnu deklaraciju (na primer, DEFINT A-F, N deklariše sve promenljive
koje počinju slovima od A do F, kao i slovom N, kao INTEGER), a ako neko
baš voli da eksplicitno deklariše svaku promenljivu može to uraditi sa DIM
var AS tip. Sa OPTION EXPLICIT se može uključiti obavezna eksplicitna
deklaracija. :).
U svim novojim BASIC kompajlerima nizovi mogu biti onoliko veliki koliko
ima memorije, dok su i nizovi i liste kod Pascala ograničeni na 64 kB.
Dalje - pored statičkih postoje i dinamički nizovi čija se veličina može
menjati u toku izvršavanja programa.
Pascal po standardu ima procedure i funkcije, a BASIC samo GOSUB/RETURN,
medjutim, svaki noviji kompajler ima i SUB i FUNCTION. Po standardu,
BASIC je malo siromašan što se tiče kontrolnih struktura, ali svaki noviji
kompajler ima osim FOR/NEXT, WHILE/WEND, IF...THEN...ELSE i DO/LOOP (WHILE,
UNTIL), IF...THEN...ELSE...ENDIF, SELECT...CASE, itd. Dakle - nema apsolutno
nikakve potrebe za GOTO. :) Kad već pomenuh ovu naredbu, noviji kompajleri
ne zahtevaju linijske brojeve, a labela se može sastojati i od slova. :)
Nikakve deklaracije labela u BASIC-u nisu potrebne. :)
Ovo su bile stvari kojih sam se setio ovako na brzinu. Ima tu još da
se priča... :)
pascal.223djelovic,
-> #222, zeljkoj> Pascal po standardu ima procedure i funkcije, a BASIC samo GOSUB/RETURN,
> medjutim, svaki noviji kompajler ima i SUB i FUNCTION. Po standardu,
> BASIC je malo siromašan što se tiče kontrolnih struktura, ali svaki noviji
> kompajler ima osim FOR/NEXT, WHILE/WEND, IF...THEN...ELSE i DO/LOOP
> (WHILE, UNTIL), IF...THEN...ELSE...ENDIF, SELECT...CASE, itd.
Dakle porediš standardni Pascal i razne implementacije Bejzika? :) Ne
deluje baš fer - ako hoćeš da porediš standarde, poredi standarde (standardni
bejzik je krdža). Ako hoćeš da porediš implementacije, evo ti Borland Pascal
ili Delphi, pa mu nađi ravni bejzik kompajler.
Inače, Bejziku se zainsta danas ne može mnogo prigovoriti, osim da zbog
obavezne opcije rada se netipiziranim promenjljivima retko kada radi tako brzo
kao odgovarajući Pascal ili C/C++ kompajler. Takođe mu je velika mana što u
funkcijama/procedurama prima po defaultu parametre po imenu, a ne po vrednosti.
Mada se meni čidi da je izbor jezika pre svega stvar mode i ukusa, a ne
razumnih odluka :).
pascal.224zeljkoj,
-> #223, djelovic> Dakle porediš standardni Pascal i razne implementacije Bejzika?
> :) Ne deluje baš fer - ako hoćeš da porediš standarde, poredi
> standarde (standardni bejzik je krdža). Ako hoćeš da porediš
> implementacije, evo ti Borland Pascal ili Delphi, pa mu nađi
> ravni bejzik kompajler.
I poredio sam BP. Samo se ono u vezi nemanja stringova ;) odnosilo na
standard Pascala. A što se tiče Delphija, njega možemo da poredimo sa VB 4.0.
> Inače, Bejziku se zainsta danas ne može mnogo prigovoriti, osim
> da zbog obavezne opcije rada se netipiziranim promenjljivima
Obavezne netipizirane promenljive? Ne razumem.
> kao odgovarajući Pascal ili C/C++ kompajler. Takođe mu je
> velika mana što u funkcijama/procedurama prima po defaultu
> parametre po imenu, a ne po vrednosti.
Jedno BYVAL pre parametra rešava problem. :)
> Mada se meni čidi da je izbor jezika pre svega stvar mode i
> ukusa, a ne razumnih odluka :).
S obzirom da su sada jezici manje-više istih mogućnosti, tako je. :)
pascal.226pedjak,
-> #222, zeljkoj> Ovo su bile stvari kojih sam se setio ovako na brzinu. Ima tu još da
> se priča... :)
Da ti sada ne bi kvotirao celu poruku... Da te podsetim dela poruke na
koju sam ti odgovorio:
===============================
7.217 PC.PROG.6:pascal
zeljkoj, 17.11.Pet 13:10, 872 chr
Odgovor na 7.209, postmast, 16.11.žet 06:27
---------------------------------------------------------
.
.
.
Na kraju, BASIC kao jezik (ne uzimajući u obzir konkretnu implementaciju),
je daleko bolji od Pascala.
----------------------------------------------- 7.217 ---
Kao argumente za svoju tvrdnju ti mi pak navodiš prednosti
konkretnih implementacija. Nisi baš dosledan.
pascal.227vitez.koja,
-> #222, zeljkoj#=> ima 32767 (čak i na Spectrumu ;).
A, jok. Na Spektrumu je string mogao da ima do 256 znakova.
#=> Dalje, u Pascalu je obavezna deklaracija promenljivih (i
#=> svega ostalog ;), dok je u BASIC-u opciona.
žega se pametan stidi, time se lud ponosi - kaže naš narod.
#=> U svim novojim BASIC kompajlerima nizovi mogu biti
#=> onoliko veliki koliko ima memorije, dok su i nizovi i
#=> liste kod Pascala ograničeni na 64 kB.
Porediš apstraktne "novije BASIC kompajlere" sa određenim Pascal
kompajlerom za određeni računar. Kako zgodno ;) Sa jedne strane,
opraštaš BASICu nemogućnost pravljenja funkcija (kao, imaju sve
novije verzije;), sa druge strane kačiš Pascalu i ono što nije do
njega - segmentna ograničenja PCa.
Lično mislim da su oba pomenuta jezika slabija od Ca (basic
mi je suviše mrljav, pascal suviše krut), ali makar se trudim da
realno sagledam vrednost svakog. Mogao bi i ti da počneš.
E, da, setih se: basic programer doživljava daleko veći
kulturološki šok pri prelasku na neki moderniji jezik, nego
njegov pascal kolega. Ova osobina možda nije bitna za samu
upotrebu jezika, ali da li bi ti pristao da za vozački ispit
A kategorije učiš vožnju u tramvaju?
pascal.228vitez.koja,
-> #219, dr.urbano#=> Zna li neko kako mogu da procitam ime diskete ? (vrlo
#=> je hitno)
Ako misliš na volume label, potraži sa findfirst, u osnovnim
direktorijumu, fajl sa odgovarajućim atributom.
pascal.229zeljkoj,
-> #226, pedjak> Kao argumente za svoju tvrdnju ti mi pak navodiš prednosti
> konkretnih implementacija. Nisi baš dosledan.
Kao što rekoh, samo su što se tiče stringova poredjeni standardi.
Ostalo je BP 7.0 (1992.) - MS QBX PDS 7.1 (1990.)
pascal.230zeljkoj,
-> #227, vitez.koja># => ima 32767 (čak i na Spectrumu ;).
>
> A, jok. Na Spektrumu je string mogao da ima do 256 znakova.
Hm... ček' da pogledam knjige... :)
># => Dalje, u Pascalu je obavezna deklaracija promenljivih (i
># => svega ostalog ;), dok je u BASIC-u opciona.
>
> žega se pametan stidi, time se lud ponosi - kaže naš narod.
Deklarisanje promenljivih možda jeste korisno, ali je strašno zamorno.
Uostalom, postoji OPTION EXPLICIT, pa možeš da biraš. :)
> Porediš apstraktne "novije BASIC kompajlere" sa određenim
> Pascal kompajlerom za određeni računar. Kako zgodno ;) Sa jedne
> strane,
Pod 'noviji BASIC kompajler' podrazumevam MS QBX PDS 7.1 iz 1990. godine.
> opraštaš BASICu nemogućnost pravljenja funkcija (kao, imaju sve
> novije verzije;), sa druge strane kačiš Pascalu i ono što nije
> do
Pa imaju. Još je i prastari MS QB od pre desetak godina mogao da
pravi funkcije i procedure, kao uostalom i Borlandov TB.
> novije verzije;), sa druge strane kačiš Pascalu i ono što nije
> do njega - segmentna ograničenja PCa.
koja BASIC uspeva da prevazidje. :)
> E, da, setih se: basic programer doživljava daleko veći
> kulturološki šok pri prelasku na neki moderniji jezik, nego
Šta je to 'kulturološki šok'? :))
pascal.231visnja,
-> #217, zeljkoj> Na kraju, BASIC kao jezik (ne uzimajući u obzir konkretnu
> implementaciju),
Ja se profesionalno bavim samo pascalom, bejzik mi je naravno "maternji"
jezik. Iako sam okoreli pascal-ovac, ruku na srce moram priznati da
si u pravu, samo treba naci stvarno dobar kompajler. To je nekada
davno i BillG rekao, nesto u fazonu: 'Nema toga sto ne mogu da napisem
u QBASIC-u'.
pascal.232visnja,
-> #223, djelovic> funkcijama/procedurama prima po defaultu parametre po imenu, a
> ne po vrednosti. Mada se meni čidi da je izbor jezika pre svega
> stvar mode i ukusa, a ne
Hmmm, Ja rekoh da sam okoreli PASCAL-ovac, ali vide li ti na spectrumu
implementaciju BETA BASIC-a. Rekurzija u njemu radi fenomenalno, dakle
podrzava parametre po vrednosti, jos sto moze i u RUN TIME sam sebe
da menja (mislim program), brise, pise...
Voleo bih da u BP-u sa kojim po ceo dan radim imam onako mocnu
spectrumovu VAL naredbu :
10 a$="10+30/2"
20 n=VAL (a$)
30 PRINT n
i on mi napise 25 !
pascal.233visnja,
-> #227, vitez.koja> Lično mislim da su oba pomenuta jezika slabija od Ca (basic
> mi je suviše mrljav, pascal suviše krut), ali makar se trudim
> da realno sagledam vrednost svakog. Mogao bi i ti da počneš.
Sa stanovista LISP-a ili FORTH-a C,BASIC i PASCAL su isti jezici!
Da ne sirimo mnogo diskusiju, meni bi se C ili C++ vise svideli od
pascala da sam nasao dobar C (C++) compiler. Za istu stvar mi BP70 ili
DELPHI oduzme oko minut a BC4.5 ihaaaaaa. (prevodjenje slicnih primera
iz SAMPLES/EXAMPLES dir-ova). Isto vazi i za zauzimanje diska.
I koji je jezik na kraju najbolji. Besmislena diskusija, svako bi trebao
da bira sta mu treba. Sta mi vredi propterecenje operatora u C++, kada mi
to nije bila primarna potreba pre par godina. Trebao mi je dobar DOS
korisnicki interfejs, pogledao sam TV iz BC-a i BP-a i uzeo BP.
itd, itd...
pascal.234postmast,
From: broker@setnet.co.yu (Predrag Supurovic)
Subject: stancanje grafike (stampanje)
Date: Wed, 15 Nov 1995 23:06:53
Asmir Badnjevic said:
PS> Primeri koje imam u prirucniku su u bejziku (bljak)...
AB> Nije. Ne proGramiras valjda u bejziku ??? Ko je kad vidio
AB> proGramirati u bejziku ???
Vide li ti ono "bljak" :))))))
Salim se, normalno da znam i bejzik, samo ono sto znam je
bejzik sa Spektruma, mada se to uklapa i u ovaj... Na PC-u
mi je TPascal prirastao srcu i ne odricem ga se. Bas lep
jezik, kulturan, civilizovan, jasan i prezican, a daje ti
dovoljno slobode da brljas ako bas hoces.
* Origin: Oreska BBS, Uzice = SF BIBLIOTEKA = SETNet: (38:101/101)
pascal.235postmast,
From: broker@setnet.co.yu (Predrag Supurovic)
Subject: EMS XMS
Date: Wed, 15 Nov 1995 23:06:54
Asmir Badnjevic said:
AB> UzGred znas li mozda kako da promjenljive bacim u memoriju iznad
AB> 640kb ???
Pa upravo uz pomoc nekebiblioteke za XMS/EMS. One ti obicno daju
zamene za GetMem i FreeMem, samo stoalociraju memoriju u gornjoj
memoriji. Nisam koristio ali toliko sam mogao da zakljucim iz
dokumentacije.
* Origin: Oreska BBS, Uzice = SF BIBLIOTEKA = SETNet: (38:101/101)
pascal.236postmast,
From: broker@setnet.co.yu (Predrag Supurovic)
Subject: [1/2] stancanje grafike (stampanje)
Date: Wed, 15 Nov 1995 23:07:13
>>> Part 1 of 2...
Asmir Badnjevic to Predrag Supurovic about
AB> source. Pa bi' te zamolio (jel' treba kleknuti ???) da (ako mozes)
AB> source posaljes putem maila. Kao poruku. Nisam siGuran da li moze,
Unit GraphPRN;
{
This unit is designed to send graphics images to Epson Compatible and late
model IBM ProPrinter Dot Matrix printers. It takes the image from the
currently active Viewport, determined by a call to GetViewSettings, and
transfers that image to the printer.
}
Interface
Uses Dos, Graph; { Used to get the Image from the Screen }
Var
LST : Text;
Procedure HardCopy (Gmode: Integer);
{ Procedure HardCopy prints the current ViewPort To an IBM or Epson compatible
graphics printer.
Valid Gmode numbers are: -4 to -1 for Epson and IBM Graphic Printers
0 to 7 for Epson Printers
}
Implementation
Procedure HardCopy (Gmode: Integer);
Const
Bits : Array [0..7] of Byte = (128,64,32,16,8,4,2,1);
Var
X,Y,YOfs : Integer; { Screen location variables }
BitData,MaxBits : Byte; { Number of Bits to transfer }
Vport : ViewPortType; { Used to get view settings }
Height, Width : Word; { Size of image to transfer }
HiBit, LoBit : Char; { Char size of image }
LineSpacing, { Additional Info for dump }
GraphixPrefix : String[10]; { " " " " }
Begin
LineSpacing := #27+'3'+#24; { 24/216 inch line spacing }
Case Gmode Of
-1: GraphixPrefix := #27+'K'; { Std. Density }
-2: GraphixPrefix := #27+'L'; { Double Density }
-3: GraphixPrefix := #27+'Y'; { Dbl. Density Dbl. Speed }
-4: GraphixPrefix := #27+'Z'; { Quad. Density }
0..7: GraphixPrefix := #27+'*'+Chr(Gmode); { 8-Pin Bit Image }
Else
Exit; { Invalid Mode Selection }
End;
GetViewSettings( Vport ); { Get size of image to }
Height := Vport.Y2 - Vport.Y1; { be printed }
Width := ( Vport.X2 + 1 ) - Vport.X1;
HiBit := Chr(Hi(Width)); {Translate sizes to char }
LoBit := Chr(Lo(Width)); { for output to printer }
Write( LST, LineSpacing );
Y := 0;
While Y < Height Do
Begin
Write( LST,GraphixPrefix,LoBit,HiBit );
For X := 0 to Width-1 Do
Begin
BitData := 0;
If y + 7 <= Height
Then MaxBits := 7
Else
MaxBits := Height - Y;
For YOfs := 0 to MaxBits do
Begin
If GetPixel( X, YOfs+Y ) > 0
Then BitData := BitData or Bits[YOfs];
End;
Write( LST, Chr(BitData) );
End;
WriteLn ( LST );
Inc(Y,8);
End;
End;
{$F+}
{ LSTNoFunction performs a NUL operation for a Reset or Rewrite on LST
(Just in case)
}
Function LSTNoFunction( Var F: TextRec ): integer;
Begin
LSTNoFunction := 0; { No error }
>>> Continued to next message...
* Origin: Oreska BBS, Uzice = SF BIBLIOTEKA = SETNet: (38:101/101)
pascal.237postmast,
From: broker@setnet.co.yu (Predrag Supurovic)
Subject: [2/2] stancanje grafike (stampanje)
Date: Wed, 15 Nov 1995 23:07:14
>>> Part 2 of 2...
end;
{ LSTOutputToPrinter sends the output to the Printer port number stored in the
first byte of the UserData area of the Text Record.
}
Function LSTOutputToPrinter( Var F: TextRec ): integer;
var
Regs: Registers;
P : word;
begin
With F do
Begin
P := 0;
Regs.AH := 16;
While (P < BufPos) and ((regs.ah and 16) = 16) do
Begin
Regs.AL := Ord(BufPtr^[P]);
Regs.AH := 0;
Regs.DX := UserData[1];
Intr($17,Regs);
Inc(P);
end;
BufPos := 0;
End;
if (Regs.AH and 16) = 16 then
LSTOutputToPrinter := 0 { No error }
else
if (Regs.AH and 32 ) = 32 then
LSTOutputToPrinter := 159 { Out of Paper }
else
LSTOutputToPrinter := 160; { Device write Fault }
End;
{$F-}
{ AssignLST both sets up the LST text file record as would ASSIGN, and
initializes it as would a RESET. It also stores the Port number in the first
Byte of the UserData area.
}
Procedure AssignLST( Port:Byte );
Begin
With TextRec(LST) do
begin
Handle := $FFF0;
Mode := fmOutput;
BufSize := SizeOf(Buffer);
BufPtr := @Buffer;
BufPos := 0;
OpenFunc := @LSTNoFunction;
InOutFunc := @LSTOutputToPrinter;
FlushFunc := @LSTOutputToPrinter;
CloseFunc := @LSTOutputToPrinter;
UserData[1] := Port - 1; { We subtract one because }
end; { Dos Counts from zero. }
end;
Begin
AssignLST( 1 ); { Sets output printer to LPT1 by default.
Change this value to a 2 to select LPT2.
Note: BIOS only handles LPT1 and LPT2. }
End.
* Origin: Oreska BBS, Uzice = SF BIBLIOTEKA = SETNet: (38:101/101)
pascal.238postmast,
From: Vladimir.Svrkota%f119.n111.z38@setnet.setnet.co.yu (Vladimir Svrkota)
Subject: GRAPH.TPU
Date: Wed, 15 Nov 1995 10:23:00
VS> fajl GRAPH.TPU mi je unisten, a grafika mi u ovom trenutku treba.
BZ> Javi se na tlf ***-*** radnim danom posle podne trazi Boris-a
Milan Smederevac mi je to vec uploadovao na Ecstasy, tako da je sve OK.
Thanx anyway :)
... éí 'aaníígóó 'áhoot'é
* Origin: ECSTASY BBS * Indjija * 022 53-884 * SETNet: (38:111/119)
pascal.239postmast,
From: nemesis@styx.bc.co.yu (NEMESIS)
Subject: RE: PASCAL
Date: Tue, 14 Nov 95 12:17:00 +0100
>>> Sada mene zanima kako stoji stvar sa laserima, ne bih da pisem
>>> sam rutine, ima li neko neki UNIT?
--->
---> Ne znam za unit, al' mislim da na FFS-u (?) moze da se nade BGI za
---> rad sa stampacima.
Ima fonu BGI koji kao ti simulira ekran na
STAMPACU i tamo povlacis linije ... :)))
┌────────────────────────────────────────────────────────────────────Ě
│/\■/\ .:NemesiS:. /\■/\ S.T.Y.X BBS /\■/\ ║
│ / > NEMESIS@STYX.BC.CO.YU >:[] / \ 011\444-95-22 - 22-06 < \ ║
ď════════════════════════════════════════════════════════════════════╝
... /\ S.T.Y.X BBS /\ 011\444-95-22 /\ 22-06 /\
* ■ >:[] NemesiS ■
pascal.240postmast,
From: SKOA@vila.bc.co.yu
Subject: pascal
Date: Fri, 17 Nov 95 14:54:02 GMT
-=> Quoting "Milos Visnjic" <visnja@sezam.UUCP> to All <=-
> Da li neko zna kako da se radi sa prosirenom memorijom? Recimo
> da neke graficke ekrane sa diska ne ucitam u osnovnu memoriju
> nego u prosirenu iznad 640 Kb.
"V<> Moja preporuka ti je da program prevedes u PROTECTED rezimu
"V<> (TARGET:PROTECT), Tada mozes koristiti GLOBALALLOC iz nekog WIN unita
"V<> da alociras memorije koliko hoces (koliko imas), da ne kazem vidis
"V<> memoriju linearno. Ako te interesuje ovakva metoda javi, pa da se
"V<> prisetim tacno kako se radi. Mada je bilo o ovome reci pre koji
"V<> mesec... -!- UUCP to EZY importer by ZDule 06.95
Je li to u BP? Ako tako uradim onda proGram moGu koristiti samo
u windowsu. Ili Ga moGu koristiti i u DOSu? Interesuje me pa bi
moGao da objasnis.
... Press any user to continue.
--- FMail/386 1.02
* Origin: Vila co.BBS ■ Prijedor_RS ■ +381 79 11 301 ■ B.C.: (95:790/113)
pascal.241djelovic,
-> #227, vitez.koja> Lično mislim da su oba pomenuta jezika slabija od Ca (basic
> mi je suviše mrljav, pascal suviše krut)
Lično mi se čini da su C i Pascal (ili Modula-2, nije bitno) funkcionalno
identični, s tim što Pascal ipak ima daleko čitljiviju sintaksu, plus nema one
perverzne operatore koji danas uz optimizujuće kompajlere ionako više nisu ni
bitni.
pascal.242vitez.koja,
-> #241, djelovic#=>> Lično mislim da su oba pomenuta jezika slabija od Ca
#=>> (basic mi je suviše mrljav, pascal suviše krut)
#=>
#=> Lično mi se čini da su C i Pascal (ili Modula-2, nije
#=> bitno) funkcionalno identični, s tim što Pascal ipak ima
#=> daleko čitljiviju sintaksu, plus nema one
Pošto su u pitanju jezici (manje-više) istog nivoa i opšte
namene, nije ni čudo. Ali, C mnogo više pristaje _mom_ načinu
razmišljanja (zato sam i počeo rečenicu sa "lično"). Uzmimo u
razmatranje neki prost primer, npr. skidanje ANSI sekvenci iz
teksta koji se nalazi u baferu:
while(*text) {
if(*text==ESC)
if(*(text+1)=='[') {
while(!isalpha(*text++));
continue;
}
putch(*text++);
}
U Pascalu oko ovog trivijalnog problema ima mnogo više da se
mozga, i to ne zbog prirode problema nego zbog prirode jezika.
Demantujte me, napišite kraće/logičnije od ovoga u Pascalu. (i u
Cu najverovatnije može kraće, ovo sam napisao iz glave).
pascal.243vitez.koja,
-> #222, zeljkoj#=> Ovo su bile stvari kojih sam se setio ovako na brzinu. Ima tu još
#=> da se priča... :)
Nego, zaboravi ti da pomeneš najveću manu (Q)Basica, kad smo već
kod stringova, dakle:
DIM a AS STRING * 10
a="qwerty"
IF a="qwerty"
PRINT "Dobro je :)"
ELSE
PRINT "Nije dobro"
END IF
I naravno biće ispisano "Nije dobro", zato što se a dopunjuje sa
spejsovima do "pune dužine" (10 u ovom slučaju), pa se mora kod
ovakvih upoređivanja raditi stalno RTRIM$(a)...
sk
pascal.244zeljkoj,
-> #243, vitez.koja> Nego, zaboravi ti da pomeneš najveću manu (Q)Basica, kad smo
> već kod stringova, dakle:
>
> DIM a AS STRING * 10
> a="qwerty"
> IF a="qwerty"
> PRINT "Dobro je :)"
> ELSE
> PRINT "Nije dobro"
> END IF
>
> I naravno biće ispisano "Nije dobro", zato što se a dopunjuje
> sa spejsovima do "pune dužine" (10 u ovom slučaju), pa se mora
> kod ovakvih upoređivanja raditi stalno RTRIM$(a)...
E stvaaaaarno... PA TO SU STRINGOVI FIKSNE DUčINE, uvedeni tek u kasnijim
verzijama QBasica (valjda zbog FORTRAN nostalgičara ;).
Zašto bi uopšte pisao DIM a AS STRING * 10 kad možeš samo
DIM a AS STRING
I tako deklarišeš standardni variable length string sa kojim sve radi ok.
BTW, zašto bi pisao i DIM a AS STRING kad možeš jednostavno da upotrebiš
(bez ikakve deklaracije) promenljivu A$, što je potpuno isto. :)
Naravno, može i DIM a$
BASIC nudi desetine mogućnosti, za razliku od krutog Pascala. :)
pascal.245djelovic,
-> #242, vitez.koja> while(*text) {
> if(*text==ESC)
> if(*(text+1)=='[') {
> while(!isalpha(*text++));
> continue;
> }
> putch(*text++);
> }
>
> U Pascalu oko ovog trivijalnog problema ima mnogo više da se
> mozga
Ako nisi svestan koliko je ovaj kod gore nečitljiv, ondak si stvarno
zabrazdio :). Inače, isti kod na Pascalu ima možda jedan red više, no pošto
nisam napisao red na Pascalu već par godina, ne usuđujem se da ti to
demonstriram :). Neko malo verziraniji će to bolje uraditi.
pascal.246visnja,
-> #234, postmast> Salim se, normalno da znam i bejzik, samo ono sto znam je
> bejzik sa Spektruma, mada se to uklapa i u ovaj... Na PC-u
> mi je TPascal prirastao srcu i ne odricem ga se. Bas lep
> jezik, kulturan, civilizovan, jasan i prezican, a daje ti
> dovoljno slobode da brljas ako bas hoces.
TAKO JE! Vidim ja da su Spectrumovci uglavnom presli na TPascal.
pascal.247visnja,
-> #240, postmast> Je li to u BP? Ako tako uradim onda proGram moGu koristiti samo
> u windowsu. Ili Ga moGu koristiti i u DOSu? Interesuje me pa bi
> moGao da objasnis.
Jeste u BP-u je. Program tada NIJE WINDOWS aplikacija. Samo mu treba
DPMI16.OVL i RTMLOAD.EXE. Radi sa DOS-om i svakom masinom na kojoj radi
borlandov DPMI. Ne daj da te zbuni to sto u PROTECTED modu koristis neke
unite iz WINDOWS-a.
Pogledaj primer:
uses WinApi,Crt;
var MemHandle:Word;
begin
ClrScr;
WriteLn(getfreespace(0));
ReadKey;
MemHandle:=GlobalAlloc(GMEM_FIXED,1000000);
WriteLn(getfreespace(0));
ReadKey;
GlobalFree(memhandle);
WriteLn(getfreespace(0));
ReadKey;
end.
Dalje, pogledaj HELP za WinApi, sve te funkcije su ti dostupne u DOS protected
modu. Pogledaj kako sve mozes alocirati memoriju, pored GMEM_FIXED. Divno,
zar ne?
Ne zaboravi da ovaj primer iskompajliras sa opcijom TARGET:PROTECTED iz
BP 7.0 IDE.
Pozdrav, Visnja.
pascal.248dr.urbano,
-> #228, vitez.kojaMislim da se nismo razumeli mislim iz programa da procitam ime diskete !
To je valjda negde u nultom sektoru ako se ne varam. I koliko lako moze da
se promeni ime diskete ?
Pozdrav,
Vladimir.
P.S.
Kada neki program (npr. Diskdupe) pravi ekzaktnu kopiju diskete kako
tretira bad sector-e. Da li gleda sta je ispod njih ili jednostavno
na kopiji disketi ostavi mesto i zove ga bad sector ?
P.P.S.S.
Pisem zastitu za neki program pa su mi potrebne ove informacije.
pascal.249dr.urbano,
-> #221, djelovicAko mozes malo preciznije (naravno ako se secas) jer sam kompletno
pretrazio stare pc.prog konferencije, i ne nadjoh nista !
Pozdrav,
Vladimir.
pascal.250jablan,
-> #231, visnja> davno i BillG rekao, nesto u fazonu: 'Nema toga sto ne mogu da
> napisem u QBASIC-u'.
Što se, naravno, i pokazalo tačnim. Evo, recimo, Windows. ;>
pascal.251jablan,
-> #245, djelovicSubj: pascal vs C
>> while(*text) {
>> if(*text==ESC)
>> if(*(text+1)=='[') {
>> while(!isalpha(*text++));
>> continue;
>> }
>> putch(*text++);
>> }
> Ako nisi svestan koliko je ovaj kod gore nečitljiv, ondak si
> stvarno zabrazdio :). Inače, isti kod na Pascalu ima možda
> jedan red više, no pošto nisam napisao red na Pascalu već par
> godina, ne usuđujem se da ti to demonstriram :). Neko malo
> verziraniji će to bolje uraditi.
Ono sa !isalpha mi je sumnjivo, ali ja sam ga bukvalno preveo.
for i:=1 to Length(Buf) do
begin
if (Buf[i]=chr(27)) and (Buf[i+1]='[') then
begin
i:=i+2;
while not ((Buf[i] in ['A'..'Z']) and (Buf[i] in ['a'..'z')]) do
i:=i+1;
end;
Write(Buf[i]);
end;
Jes' da je malko duže od ovog u C-u, ali se bar razume. Pa kladim se
da će i neko ko ne zna paskal ovo bez problema razumeti. Uostalom,
zato paskal služi i u edukativne svrhe. E sad, stvar je kompajlera
kako će ovo prevesti i da li će C biti brži nego paskal. Optimizacija
u 90% slučajeva na sadašnjim mašinama nije toliko bitna.
pascal.252vitez.koja,
-> #244, zeljkoj#=> Zašto bi uopšte pisao DIM a AS STRING * 10 kad možeš samo
#=> DIM a AS STRING
Zbog rada sa recordima sa nekom datotekom za koje mi je neophodno
potrebno da svi budu iste dužine.
sk
pascal.253zeljkoj,
-> #252, vitez.koja># => Zašto bi uopšte pisao DIM a AS STRING * 10 kad možeš samo
># => DIM a AS STRING
>
> Zbog rada sa recordima sa nekom datotekom za koje mi je
> neophodno potrebno da svi budu iste dužine.
Koristi (možda malo zastareli ;) FIELD/GET/PUT...
Ustvari, rešenje gornjeg problema je da pišeš RTRIM$(a) umesto samo a,
da bi višak blankova bio izbačen. :)
pascal.254djelovic,
-> #251, jablan> end;
> Write(Buf[i]);
Između ova dva reda ti fali jedno "else", ali dobro de :). Ukoliko podesimo
begin-ove da se slažu sa kojinim "{", dobijamo kod sasim slične dužine.
> E sad, stvar je kompajlera
> kako će ovo prevesti i da li će C biti brži nego paskal. Optimizacija
> u 90% slučajeva na sadašnjim mašinama nije toliko bitna.
Ovo je malo problematično?
C kompajleri prave bolji kod, dal' zato što je više u njih uloženo, dal'
zato što Borland jedini pravi Pascal pa je onda od njega sve brže :).
No, Pascal bi definitivno trebao da može bolje da se izoptimizuje, s
obzirom na to da kompajler ne mora toliko da strepi od "alias" pointera koji u
ogromnoj meri kvare optimizaciju.
--
A da optimizacija nije bitna... Pa sad, ja držim da je ručna optimizacija
čak štetna, ali ona koju radi kompajler? Razlika sa i bez nje je drrrastićna.
pascal.255dr.urbano,
Pisem neku zastitu za program (install) pa bi bilo super kad bi mi neko znao da
kaze sta se desava kada kopiram disketu na disketu nekim programom(npr
diskdupe)koji prai egzaktnu kopiju diskete. Kako tretira bad sector_e dali na
disketi kopiji stvori bad sector ili i pise nesto u njega ?
Dakle moze li se nesto sakriti u bad sector originalne diskete i kasnije to
koristiti ?
Postoji li neki drugi sigurniji nacin da se procita ime diskete (broj nesto)
a da nije lako promenjiv?
Jer kolko ja znam ti podaci se drze u nultom sectoru ali diskdupe moze sve to
da prenese na drugu disketu tako da nista od zastite (pisem install proceduru).
Pozdrav,
Vladimir.
pascal.256atech,
-> #255, dr.urbano> Pisem neku zastitu za program (install) pa bi bilo super kad bi
> mi neko znao da kaze sta se desava kada kopiram disketu na
> disketu nekim programom(npr diskdupe)koji prai egzaktnu kopiju
> diskete. Kako tretira bad sector_e dali na disketi kopiji
> stvori bad sector ili i pise nesto u njega ? Dakle moze li se
> nesto sakriti u bad sector originalne diskete i kasnije to
> koristiti ?
Sta god da budes koristio (za koji se algoritam odlucis) vodi
racuna o tome da dobro zastitis sam algritam. U suprotnom sve pada
u vodu. Ovaj tip zastite o kome govoris ne preporucujem (kupcu je
neophodno obezbediti bekap) ali ako zelis da ga testiras koristi
programe kao sto su anadisk ili teledisk a ne diskdupe.
> Postoji li neki drugi sigurniji nacin da se procita
> ime diskete (broj nesto) a da nije lako promenjiv?
Ime diskete (iz boot-a) kao i serijski broj diskete koji se
nalaze u boot-u je veoma lako procitati a jos lakse izmeniti. Ne
postoji efikasan nacin sprecavanja provalnika da izmeni ove podatke.
Ne prepoucujem isti. O ovome je vec nekoliko puta bilo govora pre par
nedelja u ovoj istoj temi.
> Jer kolko ja znam ti podaci se drze u nultom sectoru ali
> diskdupe moze sve to da prenese na drugu disketu tako da nista
> od zastite (pisem install proceduru).
Cak i da ih ne prenosi opet nista od zastite jer ih je moguce
promeniti. Opet, cak i ako uspes da napravis savrsen algoritam koji
ce ih citati i kontrolisati isti se moze lako izmeniti pa opet nista
od zastite sto nas vraca na onaj pasus o zastiti algoritma.
Ako prodajes program poznatom kupcu za koga znas da nece zloupotrebiti
ili pokusati da zloupotrebi tvoj program svaka zastita je ok. Ako mislis
da je tvoj program vredan piratovanja razmisli i o drugim solucijama...
pascal.257vitez.koja,
-> #248, dr.urbano#=> Mislim da se nismo razumeli mislim iz programa da
#=> procitam ime diskete !
Razumeli smo se mi, samo ti hoćeš jedno a tražiš drugo. Reši
da li ti treba ime (volume label) ili serijski broj diska, pa
javi...
pascal.258visnja,
-> #250, jablan>> davno i BillG rekao, nesto u fazonu: 'Nema toga sto ne mogu da
>> napisem u QBASIC-u'.
>
> Što se, naravno, i pokazalo tačnim. Evo, recimo, Windows. ;>
Bravo majstore, tako je. Dobro sam se nasmejao, da znas da ih je
pisao
u QBASIC-u.
pascal.259visnja,
-> #251, jablan> for i:=1 to Length(Buf) do
> begin
> if (Buf[i]=chr(27)) and (Buf[i+1]='[') then
> begin
> i:=i+2;
> while not ((Buf[i] in ['A'..'Z']) and (Buf[i] in ['a'..'z')])
> do i:=i+1;
> end;
> Write(Buf[i]);
> end;
>
> Jes' da je malko duže od ovog u C-u, ali se bar razume. Pa
> kladim se da će i neko ko ne zna paskal ovo bez problema
> razumeti. Uostalom,
Aux, burazeru, ja razmisljao da repliciram posto radim u PASCALU, ali
kako covek rece, malo vise razmisljanja je trebalo (dakle u pravu je)
pa sam odustao, ali sad se moram umesati:
- bolje umesto Chr(27) staviti samo #27
- i:=i+2 = INC(i,2);
- i:=i+1 = INC(i);
- i BP ima funkciju ISAPLHA,
tako ce program vise liciti na C, a i ovo sto pominjem ne pripada
standardnom
pascal-u. A i Buf bi trebao da bude pointer, fleksibilnije je.
Ocigledno
da sam zreo za C.
A i ne slazem se da pascal sluzi za edukativne svrhe, barem ne
Borland Pascal.
Stvar je ipak poprilicno individualna. Zakleti sam pascalovac i bolje
poznajem
pascal nego C - vise mi je vremena trebalo da vizuelno proverim
semantiku
ovog pascal programa nego onog u C-u ?!? I dalje tvrdim da je PASCAl
bolji
jezik od C-a. Zasto ? Nemam pojma, ja ga volim, volim i C, ali pascal
vise.
Stvar emocija! Pamet mi govori da je C bolje, ali srce...
pascal.260.sima,
-> #232, visnja║║ Voleo bih da u BP-u sa kojim po ceo dan radim imam onako mocnu
║║ spectrumovu VAL naredbu :
Pa i meni je nedostajala u početku. ALI... VAL naredba, kao i sve
ostale se interpretiraju i ne mogu da budu brže od moje val naredbe u
pascalu. Jednom je napisana i više mi ne nedostaje :) Što se tiče raznih
MS-ovih kompajlera i da li su bolji ili lošiji, moj stav je: NE koristim
ni jedan MS-ov kompajler. U životu sam koristio samo MS Fortran jer mi
je trebalo nešto malo za fakultet. Njihov interface je za mazohiste, a
ja ne spadam u tu grupu ljudi. I sam stav MS-a da će koristiti Watcom
(nadam se da nije dezinformacija) radi poboljšanja performansi govori
sam za sebe.
Što se tiče samomodifikacije koda, po meni to spada u prljavo
programiranje, teško se prenosi i vrlo je sklono greškama koje su skoro
nemoguće za otkrivanje.
pascal.261.sima,
-> #229, zeljkoj║║ Kao što rekoh, samo su što se tiče stringova poredjeni standardi.
║║ Ostalo je BP 7.0 (1992.) - MS QBX PDS 7.1 (1990.)
Što se tiče stringova stvari stoje ovako.
U BP 7.0 je uveden null-terminated string tip, kao u C-u. Veličina je
ograničena na 65535. Evo i ja kao ljubitelj Pascala ću da vam pomognem.
Ono što ne valja nisu strignovi ni val naredba ni.... Meni najviše smeta
komplikovanost povezivanja C-a i Asemblera sa Pascalom. Tu su zabrljali.
Može da se linkuje pod uslovom da su globalne promenljive definisane u
delu programa koji je napisan na Pascalu.
pascal.262.sima,
-> #227, vitez.koja║║ Lično mislim da su oba pomenuta jezika slabija od Ca (basic
║║ mi je suviše mrljav, pascal suviše krut), ali makar se trudim da
║║ realno sagledam vrednost svakog. Mogao bi i ti da počneš.
Evo ga lep komentar. U potpunosti se slažem. Lično koristim Pascal za
sitnice a C za krupnice. A BASIC za hm...( ne mogu da se setim :)
pascal.263vitez.koja,
-> #251, jablan
Imaš par grešaka u programu (npr. unutrašnja while petlja je
beskonačna, ekvivalentna sa "while true do" ali da se ne kačimo
za to.
Logički izrazi tipa "X in ['a'..'z']" su (mnogo?) sporiji nego
pešačko ispitivanje "if X>='a' and X<='z'", ali nema ni to veze.
Ono što ima veze je da tvoj pascal program radi sa baferom dužine
do 256 bajtova, što je smešno. Ako ne koristiš Turbo Pascalov tip
string, nego radiš sa najobičnijim nizom, onda ne možeš da
koristiš funkciju Length, pa ti program manje ili više raste, već
prema tome kako organizuješ stringove.
Inače, i onaj moj primer ima nepotrebnih redova, tako da se
prostim brisanjem stiže do
while(*text) {
if(*text==ESC && *(text+1)=='[')
while(!isalpha(*text++));
putch(*text++);
}
Slažem se da je veoma nečitljivo.
Još jedna bitna stvar koju C ima, a konkurencija ne, su xprintf
funkcije i njihovo formatiranje izlaza. Recimo, sa
"%s\r\n%-8s%s\r\n %s, %s, %d chr\r\n Odgovor na %s, %s\r\n%s\r\n"
Je definisan ceo heder konferencijskih poruka na Sezamu. Istina,
to može svako da napiše, ali bolje je kada ne mora ;)
Na kraju, da me neko ne razume pogrešno, ja sam odrastao na
Pascalu i mnogo ga volim... Pravi domaći izdajnik O:)
pascal.264jablan,
-> #263, vitez.koja> Imaš par grešaka u programu (npr. unutrašnja while petlja je
> beskonačna, ekvivalentna sa "while true do" ali da se ne kačimo
> za to.
U pravu si, umesto 'and' treba 'or'.
> Logički izrazi tipa "X in ['a'..'z']" su (mnogo?) sporiji nego
> pešačko ispitivanje "if X>='a' and X<='z'", ali nema ni to
> veze.
U principu, mislio sam da je ovo rasprava 'jezik protiv jezika', a ne
'implementacija protiv implementacije'. Nisam mnogo obraćao pažnju na
brzinu, nego sam hteo da ispadne malo 'virtovski'.:)
> Još jedna bitna stvar koju C ima, a konkurencija ne, su xprintf
> funkcije i njihovo formatiranje izlaza. Recimo, sa
>
> "%s\r\n%-8s%s\r\n %s, %s, %d chr\r\n Odgovor na
> %s, %s\r\n%s\r\n"
>
> Je definisan ceo heder konferencijskih poruka na Sezamu.
> Istina, to može svako da napiše, ali bolje je kada ne mora ;)
I ovo, kao i sve ostalo u svakom programskom jeziku ima svoje dobre i
svoje loše strane.
pascal.265jablan,
-> #259, visnja>> for i:=1 to Length(Buf) do
>> begin
>> if (Buf[i]=chr(27)) and (Buf[i+1]='[') then
>> begin
>> i:=i+2;
>> while not ((Buf[i] in ['A'..'Z']) or (Buf[i] in ['a'..'z']))
>> do i:=i+1;
>> end;
>> Write(Buf[i]);
>> end;
> - bolje umesto Chr(27) staviti samo #27
> - i:=i+2 = INC(i,2);
> - i:=i+1 = INC(i);
> - i BP ima funkciju ISAPLHA,
> tako ce program vise liciti na C, a i ovo sto pominjem ne
> pripada standardnom
> pascal-u. A i Buf bi trebao da bude pointer, fleksibilnije je.
Hm, kao što sam rekao, trudio sam se da poštujem ISO Pascal (mada
nisam u potpunosti uspeo), tako da nisam želeo da koristim ove
nestandardne hibridne ekstenzije. Ruku na srce, paskal je bez njih
ništa, ali jezik je jezik... Al', ajde da ti odgovorim: čini mi se da
bi svaki kompajler isto preveo sve ovo što si nabrojao. ADD AX,2 je
čak brže od 2xINC AX.
> A i ne slazem se da pascal sluzi za edukativne svrhe, barem ne
> Borland Pascal.
E, ja mislim na standarni paskal, jer Borland paskal ne liči više na
paskal, i smatram da nije dostojan da nosi to ime. Standardan paskal,
inače, nije za drugo, sem za edukativne svrhe, jer šta će ti paskal
bez raznih 'uses-a' i sličnih poštapalica? Lično mislim da je paskal
idealan za učenje programiranja, a da kasnije, kada se dobro ispeče
zanat, treba preći na neki moćniji jezik, tj. C ili Modulu-2.
> I dalje tvrdim da je
> PASCAl bolji
> jezik od C-a.
Svaki jezik, kao i svaki predsednički kandidat (???!!!:))) ima svoje
'za' i svoje 'protiv'. Ko što kaže ona stara pesma, 'neko voli ono,
neko voli ovo...':). I ja, kao i ti, više volim paskal, ali ću i ja
verovatno preći na C(++), zato što se u poslednje vreme prave moćniji
kompajleri i neke stvari se mnogo brže završe.
> Stvar emocija! Pamet mi govori da je C bolje, ali srce...
'Što se boooore miiiisli moooojeeeee...' :)
pascal.266visnja,
-> #263, vitez.koja> Ono što ima veze je da tvoj pascal program radi sa baferom
> dužine do 256 bajtova, što je smešno. Ako ne koristiš Turbo
> Pascalov tip
Evo DIREKTNOG prevoda C programa na PASCAL, TEXT je terminisan nulom,
dakle
ide do 65535 (ili nesto manje) karaktera, cak i vise ako se program
prevede
u PROTECTED rezimu, upotrebio sam nezgrapne skupove (IN !), jer sam
pre par
poruka rekao da i PASCAL ima ISALPHA! E pa nije bas tacno, ima
ISCHARALPHA
funkciju koja je ekvivalent, ali ta funkcija je u WINPROCS unit-u,
dakle
samo za WINDOWS programe. Nije je problem izvuci odande i
implemntirati za
dos... ali lenj sam...
Evo i programa prepisanog do slovca iz C-a:
uses strings;
var TEXT:pchar;
begin
TEXT:=strnew('Neki ansi string ubacen ovde na neki nacin');
{======================EVO GA, DO SLOVCA========================}
while (TEXT^<>#0) do
begin
if (TEXT^=#27) and ((TEXT+1)^='[')then
while not ((text^ in['a'..'z']) or (text^ in['A'..'Z'])) do
inc(text);
write(TEXT^);
inc(text);
end;
{=================================================================}
end.
> Još jedna bitna stvar koju C ima, a konkurencija ne, su xprintf
> funkcije i njihovo formatiranje izlaza. Recimo, sa
>
> "%s\r\n%-8s%s\r\n %s, %s, %d chr\r\n Odgovor na
> %s, %s\r\n%s\r\n"
Konkurencija kaze: (izvod iz BorlandPascal HELP-a)
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
FormatStr procedure (DRIVERS unit)
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
Declaration:
procedure FormatStr(var Result: String; Format: String; var
Params);
Function: ovo gledaj \/ \/ \/ \/ \/
A generalized string formatting routine that works much like the C
language's vsprintf function. Given a string in Format that includes
format
specifiers and a list of parameters in Params, FormatStr produces a
formatted output string in Result.
The Format parameter can contain any number of format specifiers
directing
what format is to be used to display the parameters in Params. Format
specifiers are of the form %[-][nnn]X, where
% indicates the beginning of a format specifier
[-] is an optional minus sign (-) indicating the parameter is to be
left-justified (by default, parameters are displayed
right-justified)
[nnn] is an optional, decimal-number width specifier in the range
0..255 (0
indicates no width specified, and non-zero means to display in
a field
of nnn characters)
X is a format character:
's' means the parameter is a pointer to a string.
'd' means the parameter is a Longint to be displayed in decimal.
'c' means the low byte of the parameter is a character.
'x' means the parameter is a Longint to be displayed in hexadecimal.
'#' sets the parameter index to nnn.
...
SEM PREOPTERECENJA OPERATORA i visestrukog nasledjivanja ( A da vidim
ko
koristi visestruko nasledjivanje sem u RTL-u), nema toga sto C++ moze
a
Pascal ne MOZE!
Pozdrav, Visnja - Izv'n'te na DUUUGOJ PORUCI.
pascal.267maksa,
-> #266, visnja>> SEM PREOPTERECENJA OPERATORA i visestrukog nasledjivanja ( A
>> da vidim ko koristi visestruko nasledjivanje sem u RTL-u), nema
>> toga sto C++ moze a Pascal ne MOZE!
Oooo, ima:
- Šabloni
- Izuzeci
- RTTI
Šta ćeš više.
Da stvar bude grđa po Pascal, sve ove stvari (a i one koje ti
pominješ) su u definiciji C++ jezika, dok' su objekti u Pascalu
(ubr., stoje mu k'o piletu gas-maska ;) Borlandova izmišljotina,
i postojaće dok postoji ta firma. Dakle, ulažeš vreme i trud da
savladaš nešto (paskal sa objektima) čiji opstanak i unapređivanje
zavisi od razvojne politike jedne ugrožene firme, i njenog kotiranja
na berzi, spram C++-a koji je priznati standard sa lepom sadašnjosti
i istom takvom perspektivom.
Zar vas ne zamara da jednim okom čitate uputstvo za Object Oriented
Pascal, a drugim pratite stanje Borlandovih akcija na berzi?
Phuuu brate, frka ... pogotovo u ova smutna vremena. ;)
pascal.268pedjak,
-> #259, visnja> - bolje umesto Chr(27) staviti samo #27
Nema potrebe, jer će rezultat kompajliranja biti isti - chr(27) će
biti zamenjeno vrednošću koju vraća ova sistemska funkcija.
pascal.269mastermind,
-> #268, pedjak> - bolje umesto Chr(27) staviti samo #27
ă─> Nema potrebe, jer će rezultat kompajliranja biti isti - chr(27) će
ă─> biti zamenjeno vrednošću koju vraća ova sistemska funkcija.
ali #27 je konstanta, a chr(27) je funkcija... potrebno je neko vreme
da on pozove funkciju, i da se vrati posle toga (uz razne operacije sa stekom)
što znači da će #27 ipak brže da se izvrši...
MasterMind
pascal.270postmast,
From: srdjan.dakic@panon.ns.ac.yu (Srdjan Dakic)
Subject: Re: Drajveri
Date: Wed, 8 Nov 1995 17:49:00 GMT
--> "Milos Cikota" <icile@sezam.UUCP>
IC> Da li neko zna kako izgleda struktura datoteka .SYS u DOS-u?
Imas u Racunarima, mislim da je izmedju broja 72 i 76, detaljno objasnjen
prikaz "samogradnje" RAM diska.
pascal.271postmast,
From: srdjan.dakic@panon.ns.ac.yu (Srdjan Dakic)
Subject: Re: Zastita programa
Date: Wed, 8 Nov 1995 17:57:00 GMT
--> Dragan Levic
DL> Da li je moguce napraviti u Paskalu takvu zastitu nekog programa da ako
DL> korisnik programa (da li ste mu instalaciju nekog skupog programa pa necete
DL> da mu dozvolite da je rasiri dalje) hoce da program presnimi program na
DL> disketu/diskete zastita automatski obrise *.exe fajlove tog programa (recim
DL> da je ceo program u jednom direktorijumu)?
Moguce je. U neki fajl, moze cak i u sam EXE, upisujes podatak o
direktorijumu i/ili masini (oznaka BIOS-a)
Najlakse ti je da sve relevantne podatke strpas u jedan niz bajtova
odgovarajuce duzine, opalis mu CRC-32 i dobijeni rezultat u vidu 4
bajta zalepis na EXE. Niko nece ni obratiti paznju na "smece" na kraju
ili unutar fajla.
Ako se prilikom startovanja tekuci podatak ne slaze sa sadasnjim stanjem
lepo uradis jedno FORMAT C: ili sta vec hoces uz prigodnu poruku. ;)
Samo... vrlo je lako razbiti tvoju zastitu posto se programi pisani
na visem programskom jeziku sablonski prevode na asembler i iz aviona
je moguce za manje od 10 minuta pronaci je -- osim ako ona nema neke
snaznije anti-debug tehnike.
Pozdrav :)
pascal.272postmast,
From: srdjan.dakic@panon.ns.ac.yu (Srdjan Dakic)
Subject: Re: Zastita programa
Date: Thu, 16 Nov 1995 14:38:00 GMT
--> Dragan.Levic%f119.n111.z38@setnet.setnet.co.yu (Dragan Levic)
DL> Da hocu da zastitim program koji sam ja sam pisao ne bi bilo nikakvih probl
DL> ali posto to nije moj program vec samo program koji ja treba da instaliram
DL> disk i sprecim korisnika od daljeg sirenja programa (presnimavanja).
DL> A sto se tice drugih mera to nije potrebno ja samo hocu da unistim dati
DL> program, a ne celi disk!
A u krajnjoj liniji: najbolja zastita programa je davanje podrske
korisniku. Nijedan program nije pravljen da traje neko duze vreme.
(mozda 'hello world' ;)
pascal.273postmast,
From: Asmir.Badnjevic%p1.f135.n135.z38@setnet.setnet.co.yu (Asmir Badnjevic)
Subject: stancanje grafike (stampanje)
Date: Thu, 16 Nov 1995 20:18:21
PS> Asmir Badnjevic said:
PS> Vide li ti ono "bljak" :))))))
Vidje Ga ...
PS> Salim se, normalno da znam i bejzik, samo ono sto znam je
PS> bejzik sa Spektruma, mada se to uklapa i u ovaj... Na PC-u
PS> mi je TPascal prirastao srcu i ne odricem ga se. Bas lep
PS> jezik, kulturan, civilizovan, jasan i prezican, a daje ti
PS> dovoljno slobode da brljas ako bas hoces.
Pa, dobro, znam i ja bejzik ali mi bas i nije dobar. TPascal je
Haos od jezika i uvijek cu raditi u njemu. A sto mi se najvise
svidja kod njeGa je njeGova stroGost. Znas valjda sta Hocu da ka
zem. U clipperu ti nikada nece prijaviti neku loGicku Gresku pri
kompajliranju, vec pri izvrsenju proGrama sto moze dovesti do kra
Ha proGrama u sred izvrsenja, a to moze biti neka sitna Greska ko
ja ce se pojaviti u nezGodnom trenutku.
P.S. Hvala ti na unitu za stampanje Grafike, pokusacu Ga skontati,
ako uspijem :))).
pozdraw, ASKO
... Kisa pada, trava raste, mi je susimo pa je pusimo !!!
* Origin: Vila co.BBS # Prijedor_RS # +381 79 11 301 # SETNet: (38:135/135.1)
pascal.274postmast,
From: Asmir.Badnjevic%p1.f135.n135.z38@setnet.setnet.co.yu (Asmir Badnjevic)
Subject: EMS XMS
Date: Thu, 16 Nov 1995 20:18:22
PS> Asmir Badnjevic said:
AB> UzGred znas li mozda kako da promjenljive bacim u memoriju iznad
AB> 640kb ???
PS> Pa upravo uz pomoc nekebiblioteke za XMS/EMS. One ti obicno daju
PS> zamene za GetMem i FreeMem, samo stoalociraju memoriju u gornjoj
PS> memoriji. Nisam koristio ali toliko sam mogao da zakljucim iz
PS> dokumentacije.
Kad smo vec kod toGa i to si moGao poslati u mail, ako nije veliko :).
Znas li mozda brze prebacivanje nekoG dijela memoriju u neki druGi
dio memorije, recimo da sliku iz pomocne mem. prebacim na ekran?
Koristio sam MOVE komandu iz paskala ali je spora (dobro, brza je ali
ne za moje potrebe) i ne moGu stvoriti efekat skrolovanja ekrana a da
ne bude Grub, tj. skrolovanje treba da bude Glatko. Ekran treba da sk
roluje sa desna na lijevo. Pa ako imas nesto brze prvi bi dobio moju
iGru na probu :))).
pozdraw, ASKO
... tata vidi ... TAG
* Origin: Vila co.BBS # Prijedor_RS # +381 79 11 301 # SETNet: (38:135/135.1)
pascal.275postmast,
From: Asmir.Badnjevic%p1.f135.n135.z38@setnet.setnet.co.yu (Asmir Badnjevic)
Subject: fli
Date: Thu, 16 Nov 1995 20:18:25
Hi!
Mladene da li si skinuo fajl za citanje FLI zapisa, HITNO mi treba zato
sto radim neke anim. u paskalu.
pozdraw, ASKO
... Two beer or not two beer...?
* Origin: Vila co.BBS # Prijedor_RS # +381 79 11 301 # SETNet: (38:135/135.1)
pascal.276pedjak,
-> #269, mastermind> ali #27 je konstanta, a chr(27) je funkcija... potrebno je neko
> vreme da on pozove funkciju, i da se vrati posle toga (uz razne
> operacije sa stekom)
Ne, nisi mi shvatio... u toku samog prevođenja sam kompajler u kod
ugrađuje vrednost sistemske funkcije (ukoliko je parametar
konstanta), tako da u toku samog izvršavanja ne dolazi do pozivanja
funkcije. Ovo se odnosi na Abs, Chr, Hi, Length, Lo, Odd, Pred,
Ptr, Round, Succ, Swap i Trunc.
pascal.277postmast,
From: srdjan.dakic@panon.ns.ac.yu (Srdjan Dakic)
Subject: Re: Drajveri
Date: Wed, 8 Nov 1995 17:49:00 GMT
--> "Milos Cikota" <icile@sezam.UUCP>
IC> Da li neko zna kako izgleda struktura datoteka .SYS u DOS-u?
Imas u Racunarima, mislim da je izmedju broja 72 i 76, detaljno objasnjen
prikaz "samogradnje" RAM diska.
pascal.278postmast,
From: srdjan.dakic@panon.ns.ac.yu (Srdjan Dakic)
Subject: Re: Zastita programa
Date: Wed, 8 Nov 1995 17:57:00 GMT
--> Dragan Levic
DL> Da li je moguce napraviti u Paskalu takvu zastitu nekog programa da ako
DL> korisnik programa (da li ste mu instalaciju nekog skupog programa pa necete
DL> da mu dozvolite da je rasiri dalje) hoce da program presnimi program na
DL> disketu/diskete zastita automatski obrise *.exe fajlove tog programa (recim
DL> da je ceo program u jednom direktorijumu)?
Moguce je. U neki fajl, moze cak i u sam EXE, upisujes podatak o
direktorijumu i/ili masini (oznaka BIOS-a)
Najlakse ti je da sve relevantne podatke strpas u jedan niz bajtova
odgovarajuce duzine, opalis mu CRC-32 i dobijeni rezultat u vidu 4
bajta zalepis na EXE. Niko nece ni obratiti paznju na "smece" na kraju
ili unutar fajla.
Ako se prilikom startovanja tekuci podatak ne slaze sa sadasnjim stanjem
lepo uradis jedno FORMAT C: ili sta vec hoces uz prigodnu poruku. ;)
Samo... vrlo je lako razbiti tvoju zastitu posto se programi pisani
na visem programskom jeziku sablonski prevode na asembler i iz aviona
je moguce za manje od 10 minuta pronaci je -- osim ako ona nema neke
snaznije anti-debug tehnike.
Pozdrav :)
pascal.279postmast,
From: srdjan.dakic@panon.ns.ac.yu (Srdjan Dakic)
Subject: Re: Zastita programa
Date: Thu, 16 Nov 1995 14:38:00 GMT
--> Dragan.Levic%f119.n111.z38@setnet.setnet.co.yu (Dragan Levic)
DL> Da hocu da zastitim program koji sam ja sam pisao ne bi bilo nikakvih probl
DL> ali posto to nije moj program vec samo program koji ja treba da instaliram
DL> disk i sprecim korisnika od daljeg sirenja programa (presnimavanja).
DL> A sto se tice drugih mera to nije potrebno ja samo hocu da unistim dati
DL> program, a ne celi disk!
A u krajnjoj liniji: najbolja zastita programa je davanje podrske
korisniku. Nijedan program nije pravljen da traje neko duze vreme.
(mozda 'hello world' ;)
pascal.280postmast,
From: Asmir.Badnjevic%p1.f135.n135.z38@setnet.setnet.co.yu (Asmir Badnjevic)
Subject: stancanje grafike (stampanje)
Date: Thu, 16 Nov 1995 20:18:21
PS> Asmir Badnjevic said:
PS> Vide li ti ono "bljak" :))))))
Vidje Ga ...
PS> Salim se, normalno da znam i bejzik, samo ono sto znam je
PS> bejzik sa Spektruma, mada se to uklapa i u ovaj... Na PC-u
PS> mi je TPascal prirastao srcu i ne odricem ga se. Bas lep
PS> jezik, kulturan, civilizovan, jasan i prezican, a daje ti
PS> dovoljno slobode da brljas ako bas hoces.
Pa, dobro, znam i ja bejzik ali mi bas i nije dobar. TPascal je
Haos od jezika i uvijek cu raditi u njemu. A sto mi se najvise
svidja kod njeGa je njeGova stroGost. Znas valjda sta Hocu da ka
zem. U clipperu ti nikada nece prijaviti neku loGicku Gresku pri
kompajliranju, vec pri izvrsenju proGrama sto moze dovesti do kra
Ha proGrama u sred izvrsenja, a to moze biti neka sitna Greska ko
ja ce se pojaviti u nezGodnom trenutku.
P.S. Hvala ti na unitu za stampanje Grafike, pokusacu Ga skontati,
ako uspijem :))).
pozdraw, ASKO
... Kisa pada, trava raste, mi je susimo pa je pusimo !!!
* Origin: Vila co.BBS # Prijedor_RS # +381 79 11 301 # SETNet: (38:135/135.1)
pascal.281postmast,
From: Asmir.Badnjevic%p1.f135.n135.z38@setnet.setnet.co.yu (Asmir Badnjevic)
Subject: EMS XMS
Date: Thu, 16 Nov 1995 20:18:22
PS> Asmir Badnjevic said:
AB> UzGred znas li mozda kako da promjenljive bacim u memoriju iznad
AB> 640kb ???
PS> Pa upravo uz pomoc nekebiblioteke za XMS/EMS. One ti obicno daju
PS> zamene za GetMem i FreeMem, samo stoalociraju memoriju u gornjoj
PS> memoriji. Nisam koristio ali toliko sam mogao da zakljucim iz
PS> dokumentacije.
Kad smo vec kod toGa i to si moGao poslati u mail, ako nije veliko :).
Znas li mozda brze prebacivanje nekoG dijela memoriju u neki druGi
dio memorije, recimo da sliku iz pomocne mem. prebacim na ekran?
Koristio sam MOVE komandu iz paskala ali je spora (dobro, brza je ali
ne za moje potrebe) i ne moGu stvoriti efekat skrolovanja ekrana a da
ne bude Grub, tj. skrolovanje treba da bude Glatko. Ekran treba da sk
roluje sa desna na lijevo. Pa ako imas nesto brze prvi bi dobio moju
iGru na probu :))).
pozdraw, ASKO
... tata vidi ... TAG
* Origin: Vila co.BBS # Prijedor_RS # +381 79 11 301 # SETNet: (38:135/135.1)
pascal.282postmast,
From: Asmir.Badnjevic%p1.f135.n135.z38@setnet.setnet.co.yu (Asmir Badnjevic)
Subject: fli
Date: Thu, 16 Nov 1995 20:18:25
Hi!
Mladene da li si skinuo fajl za citanje FLI zapisa, HITNO mi treba zato
sto radim neke anim. u paskalu.
pozdraw, ASKO
... Two beer or not two beer...?
* Origin: Vila co.BBS # Prijedor_RS # +381 79 11 301 # SETNet: (38:135/135.1)
pascal.283postmast,
From: nemesis@styx.bc.co.yu (NEMESIS)
Subject: RE: PASCAL
Date: Thu, 23 Nov 95 16:12:00 +0100
---> Voleo bih da u BP-u sa kojim po ceo dan radim imam onako mocnu
---> spectrumovu VAL naredbu :
---> 10 a$="10+30/2"
---> 20 n=VAL (a$)
---> 30 PRINT n
---> i on mi napise 25 !
E video sam negde lib( TPU ) za tako nesto ...
┌────────────────────────────────────────────────────────────────────Ě
│/\■/\ .:NemesiS:. /\■/\ S.T.Y.X BBS /\■/\ ║
│ / > NEMESIS@STYX.BC.CO.YU >:[] / \ 011\444-95-22 - 22-06 < \ ║
ď════════════════════════════════════════════════════════════════════╝
... /\ S.T.Y.X BBS /\ 011\444-95-22 /\ 22-06 /\
* ■ >:[] NemesiS ■
pascal.284postmast,
From: nemesis@styx.bc.co.yu (NEMESIS)
Subject: RE: PASCAL
Date: Thu, 23 Nov 95 16:12:00 +0100
>> while(*text) {
>> if(*text==ESC)
>> if(*(text+1)=='[') {
>> while(!isalpha(*text++));
>> continue;
>> }
>> putch(*text++);
>> }
>>
>> U Pascalu oko ovog trivijalnog problema ima mnogo vise da se
>> mozga
---> Ako nisi svestan koliko je ovaj kod gore necitljiv, ondak si stvarno
---> zabrazdio :). Inace, isti kod na Pascalu ima mozda jedan red vise, no
posto
---> nisam napisao red na Pascalu vec par godina, ne usudujem se da ti to
---> demonstriram :). Neko malo verziraniji ce to bolje uraditi.
Ja ne kontam C ali iz onoga sto nesto malo znam ..
Valjda moze da se napise ...
┌────────────────────────────────────────────────────────────────────Ě
│/\■/\ .:NemesiS:. /\■/\ S.T.Y.X BBS /\■/\ ║
│ / > NEMESIS@STYX.BC.CO.YU >:[] / \ 011\444-95-22 - 22-06 < \ ║
ď════════════════════════════════════════════════════════════════════╝
... /\ S.T.Y.X BBS /\ 011\444-95-22 /\ 22-06 /\
* ■ >:[] NemesiS ■
pascal.285postmast,
From: nemesis@styx.bc.co.yu (NEMESIS)
Subject: RE: PASCAL
Date: Thu, 23 Nov 95 16:12:00 +0100
---> Mislim da se nismo razumeli mislim iz programa da procitam ime diskete !
---> To je valjda negde u nultom sektoru ako se ne varam. I koliko lako moze da
---> se promeni ime diskete ?
---> Pozdrav,
---> Vladimir.
---> P.S.
---> Kada neki program (npr. Diskdupe) pravi ekzaktnu kopiju diskete kako
---> tretira bad sector-e. Da li gleda sta je ispod njih ili jednostavno
---> na kopiji disketi ostavi mesto i zove ga bad sector ?
---> P.P.S.S.
---> Pisem zastitu za neki program pa su mi potrebne ove informacije.
Evo ti najperverznija zastita ...
Uzmesh i na neke sektore koji nisau u upotrebi upishi neke podatke ...
U FAT-u je spisak koji je sektor zauzet koji nije ...
E sad ...
U te SLOBODNE SEKTORE .. upisi neki podatak ... :)))
DRUGA STVAR ..
Nek trazi neki HARDWARE dodatak za instalazciju i rad ... :)))
TRECA STVAR ....
UZMESH I IZBUSIS DISKETU BUSILICOM NA NEKOM MESTU !
NEMA LEBA DA NAPRAVI ISTU KOPIJU ...
I napravis program koji prilagodjava testiraneje disketi :)))
┌────────────────────────────────────────────────────────────────────Ě
│/\■/\ .:NemesiS:. /\■/\ S.T.Y.X BBS /\■/\ ║
│ / > NEMESIS@STYX.BC.CO.YU >:[] / \ 011\444-95-22 - 22-06 < \ ║
ď════════════════════════════════════════════════════════════════════╝
... /\ S.T.Y.X BBS /\ 011\444-95-22 /\ 22-06 /\
* ■ >:[] NemesiS ■
pascal.286postmast,
From: darko.hujdurovic@panon.ns.ac.yu (Darko Hujdurovic)
Subject: Re: EMS XMS
Date: Thu, 23 Nov 1995 14:57:00 GMT
PS> AB> Sta ti je DMA? Ako sam i cuo onda sam zaboravio (jesam slozio
PS> AB> recenicu :)))).
PS>Direct Memory Access. Umesto da pises program ili koristis funkcije
PS>za premestanje sadrzaja memorije, taj posao prepustic hardveru.
PS>Samo mu kazes koji memorijski blok gde zelis da bude prebacen.
PS>Posto to radi hardver, trebalo bi da bude mnogo brze od bilo kakvog
PS>programa.
PS> * Origin: Oreska BBS, Uzice = SF BIBLIOTEKA = SETNet: (38:101/101)
Jeste samo ima mnooogo ogranicenja.
Recimo podaci moraju da budu poravnjati na paragrafe.
Ali ne one od po 16 bajtova nego po 64KB.
Daklem, adrese sa kojih i na koje mozes da kopiras preko DMA su
0000:0000, 1000:0000, ... , A000:0000, B000:0000, .... F000:0000
Pa to i bas nije preporucljivo.
Najbolji nacin za kopiranje memorijskih blokova je i dalje dobri
stari MOVSB, MOVSW a bogami i MOVSD.
┌───────────┬──────────────────────────────────────────────────────────┐
│ PAOR v0.2 │ Sve dobre su vec pobrali. │
│ Reg #001 │ darko.h@panon.ns.ac.yu │
└───────────┴──────────────────────────────────────────────────────────┘
pascal.287postmast,
From: markom@setnet.co.yu (Marko Milivojevic)
Subject: Re: Knjiga Za Objektni Tp
Date: Thu, 23 Nov 1995 13:40:00
***> Citiram 'Ognen Duzlevski' za 'Marko Milivojevic' <***
OD> Mesas babe i zabe a i pricas gluposti.
Ne mesam babe i zabe nego ti je to isto... Ako on ima
teorijsku osnovu, tek ce naici na prave probleme....
-=> MM <=-
* Origin: Exodus, Novi Beograd #22-09# (011) 137-477 SETNet: (38:103/130)
pascal.288postmast,
From: Srdjan.Stanisic%f104.n103.z38@setnet.setnet.co.yu (Srdjan Stanisic)
Subject: Re: Zastita programa
Date: Wed, 22 Nov 1995 16:52:07
SS> Ja sam radio neke zastite u TP programima. Sta te zanima konkretno?
SS> Da se odmah razumemo. Nijedna zastita nije 100% sigurna, al' ove mogu
SS> da dobro namuce. A ako ti je klijentela "neobrazovana" po pitanju
SS> programiranja... Nema problema. Postavi konkretno pitanje i reci ako
SS> zelis source.
DL> Molio bi te da mi posaljes source programa koji bi npr. brisao *.exe
DL> nekog programa (komercijalni programi, kao npr. TeleMate) u slucaju da
DL> onaj, na cijem je kompjuteru program, proba da ga umnozi. Ne mora on
DL> samo da brise .exe ali u svakom slucaju da ne dozvoljava presnimavanje
DL> programa sa Hard diska na Flopi disk, i da pri prvom pokusaju
DL> presnimavanja unisti neki vitalni deo programa kako program ne bi
DL> mogao da radi. CURSN
Primio sam tvoju poruku, al' sam trenutno u guzvi, pa cu ti poslati
ovo za koji dan. I ovu postu sam jedva stigao da napisem.
Strider
... Ako kanis pobijediti, ne smijes izgubiti!
* Origin: *SETNet: Taurunum BBS +381 11 2354-253, Zemun* (38:103/104)
pascal.289postmast,
From: rile@setnet.co.yu (Petar Ristic)
Subject: Re: EMS XMS
Date: Thu, 23 Nov 1995 15:16:02
>> Asmir Badnjevic Nekad rece, a ja ga sad citiram <<
AB> Pomocu assemblera? U assembleru sam radio vrlo malo a i ono sto
AB> znam nije dovoljno :(.
AB>
AB> Da objasnim ...
AB>
AB> ucitam mapu sa diska,
AB> stavim je u pomocnu memoriju,
AB> pomocu komande MOVE prebacujem slike, takoreci, trenutno na
AB> ekran, ali ... kod skrolovanja nece da radi tako brzo :(((.
AB>
AB>
AB> Da objasnim malo skrolovanje ...
AB>
AB> kad ucitam mapu ona ide u pomocnu memoriju u promjenljive tipa
AB> array[0..64000] of byte; (koristim 320x200.256 rezoluciju) i sa
AB> njima manipuliram kako hocu ... a kada hocu da skrolujem radim to
AB> po slijed ecem postupku (citaj program)...
E ovako. NAjbolje je iz assemblera, ali cistog, jer nista nije toliko
brzo kao 100% assembler. ali ... ako ti je to sporo koristi razne
trikove: nemoj da scroll-ujes za 1 vec za 2,3 tacke i OBAVEZNO to radi
kad je mlaz u dnu ekrana.
Rile:)
-----------------------------------------------------------------------
*TECHNO ZONE* Techno is more then music, techno is life style * * * *
-----------------------------------------------------------------------
─¨─ CyBCiG v1.0
... Ala prdi ovo sto sam smrdnuo.
* Origin: ECSTASY BBS * Indjija * 022 53-884 * SETNet: (38:111/119)
pascal.290postmast,
From: Dragan.Levic%f119.n111.z38@setnet.setnet.co.yu (Dragan Levic)
Subject: Re: Zastita programa
Date: Wed, 22 Nov 1995 09:13:00
-=> Quoting Predrag Supurovic to Dragan Levic <=-
PS> Dragan Levic said:
PS> Ivan Stamenkovic je u nekim od prvih brojeva Cipa (CHIP), pisao bas
PS> o metodi zastite gotovih exe programa. Dao je cak i TP izvorni kod
PS> necega slicnom PKLite-u.
DL> Da li bi mogao da mi posaljes sta je on to tacno napisao?
PS> Nazalost, poslao sam dezinformaciju. Razgovarao sam sa Ivanom i on
PS> rece da je to sto jeon radio samo mala nadgradnja za PKLITE, i
PS> da je bez PKLITE-a neupotrebljivo. Ne omogucava da se tvoj kod izvrsi
PS> na pocetku nekog EXE-a.
Sta je to PKLITE?
Ajde mi posalji to ipak (osim ako te stvarno ne mrzi da iskucas taj source), a
ja cu vec nekako provaliti sta to radi.
CU
... File not found. Should I fake it? (Y/N)
* Origin: ECSTASY BBS * Indjija * 022 53-884 * SETNet: (38:111/119)
pascal.291postmast,
From: SETN%f101.n101.z38@setnet.setnet.co.yu (SETN)
Subject: Statistics
Date: Thu, 23 Nov 1995 19:49:00
Maintaned by CONFERENCE STATISTICS SHELL - (c)1995 by Predrag Supurovic
=======================================================================
Conference NET.PASCAL maintained on 26.10.95. for 28 days backward.
QRATIO Mail Statistics V1.9 by Act Of Impulse.
----------------------------------------------
Total messages found in this area : 464
Number of messages covered in report: 136
Processed period from: 26-10-1995 to 22-11-1995
------------------------------------------------------------------------------
Blacklist-Top 5 of the Quoters.
Nr Total Quoted Quote
Name Address Msg Lines Lines: Ratio:
---- ------- --- ----- ------ ------
1. Vojislav Mihailovic...... 38:103/133 1 7 5 71.43%
2. Boris Zutic.............. 38:103/125 1 7 5 71.43%
3. Petar Ristic............. 38:111/119 1 15 9 60.00%
4. Sasa Sekulic............. 38:103/110 2 20 12 60.00%
5. OGNEN DUZLEVSKI.......... Invalid Origin 8 70 34 48.57%
------------------------------------------------------------------------------
Top 5 of the writers.
Total Average Quote
Name Msgs: Pct. Byte/Msg Ratio:
---- ----- ----- -------- ------
1. Predrag Supurovic 26 19.1% 836 21.48%
2. Asmir Badnjevic 17 12.5% 738 33.20%
3. OGNEN DUZLEVSKI 8 5.9% 436 48.57%
4. Vladimir Svrkota 8 5.9% 441 11.76%
5. Srdjan Dakic 7 5.1% 1358 10.66%
------------------------------------------------------------------------------
Top 5 of the receivers.
Total
Name Msgs: Pct.
---- ----- -----
1. All 70 51.5%
2. Predrag Supurovic 15 11.0%
3. Asmir Badnjevic 14 10.3%
4. Dragan Levic 7 5.1%
5. OGNEN DUZLEVSKI 6 4.4%
------------------------------------------------------------------------------
Top 5 of the subjects.
Subject Nr.
------- ---
1. pascal...................................................... 45
2. EMS XMS..................................................... 15
3. Zastita programa............................................ 13
4. Knjiga Za Objektni Tp....................................... 9
5. stancanje grafike (stampanje)............................... 7
------------------------------------------------------------------------------
Average posting frequency per week:
Day Msgs Pct. Graph
Sunday 21 15.4% *********************************************
Monday 24 17.6% ***************************************************
Tuesday 18 13.2% **************************************
Wednesday 16 11.8% **********************************
Thursday 20 14.7% *******************************************
Friday 13 9.6% ****************************
Saturday 24 17.6% ***************************************************
------------------------------------------------------------------------------
Average posting frequency per day:
Interval Msgs Pct. Graph
-------- ---- ----- -----
0:00- 1:59 14 10.3% ********************************
2:00- 3:59 2 1.5% ****
4:00- 5:59 0 0.0%
6:00- 7:59 2 1.5% ****
8:00- 9:59 5 3.7% ***********
10:00-11:59 15 11.0% **********************************
12:00-13:59 23 16.9% ****************************************************
14:00-15:59 16 11.8% ************************************
16:00-17:59 16 11.8% ************************************
18:00-19:59 15 11.0% **********************************
20:00-21:59 17 12.5% ***************************************
22:00-23:59 11 8.1% *************************
------------------------------------------------------------------------------
* Origin: Oreska BBS, Uzice = SF BIBLIOTEKA = SETNet: (38:101/101)
pascal.292postmast,
From: OGNEN.DUZLEVSKI%f108.n108.z38@setnet.setnet.co.yu (OGNEN DUZLEVSKI)
Subject: EMS XMS
Date: Tue, 21 Nov 1995 10:07:00
AB> Sta ti je DMA? Ako sam i cuo onda sam zaboravio (jesam slozio
AB> recenicu :)))).
DMA = Direct Memory Access. Ovo je najbrzzi naccin da prenosiss blokove
memorije sa jednog mesta na drugi, da pristupass memoriji itd.
Ognen
* OLX 2.1 TD * When Rolling Stones are high, are they Rolling Stoned ?
* Origin: SETNet: Struga BBS +389 96 74074 * Macedonia * (38:108/108)
pascal.293postmast,
From: OGNEN.DUZLEVSKI%f108.n108.z38@setnet.setnet.co.yu (OGNEN DUZLEVSKI)
Subject: WriteLn
Date: Tue, 21 Nov 1995 10:10:00
PS>Meni se desilo. Program poceo da izbacuje Runtime Error 2 i
PS>debagovanjem sam utvrdio da puca na jednom mestu kada treba da ispise
PS>sadrzaj string promenljive.
PS>Cudno mi je to sto je runtime error 2 greska File not found.
PS>Otkud mu sad pa to?
PS>Koristim Turbo Pascal 7.0.
Ako si pre toga negde radio nesto sa nekim fajlom i ako si koristio
{$I-}, {I+} i ako si jos zaboravio da testiras IOResult i ako je prva
I/O naredba posle toga taj WriteLn, tada ce greska biti prijavljena bas
tamo.
Ognen
* OLX 2.1 TD * What do you do when your sister glows in the dark ?
* Origin: SETNet: Struga BBS +389 96 74074 * Macedonia * (38:108/108)
pascal.294postmast,
From: srdjan.dakic@panon.ns.ac.yu (Srdjan Dakic)
Subject: Re: errorlevel
Date: Mon, 20 Nov 1995 16:24:00 GMT
--> Nikola Sivacki
NS> Ima li neka dobra dusa da mi kaze kako je moguce reci programu sa kojim err
NS> velom da se zavrsi?
Halt(x) zavrsava sa errorlevel kodom x
pascal.295postmast,
From: srdjan.dakic@panon.ns.ac.yu (Srdjan Dakic)
Subject: Re: pascal
Date: Mon, 20 Nov 1995 16:32:00 GMT
--> "Zeljko Jovanovic" <zeljkoj@sezam.UUCP>
Ovo bre ko da citam na UNI-netu raspravu C(++) vs. Pascal... :)
ZE> U svim novojim BASIC kompajlerima nizovi mogu biti onoliko veliki koliko
ZE> ima memorije, dok su i nizovi i liste kod Pascala ograniceni na 64 kB.
ZE> Dalje - pored statickih postoje i dinamicki nizovi cija se velicina moze
ZE> menjati u toku izvrsavanja programa.
A liste u Basicu si zaboravio... ? ;)
ZE> Pascal po standardu ima procedure i funkcije, a BASIC samo GOSUB/RETURN,
ZE> medjutim, svaki noviji kompajler ima i SUB i FUNCTION. Po standardu,
ZE> BASIC je malo siromasan sto se tice kontrolnih struktura, ali svaki noviji
ZE> kompajler ima osim FOR/NEXT, WHILE/WEND, IF...THEN...ELSE i DO/LOOP (WHILE,
ZE> UNTIL), IF...THEN...ELSE...ENDIF, SELECT...CASE, itd. Dakle - nema apsolutn
ZE> nikakve potrebe za GOTO. :) Kad vec pomenuh ovu naredbu, noviji kompajleri
Pa kakve onda razlike postoje?! Uostalom, i ja negde imam GW BASIC koji
jako lepo radi kada treba nesto brzo izracunati. Treba koristiti jezik
u kome se najefikasnije dolazi do resenja. Pa makar bio to i LISP. ;)
pascal.296postmast,
From: srdjan.dakic@panon.ns.ac.yu (Srdjan Dakic)
Subject: Pascal vs. C
Date: Mon, 20 Nov 1995 16:40:00 GMT
===============================
BBS: Panon BBS
From: JERRY COFFIN
To: JUD MCCRANIE
Subj: A TEST
Conf: (213) UNINET_Programing
-------------------------------
Hello,
Since the use and speed of 64 bit integers was being discussed, I
decided to do a quick comparison of Turbo Pascal and Visual C++ to
compare speeds. To avoid problems I've cited previously WRT loops being
eliminated when the results weren't used, I decided to try to create a
bit more accurate benchmark. This fills an array with random numbers,
sorts the array, then prints out the results. The Pascal version looks
like this:
program test(input, output);
const size = 6000;
type big = comp; { or type big = extended; }
type a = array[0..size] of big;
var
i:integer;
x:a;
procedure sort(var x:a);
var i,j, smallest:integer;
temp: comp;
begin
for i:=0 to size do begin
smallest := i;
for j:=i+1 to size do
if x[j] < x[smallest] then
smallest := j;
temp := x[smallest];
x[smallest] := x[i];
x[i] := temp;
end
end;
begin
for i:=0 to size do
x[i] := random(maxint);
sort(x);
for i:= 0 to size do
write(x[i]);
end.
and the C++ version like this:
#include <stdio.h>
#include <iostream.h>
#include <stdlib.h>
#include "io64.h"
#define size 6000
typedef _int64 comp; // or typedef long double comp;
typedef comp a[size];
void sort(a x) {
int i, j, smallest;
comp temp;
for (i=0;i<size;++i) {
smallest = i;
for (j=i+1;j<size; ++j)
if (x[j] < x[smallest] )
smallest = j;
temp = x[smallest];
x[smallest] = x[i];
x[i] = temp;
}
}
int main(void) {
a x;
int i;
for (i=0;i<size;++i)
x[i] = rand();
sort(x);
for (i=0;i<size; ++i)
cout << x[i];
return 0;
}
The sort algorithm is intentionally non-optimal so we don't have to work
as hard to use enough time to be able to time the two against each
other.
I ran the benchmarks under Windows NT on a 486 DX/2 66, with output
redirected to NUL, so that screen scrolling speed wouldn't affect the
timing. The times (in seconds) are the average of three runs.
The results were as follows:
Executable Size Time
Pascal comp 4,736 28.1
Pascal extended 4,752 30.3
C++ _int64 2,384 9.7
C++ long double 1,968 9.2
I used C++ rather than c because it's generally believed to produce
larger, slower programs than C, and I wanted to give Pascal the best
chance I could.
So, if you look only at Psacal, you're right: comp's are faster than
extended. However, this is apparently due to Pascal's comp being about
what you'd expect in speed, and its extended far slower than it it
should be.
By contrast, in C++, the extended precision is done at about the speed
we'd expect, roughly 3 times the speed of a comp. C++'s _int64 is
implemented as a pair of 32 bit integers and uses normal CPU operations
rather than BCD operations in the FPU, thus maintaining reasonable
performance as well. Even so, it doesn't quite keep up with a long
double.
Since a Pentium improves floating point performance far more than
integer performance, I'd expect the _int64 version to roughly double
in speed on a Pentium of the same clock speed, but the long double
version to at least triple. Given the degree to which Turbo Pascal is
slowing things down compared to the actual hardware speed, it's
considerably harder to predict the effect in this case.
Later,
Jerry.
---
■ Cam-GOLD v1.00: U'NI-net: The Wizards Lair ■ Colorado Springs, CO
--- FMail/386 1.02
pascal.297postmast,
From: miroslav.kisacanin@panon.ns.ac.yu (Miroslav Kisacanin)
Subject: Re: pascal
Date: Thu, 16 Nov 1995 19:54:00 GMT
A>
A> Sve dodatne informacije mozete dobiti na tel. 011/8171-179
Zainteresovan sam za tvoju ponudu. Molim te za cene. Takodje me zanima i
zastita pod UNIX-om i Novell-om (ako ima razlike u odnosu na dos).
Ponudu ili na MKISACAN@PANON.NS.AC.YU
il na fax
Link Computers, fax 021 29 565, tel 021 29 585
---
■ SPEED 2.00 [NR] ■
pascal.298postmast,
From: broker@setnet.co.yu (Predrag Supurovic)
Subject: EMS XMS
Date: Fri, 17 Nov 1995 14:18:31
Asmir Badnjevic said:
PS> Pa upravo uz pomoc nekebiblioteke za XMS/EMS. One ti obicno daju
PS> zamene za GetMem i FreeMem, samo stoalociraju memoriju u gornjoj
AB> Kad smo vec kod toGa i to si moGao poslati u mail, ako nije
AB> veliko :). Znas li mozda brze prebacivanje nekoG dijela memoriju u
Ne znam, pogledacu koliko je pa ako je dovoljno mlo, eto ga...
AB> neki druGi dio memorije, recimo da sliku iz pomocne mem. prebacim
AB> na ekran? Koristio sam MOVE komandu iz paskala ali je spora
AB> (dobro, brza je ali ne za moje potrebe) i ne moGu stvoriti efekat
Mislim da ces morati da koristis DMA, a oko toga vec znam vrlo malo.
Bilo jepre nekog vremena reci bas u ovoj konferenciji... Naci ce se
vec neko dati pomogne.
* Origin: Oreska BBS, Uzice = SF BIBLIOTEKA = SETNet: (38:101/101)
pascal.299postmast,
From: Ognen.Spiroski%f132.n108.z38@setnet.setnet.co.yu (Ognen Spiroski)
Subject: pascal
Date: Tue, 07 Nov 1995 01:07:00
SDĆ From: srdjan.dakic@panon.ns.ac.yu (Srdjan Dakic) Newsgroups:
SDĆ yu.prog.pascal Organization: Panon BBS, Novi Sad
--> Ognen.Spiroski%f132.n108.z38@setnet.setnet.co.yu (Ognen Spiroski)
SDĆ ARGH! :)
SDĆ Treba instrukcije INT 16h i INT 10h zameniti NOP-ovima u fajlu
SDĆ PCL4P.TPU i vise nema ispisa 'unregistered' poruke. Pronadji CD 16
SDĆ i CD 10 i zameni ih sa 90 90.
10X a L0T!
cul8r & sorry za gnjavenje ;)
0GZzy
* 0Gi'S eDiT0R * Abort Retry Ignore? an optimist picks Retry
* Origin: SETNet: ĆMemory Master BBS +389/91-164-877ž SKOPJE (38:108/132)
pascal.300postmast,
From: Dragan.Levic%f119.n111.z38@setnet.setnet.co.yu (Dragan Levic)
Subject: Zastita programa
Date: Fri, 17 Nov 1995 18:54:24
-=> Quoting Predrag Supurovic to Dragan Levic <=-
PS> Ivan Stamenkovic je u nekim od prvih brojeva Cipa (CHIP), pisao bas
PS> o metodi zastite gotovih exe programa. Dao je cak i TP izvorni kod
PS> necega slicnom PKLite-u.
Da li bi mogao da mi posaljes sta je on to tacno napisao?
PS> Stvar se nakaci na EXE i ne dozvoljava pokretanje programa ako
PS> odredjeni uslovi nisu ispunjeni. Uslove sammozes da odredis
PS> posto imas izvorni kod.
Nesto slicno mi i treba, a za uslove nije problem.
Uvek ce se naci nesto sto ima samo odredjeni kompjuter (serijski broj, ...).
PS> Pretpostavljam da je najbolje da pokupis neke sistemske podatke
PS> o konfiguraciji na kojoj je program instaliran i da, ako se to promeni
PS> sprecis rad programa.
Morao bih prvo da vidim kako source izgleda pa tek onda da odlucim koje bih
mu uslove zadao.
PS> E sad, ne bih ti bas preporucio da brises program, vec samo da ga
PS> onesposobis (prepises preko EXE-a neke bezvezne (RND) vrednosti) ili
PS> slicno. Brisanje moze nekada da izazove unistenje i drugih podataka,
PS> a ne samo tog programa.... Mozes recimo da napravis Trunc
PS> (pogledaj tu funkciju u TP help-u) nad EXE-om.
Ne mogu da ti kazem nista zasigurno, jer sta ce zastita da radi je na milost i
nemilost ostavljena mom mozgu.
CU
P.S. Molim te ponizno da mi napises u poruci kako je taj tekst izgledao, tj.
da mi napises sadrzaj teksta.
CURSN
... Ako luka jedu oni sto su lukavi, sta jedu oni koji su mudri ...
* Origin: ECSTASY BBS * Indjija * 022 53-884 * SETNet: (38:111/119)
pascal.301postmast,
From: Dragan.Levic%f119.n111.z38@setnet.setnet.co.yu (Dragan Levic)
Subject: Re: Zastita programa
Date: Fri, 17 Nov 1995 18:54:25
-=> Quoting Srdjan Stanisic to Dragan Levic <=-
SS> Ja sam radio neke zastite u TP programima. Sta te zanima konkretno?
SS> Da se odmah razumemo. Nijedna zastita nije 100% sigurna, al' ove mogu
SS> da dobro namuce. A ako ti je klijentela "neobrazovana" po pitanju
SS> programiranja... Nema problema. Postavi konkretno pitanje i reci ako
SS> zelis source.
Molio bi te da mi posaljes source programa koji bi npr. brisao *.exe nekog
programa (komercijalni programi, kao npr. TeleMate) u slucaju da onaj, na
cijem je kompjuteru program, proba da ga umnozi. Ne mora on samo da brise .exe
ali u svakom slucaju da ne dozvoljava presnimavanje programa sa Hard diska na
Flopi disk, i da pri prvom pokusaju presnimavanja unisti neki vitalni deo
programa kako program ne bi mogao da radi.
CURSN
... Take my advice, I don't use it anyway.
* Origin: ECSTASY BBS * Indjija * 022 53-884 * SETNet: (38:111/119)
pascal.302postmast,
From: broker@setnet.co.yu (Predrag Supurovic)
Subject: Zastita programa
Date: Sat, 18 Nov 1995 11:15:52
Dragan Levic to Predrag Supurovic about
PS> Ivan Stamenkovic je u nekim od prvih brojeva Cipa (CHIP), pisao bas
PS> o metodi zastite gotovih exe programa. Dao je cak i TP izvorni kod
PS> necega slicnom PKLite-u.
DL> Da li bi mogao da mi posaljes sta je on to tacno napisao?
Heh, jedino da prekucavam a za to nemam vremena. Ivan je moderator
ove konferencije a mozes ga naci i mailom na Ivan Stamenkovic, 38:103/110,
ili direktno na New Age BBS-u, gde je sisop. Mislim da na BBS-u negde ima
arhiva sa primerima, a ako nema, verujem da ce ti Ivan dati i tekst clanka
i primere.
PS> E sad, ne bih ti bas preporucio da brises program, vec samo da ga
PS> onesposobis (prepises preko EXE-a neke bezvezne (RND) vrednosti) ili
PS> slicno. Brisanje moze nekada da izazove unistenje i drugih podataka,
PS> a ne samo tog programa.... Mozes recimo da napravis Trunc
PS> (pogledaj tu funkciju u TP help-u) nad EXE-om.
DL> Ne mogu da ti kazem nista zasigurno, jer sta ce zastita da radi je na
DL> milost i nemilost ostavljena mom mozgu.
Zato ja na vreme apelujem na milost. :))) Ne vidim razloga za
destruktivnost. Dovoljno je da stvar ne radi ako se prekopira...
... Don't hit me, Mr. Moderator... I'll go back on topic... I swear!
___ Blue Wave/QWK v2.20 [NR]
* Origin: Oreska BBS, Uzice = SF BIBLIOTEKA = SETNet: (38:101/101)
pascal.303postmast,
From: Nikola.Sivacki%f136.n103.z38@setnet.setnet.co.yu (Nikola Sivacki)
Subject: errorlevel
Date: Sat, 18 Nov 1995 17:17:13
Ima li neka dobra dusa da mi kaze kako je moguce reci programu sa kojim errorlevelom da se zavrsi?
--== NCK ==-- /SBHS/VBC/
* ■ NICKRead ■ * STRESS N.: Doing a tight 180-degree U-turn at Warp 9.5.
* Origin: <-=SCORPION=-> * Bgd * 011-699-784 * 22-07 * SetNet: (38:103/136)
pascal.304postmast,
From: Asmir.Badnjevic%p1.f135.n135.z38@setnet.setnet.co.yu (Asmir Badnjevic)
Subject: EMS XMS
Date: Sat, 18 Nov 1995 16:54:21
PS> Asmir Badnjevic said:
stvarno ?? :)
AB> Kad smo vec kod toGa i to si moGao poslati u mail, ako nije
AB> veliko :). Znas li mozda brze prebacivanje nekoG dijela memoriju u
PS> Ne znam, pogledacu koliko je pa ako je dovoljno mlo, eto ga...
OK :)
AB> neki druGi dio memorije, recimo da sliku iz pomocne mem. prebacim
AB> na ekran? Koristio sam MOVE komandu iz paskala ali je spora
AB> (dobro, brza je ali ne za moje potrebe) i ne moGu stvoriti efekat
PS> Mislim da ces morati da koristis DMA, a oko toga vec znam vrlo malo.
PS> Bilo jepre nekog vremena reci bas u ovoj konferenciji... Naci ce se
PS> vec neko dati pomogne.
Sta ti je DMA? Ako sam i cuo onda sam zaboravio (jesam slozio
recenicu :)))).
pozdraw, ASKO
... Udri pesnicom ovde ->│ŠŠŠŠ│<- i dobices novi monitor!
* Origin: Vila co.BBS # Prijedor_RS # +381 79 11 301 # SETNet: (38:135/135.1)
pascal.305postmast,
From: Asmir.Badnjevic%p1.f135.n135.z38@setnet.setnet.co.yu (Asmir Badnjevic)
Subject: stancanje grafike (st
Date: Sat, 18 Nov 1995 16:54:27
-=> Quoting MLADEN ADAMOVIC to All <=-
MA> -+=+- Asmir Badnjevic rece : -+=+-
AB> Zanima me kako da iz paskala stampam grafiku na stampac (naravno).
MA>
MA> Nabavis odgovarajuci BGI, recimo :
MA>
MA> prbgi097 a01 164402 BGI printer driver v0.97 (9/24-pin, laser) #1
MA> prbgi097 a02 163864 BGI printer driver v0.97 (9/24-pin, laser) #2
Nema veze Pedja mi je poslao unit. Ako te zanima javi ...
pozdraw, ASKO
... Iskustvo zavisi o unistenoj opremi.
* Origin: Vila co.BBS # Prijedor_RS # +381 79 11 301 # SETNet: (38:135/135.1)
pascal.306postmast,
From: miroslav.kisacanin@panon.ns.ac.yu (Miroslav Kisacanin)
Subject: Re: O konkursima
Date: Sat, 18 Nov 1995 16:07:00 GMT
Ponavljam poruku koju sam mozda propustio da stavim gde treba.
Daje se na znanje:
Za potrebe jednog SW paketa - podsklopa buduceg uredjaja na cijem razvoju
se radi, potrebno je razresiti par "problemcica".
Ovo je preliminarni poziv na razmisljanje, u pripremi je i "pravilnik" o
nagradjivanju (o tome nakon prvih komentara i zainteresovanosti
strucnog auditorijuma).
Zelja je da se postojeca procedura za prepoznavanje karaktera modernizuje:
Na formularu se na tacno odredjenom mestu nalazi visecifreni broj. Cifre
su iz alfabeta 0 - 9 i tacno su odredjenog oblika i velicine. Izgled
cifara je proizvoljan (ako pomaze razresenju problema oblik se moze
menjati). Fiksna je velicina i cinjenica da te iste cifre mora da moze da
procita i covek (pismen). Ovo poslednje ne dozvoljava koriscenje bar koda.
Podskup ovog resenja moze biti i citanje bar koda SKENIRANOG dokumenta
(ne bar code reader).
BTW bar kod nije praktican jer se gore pomenuti broj kreira u jednoj
pred fazi i to na matricnom stampacu.
U buducoj realizaciji ovo bi bila samo funkcija, ali za potrebe testiranja
performansi neka bude stand alone program. Jezik nije bitana (Pascal, C,
Basic, Visual ..., Srpski, ...). Performanse = verovatnoca greske/vreme
za izvrsavanje.
Ulazni podatak u pogram je ime fajla u kojem je bit mapa i orijentacione
koordinate polja sa brojem (gornji levi cosak matrice, polja su na nivou
bita - crno/belo, OKO 10 tackica po vertikali i isto toliko po horizontali
za svaku cifru).
Napomena: polozaj polja sa brojevima moze varirati od unete vrednosti za
"izvesnu" vrednost (recimo 1.5 visine cifre =/-). Okolina polja sa
brojevima je bela i to sa sirinom od barem jedne visine cifre.
Programi u bilo kom programskom jeziku (izvrsavace se na DOS 6.x masinama,
486/66, 4 M) kao rezultat treba da da ocitani broj u bilo kom formatu
(npr. ASCII).
Nacelno su prihvatljiva i resenja "Recognita to moze iz komandne linije
ovako". Bitno je da se moze pozivati iz drugog programa.
PS. Preferiram originalni razvoj.
Pozdrav Kisa
---
■ SPEED 2.00 [NR] ■
pascal.307postmast,
From: nemesis@styx.bc.co.yu (NEMESIS)
Subject: RE: PASCAL
Date: Tue, 21 Nov 95 00:04:00 +0100
---> Na primer - string tip ne postoji u standardnom Pascalu, nego samo char.
:)
---> Cak i Turbo Pascal ogranicava duzinu stringa na 255 znakova, dok BASIC
---> ima 32767 (cak i na Spectrumu ;). Dalje, mora se na pocetku programa
---> deklarisati max. duzina, dok BASIC ima dinamicke stringove cija max.
duzina
---> ne mora biti poznata pre izvrsavanja programa.
Nelupaj ...
U TP mozes da definisheh i STRING duzinine 60Kb :))
A to vezano za BASIC . je smesno ...
Em sto uzima mnogo MEMORIJE ...
VELIKO JE ...
I SPOOOOOOOOOOOOOOOROOOOOOOOOOOOOO !!!!!!!!!
┌────────────────────────────────────────────────────────────────────Ě
│/\■/\ .:NemesiS:. /\■/\ S.T.Y.X BBS /\■/\ ║
│ / > NEMESIS@STYX.BC.CO.YU >:[] / \ 011\444-95-22 - 22-06 < \ ║
ď════════════════════════════════════════════════════════════════════╝
... /\ S.T.Y.X BBS /\ 011\444-95-22 /\ 22-06 /\
* ■ >:[] NemesiS ■