pascal.221omega,
-> #210, markomŢ A 99% posto programa koji se napisu lepo i optimizovano, kao i bez
Ţ rekurzije su zadovoljni i sa {$M 1024,0,0} :)
Lepo i optimizovano!? Da ostanem bez heap-a? :))))
pascal.222markom,
-> #221, omega:: Lepo i optimizovano!? Da ostanem bez heap-a? :))))
Meni skoro nikad nije zatrebao ... A kad mi treba nešto veliko, zna se
;) CCCCCcccc :)
pascal.223postmast,
From: Brankica.Kranjac@f110.n103.z38.setgate.setnet.co.yu (Brankica Kranjac)
Subject: Re: $R
Date: Tue, 21 Jun 1994 02:08:26
On 4 Jun 94 10:19pm, Predrag Supurovic wrote to All:
:) U ednom sorcetu sam naisao na sledecu liniju:
:) {$R keys.reg}
Mozda je kasno, ali koliko znam ova direktiva sluzi samo
za testiranje. Ako se stavi {$R+ ukljucuje se deo za proveru
raspona svih varijabli u odnosu na njihove granice. Pravi
veci kod, pa se obicno ne koristi.
Lady Linet 38:103/110@SetNet.NewAge
< Moderator SetNet.Erotika >
... Help!!!
* ■ Hack by ANGEL ■ 1111111111
* Origin: [New Age BBS]*[Beograd]*[+38-11-404-639]*[23-06] (38:103/110)
pascal.225postmast,
From: sale@fon (Aleksandar Hercog)
Subject: pascal i fox
Date: Thu, 23 Jun 1994 00:44:39 GMT
Ima li neko ideju kako iz FoxPro 2.5 za Dos pozvati neku rutinu napisanu u Pascalu 7.0 i uz to pascal rutini prenenti neke parametre. (kako u TPascalu 7.00 napraviti OBJ fajl, njega povezati sa FoxPro 2.5 za Dos, iz Fox-a pozvati tu proceduru, prene
ti joj eke parametre, po zavrsetku rada procedure vratiti neke parametre fox programu, a fox program i tu pascal proceduru smestiti u jedan EXE)?
Sale
pascal.226dr.grba,
Da li EXE program napravljen u Turbo Pascalu 7.0 ima nekakav CRC check
ili nešto poput toga kao zaštitu integriteta EXE datoteke?
pascal.227dejanr,
-> #223, postmast>> Ako se stavi {$R+ ukljucuje se deo za proveru
>> raspona svih varijabli u odnosu na njihove granice. Pravi
>> veci kod, pa se obicno ne koristi.
Ja ga *uvek* koristim, čak mi je ta opcija u setupu TP-a podešena na
uključeno. Ne znam ni sam koliko sam bagova tako našao, i to ne samo
u svojim programima, nego recimo i u prilozima za Pitalice koje drugi
šalju.
Naravno, kada se kompajlira konačna verzija, onda ima smisla isključiti
tu proveru, {$R-}, ali tokom razvoja je se ne treba odricati!
pascal.228markom,
-> #223, postmast:: From: Brankica.Kranjac@f110.n103.z38.setgate.setnet.co.yu (Brankica Kranjac)
:: Subject: Re: $R
:: Mozda je kasno, ali koliko znam ova direktiva sluzi samo
:: za testiranje. Ako se stavi {$R+ ukljucuje se deo za proveru
:: raspona svih varijabli u odnosu na njihove granice. Pravi
:: veci kod, pa se obicno ne koristi.
Wrong, u TPW 1.x i BP 7.x, ta direktiva ima još jednu funkciju, isto
kao što ima i $I. Slži u Windows programima da se naznači koji je
resource fajl povezan sa datim programom ...
Nevezano za poruku, neko je tražio dokaze o Blagojevom crackovanju SW
programa ...
:: * ■ Hack by ANGEL ■ 1111111111
Toliko o tome.
pascal.229kriss,
-> #212, mmitrovic˙˙ Možeć da ideć korak niže, saznać dužinu dir fajla
˙˙ (direktorijumi su fajlovi), koja će biti (cluster size*x),
˙˙ onda locirać dir na
Ok, kako da otvorim taj fajl?
pascal.230dejanr,
-> #229, kriss>> > Možeć da ideć korak niže, saznać dužinu dir fajla
>> > (direktorijumi su fajlovi), koja će biti (cluster size*x),
>> > onda locirać dir na
>>
>> Ok, kako da otvorim taj fajl?
Ako uspeš, javi. Mnogi kažu da je "direktorijum zapravo fajl", da se
može otvoriti ovako ili onako, ali šta god se proba, ne uspeva. Pričao
sam i sa nekim ljudima na BIX-u o tome (u vezi mog čuvenog pitanja,
kako napisati program koji setuje datum kreiranja direktorijuma), i
na kraju je ispalo da niko ne zna, čak ni čovek koji je pisao knjigu
Undocumented DOS
pascal.231mmitrovic,
-> #220, inesicŮ█▀█Ţ Šta je sad ovo? Toga nema u $M. Da li je taj data segment nešto
Ů█▀█Ţ što je fiksno kod svakog programa ili se i to menja, tj. raste i
Data Segment ide između koda i steka i varira od programa do
programa, ali mu je dužina za određeni program uvek ista, što nije
slučaj sa zauzećem HEAPa.
kad kažeš:
var p:žword;
onda je p u DATA segmentu, a pž (podatak) je u HEAPu (nakon New(p));
DATA segment se deli na dva dela, na inicijalizovani i neinizijalizovani
inicijalizovani deo predstavljaju tipizirane konstante, i on je deo
EXE fajla (fizički je prisutan)
neinicijalizovani su varijable, i one se kreiraju logički u memoriji
pri startovanju programa.
pascal.232mmitrovic,
-> #223, postmastŮ█▀█Ţ Mozda je kasno, ali koliko znam ova direktiva sluzi samo
Ů█▀█Ţ za testiranje. Ako se stavi š$R+ ukljucuje se deo za proveru
Za $R je ista stvar kao i za $O:
$R+ ili $R- je provera opsega
$R<filename> je uključivanje resourcea
$O+ ili $O- je kontrola Overlaya
$O<name> je ime modula u nekom drugom fajlu (veoma retko se koristi)
pascal.233pedjak,
-> #226, dr.grba> Da li EXE program napravljen u Turbo Pascalu 7.0 ima nekakav CRC
> check ili nešto poput toga kao zaštitu integriteta EXE datoteke?
žisto sumnjam.
pascal.234mdave,
-> #228, markom■> Wrong, u TPW 1.x i BP 7.x, ta direktiva ima još jednu funkciju,
Ne znam kako vi, ali ja za vreme razvoja programa uključim
obavezno sve check-ove. :)
žak i one koje ne znam čemu služe... :)
*** SOR 2.11 ***
■ Hack by MarkoM ■
pascal.235kriss,
-> #226, dr.grba˙˙ Da li EXE program napravljen u Turbo Pascalu 7.0 ima nekakav
˙˙ CRC check ili nešto poput toga kao zaštitu integriteta EXE
˙˙ datoteke?
Ne znam da li ima, ali ne vidim prepreku da se ugradi. :)
pascal.236markom,
-> #234, mdave:: *** SOR 2.11 ***
:: ■ Hack by MarkoM ■
Znači radi crack, odlično ;)
pascal.237isekulovic,
-> #209, dejanr>> Na heap ide ono što alociraš sa getmem, new i... da'l ima još nešto.
I Initgraph traži malo heapa za sebe.
pascal.238postmast,
From: markom@Osmeh.FON.BG.AC.YU (Marko Milivojevic)
Subject: Re: pascal
Date: Fri, 24 Jun 1994 13:48:50 GMT
Dejan Ristanovic (dejanr@sezam.UUCP) wrote:
: Ako uspes, javi. Mnogi kazu da je "direktorijum zapravo fajl", da se
: moze otvoriti ovako ili onako, ali sta god se proba, ne uspeva. Pricao
: sam i sa nekim ljudima na BIX-u o tome (u vezi mog cuvenog pitanja,
: kako napisati program koji setuje datum kreiranja direktorijuma), i
: na kraju je ispalo da niko ne zna, cak ni covek koji je pisao knjigu
: Undocumented DOS
A sta mislite da neko pita one ljude iz Symantec-a ili Central Pointa, ili ne daj boze Microsoft-a :) Postoje njihovi programcici koji menjaju datum kreiranj direktorijuma ...
pascal.239omega,
-> #235, krissŢ ˙˙ CRC check ili nesto poput toga kao zastitu integriteta EXE datoteke?
Ţ
Ţ Ne znam da li ima, ali ne vidim prepreku da se ugradi. :)
Npr. kako?
pascal.240jasicp,
Da li neko zna kako se izvrsava program pomocu EXEC ( ... ) ali tako
da se rezultati izvrsavanja ne vide na ekranu ? Proba sam sa nesto tipa
PROGRAM.EXE argumenti >NULL, ali ne funkcionise ?
pascal.241djelovic,
-> #240, jasicp> Da li neko zna kako se izvrsava program pomocu EXEC ( ... ) ali tako
> da se rezultati izvrsavanja ne vide na ekranu ? Proba sam sa nesto tipa
> PROGRAM.EXE argumenti >NULL, ali ne funkcionise ?
Da li program koji startuješ piše po ekranu preko BIOS-a ili gađa direktno
u video memoriju? To možeš da proveriš tako što ćeš da ga staviš u dibager, pa
da promatraš odgovarajući interapt.
pascal.242markom,
-> #238, postmast Ja se stvarno izvinjavam Sezamovcima na ovakvim porukama, ali kad sam
ih pisao, zaboravio sam da lupam enter, tako da je stiglo, ovakvo kako
je.
Evo cele sadržine ...
:: A sta mislite da neko pita one ljude iz Symantec-a ili Central Pointa, ili
:: ne daj boze Microsoft-a :) Postoje njihovi programcici koji menjaju datum
:: kreiranj direktorijuma ...
pascal.243dejanr,
-> #238, postmast>> A sta mislite da neko pita one ljude iz Symantec-a ili Central Pointa,
>> ili ne daj boze Microsoft-a :) Postoje njihovi programcici koji menjaju
>> datum kreiranj direktorijuma ...
Prvo, ako i postoje, ja ih nisam video. FD, konkretno, ne može da promeni
datum kreiranja direktorijuma.
Datum kreiranja direktorijuma može da se promeni tako što odeš u direktorijum
iznad pa kažeš NU . (ova tačka nije kraj rečenice ;)) i onda setuješ datum
tako što direktno brljaš po zapisu direktorijuma. U tom smislu bi se datum
mogao setovati tako što napišeš program koji prvo nađe gde je root katalog
(što je lako) pa iz njega pročita gde su katalozi, pa iz njih gde su
potkatalozi itd, dok ne nađe traženi katalog, pa onda u zapisu njegovog
"roditelja" promeni datum kreiranja "deteta", direktno pišući po disku.
Samo što bi to zahtevalo da se maltene napiše pola DOS-a, ne-elegantno
je u visokom stepenu, aktiviralo bi sav mogući antivirus softver itd, itd.
Sve skupa, nije neko rešenje.
Ali prečicu niko ne ume da nađe :(
PS Zanimljiva stvar: nije dosta promeniti samo datum direktorijuma, treba
i ući u njega pa promeniti datume kreiranja "fajlova" . i .., da
bi "maskiranje" bilo savršeno.
pascal.244postmast,
From: broker@setgate.setnet.co.yu (Predrag Supurovic)
Subject: pascal
Date: Thu, 23 Jun 1994 09:47:04
"P> Zna li neko da li windows ima neki karakteristican 'potpis' negde
"P> u memoriji dok je aktivan? Ako ima bio bih zahvalan na informaciji.
Imam TP6.0 UNIT koji prpoznaje ne samo Windows, nego i veci broj
drugih multitaskera. Arhiva je velika 6K pa mogu da ti je posaljem
i postom (ako je jos neko zainteresovan, mogu da je ostavim UUENCODE-ovanu
u ovoj konferenciji).
Nazalost, nema source, vec TPU za 6.0
Evo isecka iz interface sekcije. Izvadjeno je mnogo propratnog teksta
i ostavljeno samo ono sto ce ti pokazati sva sve ima unutra.
Unit MulAware;
{
Multitasking Routines for TP 6.0
Copyright (c) 1991,1992 A.B.S. - ALL RIGHTS RESERVED
Type
MultiType = (None, {No Supported MultiTasker Found}
DESQview, {DESQview 2.26+}
TopView, {TopView, TaskView, DESQview 2.00- 2.25,
OmniView, or Compatible}
TaskSwitcher, {MS DOS 5.0 Task Switcher or Compatible}
DoubleDOS, {DoubleDOS}
WinEnh, {MS Windows 3.x in Enhanced Mode}
Win386, {MS Windows 386 v2.xx}
WinStandard, {MS Windows in Real or Standard Mode}
OS2}; {OS/2 1.3 or 2.0}
Var
MultiTasker : MultiType;
Procedure TimeSlice;
Procedure PreventSwitching;
Procedure ResumeSwitching;
Function MulVersion : Word;
Function VirtualBuffer : Word;
Procedure TV_UpdateBuffer(Num : Word; Buffer, CharOffset : Word);
Function DDOS_Visible : Boolean;
... BR> Deca su ukras sveta. Daj da se jos malo okitimo.
* Origin: Oreska BBS, UZICE = SF BIBLIOTEKA = SETNet: (38:101/101)
pascal.245postmast,
From: broker@setgate.setnet.co.yu (Predrag Supurovic)
Subject: pascal
Date: Thu, 23 Jun 1994 09:50:05
"P> Zna li neko da li windows ima neki karakteristican 'potpis' negde
"P> u memoriji dok je aktivan? Ako ima bio bih zahvalan na informaciji.
Hi, pored onog UNIT-a nasao sam jos nesto, sto sam skoro zaboravio
da imam. Ovo sam nasao na U'NI-net.
pozdrav,
broker
─ Area: U.pascal ─────────────────────────────────────────────────────────────
Msg#: 5113 Date: 12-22-93 23:59
From: Greg Estabrooks Read: Yes Replied: No
To: Shel Shallon Mark:
Subj: HOW DETECT WINDOWS?
──────────────────────────────────────────────────────────────────────────────
SS>Does anyone know how a DOS program can determine whether it running
as
SS>a DOS application under Windows? Is there an interrupt that can be
SS>tested? Many thanks in advance.
Here are some routines I wrote a while back for a friend to test
for windows which you might find of use:
{***********************************************************************
}
PROGRAM Win3XInf; { Simple Detection routines for Windows 3.X
}
{ Last Updated April 28/93, Greg Estabrooks }
FUNCTION Win3X :BOOLEAN; ASSEMBLER;
{ Routine to determine if Windows is currently running
}
ASM
Mov AX,$4680 { Win 3.x Standard check
}
Int $2F { Call Int 2F
}
Cmp AX,0 { IF AX = 0 Win in real mode
}
JNE @EnhancedCheck { If not check for enhanced
mode}
Mov AL,1 { Set Result to true
}
Jmp @Exit { Go to end of routine
}
@EnhancedCheck: { Else check for enhanced mode
}
Mov AX,$1600 { Win 3.x Enhanced check
}
Int $2F { Call Int 2F
}
Cmp AL,0 { Check returned value
}
Je @False { If not one of the below it
}
Cmp AL,$80 { is NOT installed
}
Je @False
Mov AL,1 { Nope it must BE INSTALLED
}
Jmp @Exit
@False:
Mov AL,0 { Set Result to False
}
@Exit:
END;{Win3X}
FUNCTION WinVer :WORD; ASSEMBLER;
{ Returns a word containing the version of Win Running
}
{ Should only be used after checking for Win installed
}
{ Or value returned will be meaning less
}
ASM
Mov AX,$1600 { Enhanced mode check
}
Int $2F { Call Int 2F
}
END;{WinVer}
BEGIN
IF Win3X THEN { If it is running say so
}
BEGIN
Writeln('Windows is Running! '); { Now display version running
}
Writeln('Version Running is : ',Lo(WinVer),'.',Hi(WinVer));
END
ELSE { If not 'Just say NO!'
}
Writeln('Windows is not
Running!');
END.
{***********************************************************************}
....Greg....
■ OLX 2.1 TD ■ We now return you to your regular programming...
-!-
■ RoseMail 2.10ß: U'NI-net: VE1EI BBS Sambro, NS 90
... BR> Pogubio sam tagove. Postenim nalazacima nagrada.
* Origin: Oreska BBS, UZICE = SF BIBLIOTEKA = SETNet: (38:101/101)
pascal.246postmast,
From: markom@Osmeh.FON.BG.AC.YU (Marko Milivojevic)
Subject: Re: pascal
Date: Sat, 25 Jun 1994 15:05:10 GMT
:: Imam TP6.0 UNIT koji prpoznaje ne samo Windows, nego i veci broj
:: drugih multitaskera. Arhiva je velika 6K pa mogu da ti je posaljem
:: i postom (ako je jos neko zainteresovan, mogu da je ostavim UUENCODE-ovanu
:: u ovoj konferenciji).
Evo ga C source za detektovanje Windows-a ...
int win (void) {
union REGS regs;
regs.x.ax = 0x1600;
int86(0x2F, ®s, ®s);
if (regs.h.al == 0)
return 0;
zija (3), a u AH je minor (1, 11 ili sta vec ;)
pascal.247markom,
-> #240, jasicp:: PROGRAM.EXE argumenti >NULL, ali ne funkcionise ?
^ Imaš L viška ;)
PROGRAM.EXE argumenti > NUL :)
pascal.248ognjen,
Help me!
FindFirst('*.*', AnyFile, DirInfo);
If (DirInfo.Attr and Directory)=0 Then
Ovo ne kapiram. DirInfo.Attr je char. A Directory je Boolean?
kako onda (baba i zaba)=integer ????
pascal.249mmitrovic,
-> #230, dejanrŮ█▀█Ţ Ako uspeš, javi. Mnogi kažu da je "direktorijum zapravo fajl", da se
Ů█▀█Ţ može otvoriti ovako ili onako, ali šta god se proba, ne uspeva. Pričao
Ů█▀█Ţ sam i sa nekim ljudima na BIX-u o tome (u vezi mog čuvenog pitanja,
Ů█▀█Ţ kako napisati program koji setuje datum kreiranja direktorijuma), i
Ništa ne pali sem direktnog pisanja po disku.
Tužno, ali istinito. :(
pascal.250mmitrovic,
-> #226, dr.grbaŮ█▀█Ţ Da li EXE program napravljen u TP 7.0 ima nekakav CRC check
Nema.
pascal.251srdjan.j,
-> #248, ognjen==> If (DirInfo.Attr and Directory)=0 Then
==>
==> Ovo ne kapiram. DirInfo.Attr je char. A Directory je Boolean?
==> kako onda (baba i zaba)=integer ????
Ovde se radi o integer operatoru _and_ ( ekstenzija TP-a ). Otkud ti da je
Directory Boolean ? Ovde se radi o maskiranju jednog bita iz DirInfo.Attr :
Neka je DirInfo.Attr = 01010011B ( binarno )
a neka je Directory = 00010000B ( takođe binarno, neznam je baš ovaj broj,
ali za primer je dobro )
-------------------
Onda se radi bit po bit operacija and i dobija se sledeci rezultat:
00010000B
E, sad, pozicija one jedinice u Directory predstavlja mesto gde se u okviru
DirInfo.Attr nalazi informacija da li je dati fajl direktorijum ili nije. Ako
je na toj poziciji nula, onda je rezultat prethone operacije 0, znači nije
direktorijum; u suprotnom rezultat je različit od nule, => našli smo dir !
Srđan.
pascal.252kriss,
-> #239, omega˙˙ Ţ ˙˙ CRC check ili nesto poput toga kao zastitu integriteta
˙˙ EXE datoteke? Ţ
˙˙ Ţ Ne znam da li ima, ali ne vidim prepreku da se ugradi. :)
˙˙
˙˙ Npr. kako?
U TP 7.0 ne znam kako da ga ugradim, ;) ali u program bi znao i to
veoma lako. Ako je 'običan' CRC u pitanju - ima dosta rutina za isti i
posao se jednostavno sređuje iz asemblera, a on se pak lako ugrađuje u
Paskal program. Ako treba i rešenje može ... :)
pascal.253mmitrovic,
-> #243, dejanrŮ█▀█Ţ je u visokom stepenu, aktiviralo bi sav mogući antivirus softver itd,
Ů█▀█Ţ itd.
Nebi. Šta misliš kako DOS dolazi do svojih dir-ova.
pascal.254dejanr,
-> #253, mmitrovic>> > je u visokom stepenu, aktiviralo bi sav mogući antivirus softver itd,
>> > itd.
>>
>> Nebi. Šta misliš kako DOS dolazi do svojih dir-ova.
Kada god sam pravio neke apsolutne upise na disk u zoni direktorijuma
(jednom sam pisao program koji koristi onih par praznih bajtova),
antivirusi su vrištali. Možda sada prave bolje antiviruse :)
Možda DOS koristi neke nedokumentovane pozive DOS-a ;)
pascal.255dr.grba,
-> #235, kriss>> ˙˙ Da li EXE program napravljen u Turbo Pascalu 7.0 ima nekakav
>> ...
>> Ne znam da li ima, ali ne vidim prepreku da se ugradi. :)
Uf, vidim da je bilo nejasno. Naime, pored mene je u trenutku pisanja sedeo
jedan dečko, pascal wizard (: i pitanje je zapravo njegovo. U međuvremenu je
empirijski pokazano da nema ni govora o postojanju slične kontrole po
defaultu kompajlera. Anyway, hvala svima na odgovoru.
pascal.256omega,
-> #252, krissŢ veoma lako. Ako je 'obican' CRC u pitanju - ima dosta rutina za isti i
Ţ posao se jednostavno sreduje iz asemblera, a on se pak lako ugraduje u
Ţ Paskal program. Ako treba i resenje moze ... :)
Moze...
pascal.257mmitrovic,
-> #254, dejanrŮ█▀█Ţ Možda DOS koristi neke nedokumentovane pozive DOS-a ;)
Možda, dal se neko setio da debaguje CD funkciju?
pascal.258kriss,
-> #256, omega˙˙ Ţ veoma lako. Ako je 'obican' CRC u pitanju - ima dosta rutina
˙˙ za isti i
˙˙ Moze...
Uh, nemam vremena za kompletnu proceduru, nadam se da će biti jasno
kako se primenjuje fajl uz poruku. :)
crc32.zippascal.259omega,
-> #258, krissŢ Uh, nemam vremena za kompletnu proceduru, nadam se da ce biti jasno
Ţ kako se primenjuje fajl uz poruku. :)
Ma ok, to je 32-bitni crc, ali pitanje je kako ugraditi self-check
u exe program?
pascal.260bulaja,
-> #259, omega│Ma ok, to je 32-bitni crc, ali pitanje je kako ugraditi self-check
│u exe program?
└───
Pa biće dovoljno da pri svakom startovanju radi CRC svog headera
(početka EXE datoteke, bilo bi suviše sporo da radi CRC za ceo file),
a da pri prvom startovanju taj CRC snimi negde (u samog sebe ili u
neki CFG file).
pascal.261omega,
-> #260, bulajaŢ Pa bice dovoljno da pri svakom startovanju radi CRC svog headera
Ţ (pocetka EXE datoteke, bilo bi suvise sporo da radi CRC za ceo file),
Ţ a da pri prvom startovanju taj CRC snimi negde (u samog sebe ili u
Ţ neki CFG file).
Pa u tome i jeste problem. I to naravno samo u situaciji koja
mene zanima, a to je: EXE program koji si napravio je pekalajtisan,
i potreban ti je jedan self-check svaki put kada se startuje, i to BEZ
koriscenja drugih fajlova - znaci cisto crc zapis u samom spakovanom
exe-u! Naravno, pitanje je da li to uopste moze da se izvede...
pascal.262dpriest...,
-> #240, jasicp>>> Da li neko zna kako se izvrsava program pomocu EXEC ( ... ) ali
>>> tako da se rezultati izvrsavanja ne vide na ekranu ? Proba sam
>>> sa nesto tipa PROGRAM.EXE argumenti >NULL, ali ne funkcionise ?
Swap;
Exec(GetEnv('comspec'), ' /c program.exe arg1 arg2 >NUL');
Swap;
I nema nista na ekranu ako program.exe koristi bios rutime za ispis. Ako
pise direktno, probaj da pre ovog exec-a exec-ujes burnmon.exe (dejanR)
i nista se nece videti na ekranu :)))))))))))
DP...
pascal.263postmast,
From: Nenad.Radosavljevic@f114.n103.z38.setgate.setnet.co.yu (Nenad Radosavljevic)
Subject: Pascal
Date: Mon, 27 Jun 1994 17:19:02
..│Imam TP6.0 UNIT koji prpoznaje ne samo Windows, nego i veci broj
..│drugih multitaskera. Arhiva je velika 6K pa mogu da ti je posaljem
..│i postom (ako je jos neko zainteresovan, mogu da je ostavim
..│UUENCODE-ovanu
..│u ovoj konferenciji).
Ima zainteresovanih!
Pozdrav,
Nenad R.
■ CMPQwk 1.30 #316 ■ bius tagline. This is a mebius tagline. This is a me ..
* Origin: SETNet:INFOSYS*informacije*NON-STOP*BG*011-414940* (38:103/114)
pascal.264kriss,
-> #259, omega˙˙ Ma ok, to je 32-bitni crc, ali pitanje je kako ugraditi
˙˙ self-check u exe program?
Iskoristiš fajl prikačen uz moju poruku. ;) Kako - ako nema nekih
mutnih radnji (direktno upisivanje u EXE i sl.), uradi se CRC prvih n
bajtova (ili celog programa - nije bitno) i uporedi se sa prethodno
izračunatim CRC-om koji stoji kao zadnja dva (četiri) bajta EXE-a. Ako
nije OK - već_šta_treba_da_se_uradi. :)
pascal.265jasicp,
-> #247, markom> :: PROGRAM.EXE argumenti >NULL, ali ne funkcionise ?
> ^ Imas L viska ;)
>
> PROGRAM.EXE argumenti > NUL :)
Jok, isti je efekat. Opet pise. Osim toga, mislim da bi trebalo NULL,
ali svejedno. U cemu je stos ?
pascal.266jasicp,
-> #241, djelovic> Da li program koji startujes pise po ekranu preko BIOS-a ili gada direktno
> u video memoriju? To mozes da proveris tako sto ces da ga stavis u dibager,
> pa da promatras odgovarajuci interapt.
Iskreno, ne znam. Radilo se o PKZIP-u, ali je pitanje postavljeno u
generalnom smislu. U cemu je razlika, sa moje/ tacke gledista ?
Dibager mi nije na kucnoj masini ( imam 286/1MB ) pa i ne mogu da ga
startujem...
Sem toga, izvestaj o izlasku iz pozvanog programa je u DOSERROR
varijabli, je'l tako ?
pascal.267jasicp,
-> #262, dpriest...> I nema nista na ekranu ako program.exe koristi bios rutime za ispis. Ako
> pise direktno, probaj da pre ovog exec-a exec-ujes burnmon.exe (dejanR)
> i nista se nece videti na ekranu :)))))))))))
Objasni :?...
pascal.268dzakic,
-> #265, jasicp> Jok, isti je efekat. Opet pise. Osim toga, mislim da bi trebalo
> NULL, ali svejedno. U cemu je stos ?
Da bi se ispis mogao preusmeriti u 'ništa', potrebno je da program piše
preko DOS-a a ne preko BIOS-a! To postavljanje redirekcije radi komandni
interpreter, pa startovanje sa
Exec('prog.exe','> nul')
nema efekta jer se string '> nul' prosređuje kao parametar a uređaj za
izlaz je i dalje ekran (odnosno, onaj koji je postavljen prilikom
startovanja našeg programa). Da bi sve radilo kako treba, uradi:
Exec(GetEnv('comspec'),'/c prog.exe > nul');
pascal.269markom,
-> #265, jasicp :: Jok, isti je efekat. Opet pise. Osim toga, mislim da bi trebalo NULL,
:: ali svejedno. U cemu je stos ?
Nema šanse da je NULL. NUL: ti je DOS uređaj, a NULL je 0 u
C-u :)
-=> MM <=-
pascal.270bulaja,
-> #261, omega│Pa u tome i jeste problem. I to naravno samo u situaciji koja
│mene zanima, a to je: EXE program koji si napravio je pekalajtisan,
│i potreban ti je jedan self-check svaki put kada se startuje, i to BEZ
│koriscenja drugih fajlova - znaci cisto crc zapis u samom spakovanom
│exe-u! Naravno, pitanje je da li to uopste moze da se izvede...
└───
Ok, npr. možeš da iskoristiš nekoliko bajtova u copyright poruci koju
PKLite stavlja na početak fajla. Kad se program startuje prvi put posle
PKLite-ovanja provalićeš da ima originalni header ("PKLITE..."), onda
lepo izračunaš CRC cele datoteke sem ta 4 bajta gde ćeš strpati CRC i
upišeš ga u file. Posle prilikom svakog startovanja vidiš da je header
izmenjen, pokupiš ta 4 bajta iz njega, izračunaš CRC datoteke i uporediš
:). PKLite se neće buniti pošto i ovako ta poruke ničemu ne služi, usput
inicijalizaciona procedura (ona koja prilikom prvog startovanja računa
CRC i upisuje ga) može da upiše i neke druge podatke u sam header (npr.
konfiguraciju i sl.) i rešio si problem :).
pascal.271omega,
-> #270, bulajaŢ Ok, npr. mozes da iskoristis nekoliko bajtova u copyright poruci koju
Ţ PKLite stavlja na pocetak fajla. Kad se program startuje prvi put posle
Ok, probacu za neki dan pa cu da javim za rezultate...
pascal.272dejanr,
-> #266, jasicp>> > Da li program koji startujes pise po ekranu preko BIOS-a ili gada direktno
>> > u video memoriju? To mozes da proveris tako sto ces da ga stavis u
>> > dibager, pa da promatras odgovarajuci interapt.
>>
>> Iskreno, ne znam. Radilo se o PKZIP-u, ali je pitanje postavljeno u
>> generalnom smislu.
Izlaz PKZIP-a može da se "rediriguje", dakle ne gađa video memoriju direktno.
Nećeš imati problema sa opisanim metodima.
>> Sem toga, izvestaj o izlasku iz pozvanog programa je u DOSERROR
>> varijabli, je'l tako ?
Da, PKZIP vraća ERRORLEVEL
pascal.273tbecej,
Da li neko ima YU fontove u BORLANDOVOM CHR font formatu, neka se javi na mail
ili na telefon 021 811 558 i trazi Jovu. Hvala.
pascal.274maksa,
-> #273, tbecej>> Da li neko ima YU fontove u BORLANDOVOM CHR font formatu, neka
Da li neko ume da kaže nešto više o ovom formatu, ili može
da podeli neke CHR fontove ? Dobro bi došao neki 'običan' 9x16,
ili tako nešto. One gotice i slični ne liče ni na šta u 640x480,
a ovaj 8x8 je jako mali. :(
pascal.275dtadic,
-> #274, maksa>> Da li neko ima YU fontove u BORLANDOVOM CHR font formatu, neka
Zašto ih ne napraviš sam, sa nekim editorom CHR fontova?
pascal.277jasicp,
-> #269, markom> Nema sanse da je NULL. NUL: ti je DOS uredaj, a NULL je 0 u
> C-u :)
Imas pravo, zeznuo sam se. Bas cu da isteram ovo pisanje/ne pisanje na
cistac.
pascal.278postmast,
From: broker@setgate.setnet.co.yu (Predrag Supurovic)
Subject: pascal
Date: Sun, 03 Jul 1994 10:04:01
"P> Pa u tome i jeste problem. I to naravno samo u situaciji koja
"P> mene zanima, a to je: EXE program koji si napravio je pekalajtisan,
"P> i potreban ti je jedan self-check svaki put kada se startuje, i to BEZ
"P> koriscenja drugih fajlova - znaci cisto crc zapis u samom spakovanom
"P> exe-u! Naravno, pitanje je da li to uopste moze da se izvede...
Moze. Imao sam negde TP unit predvidjen za to... Probac da ga pronadjem
pa stavim. Cini se da e bio u ekom stranom casopisu..uh, treba to
prekucavati...
Broker
... BR> Da li si clan YUCCA? Ne? Pa sta cekas?!
* Origin: Oreska BBS, UZICE = SF BIBLIOTEKA = SETNet: (38:101/101)
pascal.279postmast,
From: broker@setgate.setnet.co.yu (Predrag Supurovic)
Subject: pascal
Date: Sun, 03 Jul 1994 10:07:02
"M> Nema sanse da je NULL. NUL: ti je DOS uredaj, a NULL je 0 u
"M> C-u :)
U oba slucaja, ako se pise preko DOS-a na ekranu se nista ne bi
videlo. U jedniom slucaju ispis bi isao na NUL uredjaj a u drugom u NULL
datoteku.
broker
... BR> Pusenje ili zdravlje. Odlucite sami.
* Origin: Oreska BBS, UZICE = SF BIBLIOTEKA = SETNet: (38:101/101)
pascal.280omega,
-> #278, postmastŢ Moze. Imao sam negde TP unit predvidjen za to... Probac da ga pronadjem
Ţ pa stavim. Cini se da e bio u ekom stranom casopisu..uh, treba to
Ţ prekucavati...
Odlicno :) Nadam se samo da taj unit ne zavisi od verzije TP-a?
pascal.281postmast,
From: Nenad.Radosavljevic@f114.n103.z38.setgate.setnet.co.yu (Nenad Radosavljevic)
Subject: Unit Za Miltitaskere
Date: Wed, 06 Jul 1994 21:51:00
Svojevremeno je neko ovde pominjao da ima unit za prepiznavanje i
vrsenje funkcije pod nazivom "giving up time slice" za DesqView,
Windows i jos neki software-a koji omogucavaju multasking. Tom prilikom
je receno da je unit mali i da ce ga poslati UUEnsode-ovanog u ovu
konferenciju.
Molio bih doticnog da mi javi gde mogu da skinem unit ili da ga
UUEncode-uje i posalje ovde.
Unapred zahvalan!
Pozdrav,
Nenad R.
■ CMPQwk 1.30 #316 ■ We now return to our regularly scheduled flame-throwing.
* Origin: SETNet:INFOSYS*informacije*NON-STOP*BG*011-414940* (38:103/114)
pascal.282postmast,
From: broker@setgate.setnet.co.yu (Predrag Supurovic)
Subject: Unit Za Miltitaskere (1/2)
Date: Thu, 07 Jul 1994 00:29:01
NR> Svojevremeno je neko ovde pominjao da ima unit za prepiznavanje i
NR> vrsenje funkcije pod nazivom "giving up time slice" za DesqView,
NR> Windows i jos neki software-a koji omogucavaju multasking. Tom
NR> prilikom je receno da je unit mali i da ce ga poslati UUEnsode-ovanog
NR> u ovu konferenciju.
Ja sam bio taj. Evo sad saljem. Podelio sam u dve poruke pa sastavi
pre nego sto dekodujes. Koristi UUENCODE.
broker
begin 644 TPMUL310.ZIP
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
>> nastavak u sledecoj poruci
... Ovo ovde je Balkan, zemlja iz snova.
* Origin: Oreska BBS, UZICE = SF BIBLIOTEKA = SETNet: (38:101/101)
pascal.283postmast,
From: broker@setgate.setnet.co.yu (Predrag Supurovic)
Subject: Unit Za Miltitaskere (2/2)
Date: Thu, 07 Jul 1994 00:29:02
>> nastavak iz prethodne poruke
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
M```,````````````(````"80``!-54Q!5T%212Y44%502P$""P`*````!@!!
M"0P9%]QO>V,"``"0!```"P`````````!`"`````H%0``355,5$535"Y005-0
52P4&``````0`!`#G````M!<`````
`
end
sum -r/size 64/8739 section (from "begin" to "end")
sum -r/size 7153/6321 entire input file
... BR> Jedan im'o s kim, im'o s cim, im'o i gde - pa sad nema kud.
* Origin: Oreska BBS, UZICE = SF BIBLIOTEKA = SETNet: (38:101/101)
pascal.284postmast,
From: Vasil.Bacovski@f108.n108.z38.setgate.setnet.co.yu (Vasil Bacovski)
Subject: pascal
Date: Wed, 06 Jul 1994 09:04:02
Tema: pascal
Datum: 03 Jul 94 14:38
Citat: "Damir Tadic" --> All
"T> From: "Damir Tadic" <dtadic@sezam.UUCP>
"T> Newsgroups: yu.prog.pascal
"T> Organization: SEZAM Beograd, 011 648-422
>> Da li neko ima YU fontove u BORLANDOVOM CHR font formatu, neka
"T>
"T> Zasto ih ne napravis sam, sa nekim editorom CHR fontova?
Gde moze da se nadje takav editor?
Pozdrav Vasil
... A black hole is where God divided by ZERO...
* Origin: Struga BBS +389 96 74074 * Macedonia * SETNet: (38:108/108)
pascal.285postmast,
From: broker@setgate.setnet.co.yu (Predrag Supurovic)
Subject: pascal
Date: Sat, 09 Jul 1994 11:28:26
"P> Moze. Imao sam negde TP unit predvidjen za to... Probac da ga
"P> pronadjem pa stavim. Cini se da e bio u ekom stranom casopisu..uh,
"P> treba to prekucavati...
"P>
"P> Odlicno :) Nadam se samo da taj unit ne zavisi od verzije TP-a?
Ne bi trebalo, ako je u izvornom kodu, sem TP7.0 posto su u njemu uvedene
neke novine koje programeri obilato koriste...
Broker
p.s. a kakva je rutina bila u pitanju, zaboravih...
... BR> Sto ne uradis danas - moraces sutra.
* Origin: Oreska BBS, UZICE = SF BIBLIOTEKA = SETNet: (38:101/101)
pascal.286postmast,
From: markom@Osmeh.FON.BG.AC.YU (Marko Milivojevic)
Subject: Re: pascal
Date: Mon, 11 Jul 1994 08:38:43 GMT
Predrag Supurovic (broker@setgate.setnet.co.yu) wrote:
: U oba slucaja, ako se pise preko DOS-a na ekranu se nista ne bi
: videlo. U jedniom slucaju ispis bi isao na NUL uredjaj a u drugom u NULL
: datoteku.
Da, tacno, ali u onom drugom slucaju, ne bi postigao
zeljeni efekat, zar ne? :)
-=> MM <=-
pascal.287postmast,
From: broker@setgate.setnet.co.yu (Predrag Supurovic)
Subject: User Interface
Date: Sun, 10 Jul 1994 13:58:00
Postoji li neka biblioteka funkcija namenjana pravljenju
korisnickog interfejsa? Ne mislim na menije, vec na zamene za
ReadLn, WriteLn i slicne funkcije. Nesto sto formatira unos
i ispis podataka i tako to.
broker
* Origin: Oreska BBS, Uzice = SF BIBLIOTEKA = SETNet: (38:101/101)
pascal.288nikac,
Ajde da me neko prosvetli :)
U svom progrsmu preuzmem npr. int 08h tj. sa setintvec postavim neku
moju interupt proceduru. E sad, iz tog mog programa pozovem za exec
preko command.com -a neki drugi program. Sta se desava sa preuzetim
interuptima za vreme izvrsavanja ovog podprocesa? Da li ce se izvrsavati
moje interupt procedure jer je moj program u memoriji, ili ne?
pascal.289omega,
-> #282, postmastŢ Ja sam bio taj. Evo sad saljem. Podelio sam u dve poruke pa sastavi
Ţ pre nego sto dekodujes. Koristi UUENCODE.
Pitam u pogresnoj conf, ali gde sa nadjem taj UUENCODE. Sta je to
uopste?
pascal.290omega,
-> #285, postmastŢ p.s. a kakva je rutina bila u pitanju, zaboravih...
Rutina za crc proveru exe programa pisanog u TP-u...
pascal.291omega,
-> #287, postmastŢ Postoji li neka biblioteka funkcija namenjana pravljenju
Ţ korisnickog interfejsa? Ne mislim na menije, vec na zamene za
Ţ ReadLn, WriteLn i slicne funkcije. Nesto sto formatira unos
Ţ i ispis podataka i tako to.
U kom smislu zamene? Potrebno ti je nesto kao writeln a nije writeln!?
pascal.292dejanr,
-> #289, omega>> Pitam u pogresnoj conf, ali gde sa nadjem taj UUENCODE.
U direktorijumu COM, zove se UUEXE525.ZIP
pascal.293vitez.koja,
-> #288, nikac#=> moju interupt proceduru. E sad, iz tog mog programa
#=> pozovem za exec preko command.com -a neki drugi program.
#=> Sta se desava sa preuzetim interuptima za vreme
#=> izvrsavanja ovog podprocesa? Da li ce se izvrsavati moje
#=> interupt procedure jer je moj program u memoriji, ili
#=> ne?
Interapt procedure (tvoje) će se izvršavati ukoliko taj
novostartovani program ne menja interapt vektore.
Međutim, sve što možeš da postigneš na ovaj način je duboko
smrzavanje računara. Pretpostavljam da pokušavaš da izvedeš
iskakanje programa na pritisak tastera (popup)... To se ne
radi tako.
pascal.294evlad,
-> #288, nikac>> U svom progrsmu preuzmem npr. int 08h tj. sa setintvec postavim neku
>> moju interupt proceduru. E sad, iz tog mog programa pozovem za exec
>> preko command.com -a neki drugi program. Sta se desava sa preuzetim
>> interuptima za vreme izvrsavanja ovog podprocesa? Da li ce se izvrsavati
>> moje interupt procedure jer je moj program u memoriji, ili ne?
1) Zavisi da li si upotrebio funkciju SwapVectors.
Iz turbo pascal-ovog helpa:
" Swaps the SaveIntXX pointers in the System
unit with the current vectors. "
Spiasak vektora koje paskal u sebi preusmerava imas u helpu,
so, evo ti primera iz helpa kako treba pozvati novi komandni procesor.
{$M 8192,0,0}
uses Dos;
var
Command: string[79];
begin
Write('Enter DOS command: ');
ReadLn(Command);
if Command <> '' then
Command := '/C ' + Command;
SwapVectors;
Exec(GetEnv('COMSPEC'), Command);
SwapVectors;
if DosError <> 0 then
WriteLn('Could not execute COMMAND.COM');
end.
O ovom slucaju interapt procedure se nece izvrsavati. (probano sa
interruptom 1Bh, u aplikaciji ne radi Ctrl-Break dok u shell-u radi).
2) Kombinaciju za izostavljanje funkcija SwapVectors nisam probao.
3) Ako mislis da pravis neki rezidentan program tada treba koristiti
funkciju Keep.
pascal.295postmast,
From: broker@setgate.setnet.co.yu (Predrag Supurovic)
Subject: pascal
Date: Tue, 12 Jul 1994 01:43:39
MM> : U oba slucaja, ako se pise preko DOS-a na ekranu se nista ne bi
MM> : videlo. U jedniom slucaju ispis bi isao na NUL uredjaj a u drugom u
MM> NULL : datoteku.
MM>
MM> Da, tacno, ali u onom drugom slucaju, ne bi postigao
MM> zeljeni efekat, zar ne? :)
Decku je problem bio u tome sto je u oba slucaja ispis i dalje isao
na ekran, tj. ispis nije uopste isao preko BIOS-a.
... BR> Danas sam mladji no sto cu ikada biti.
* Origin: Oreska BBS, UZICE = SF BIBLIOTEKA = SETNet: (38:101/101)
pascal.296postmast,
From: Nenad.Radosavljevic@f114.n103.z38.setgate.setnet.co.yu (Nenad Radosavljevic)
Subject: User Interface
Date: Tue, 12 Jul 1994 08:56:01
PS│Postoji li neka biblioteka funkcija namenjana pravljenju
..│korisnickog interfejsa? Ne mislim na menije, vec na zamene za
..│ReadLn, WriteLn i slicne funkcije. Nesto sto formatira unos
..│i ispis podataka i tako to.
..│
Imas F/X Utils, na Fon File Server-u, koji ima dosta dobrih unita i
za formatiranje "upisa" i "ispisa" za kontrolu misa, Fossil rutine itd.
Pozdrav,
Nenad R.
■ CMPQwk 1.30 #316 ■ Mnoge devojke vole da pokazuju noge, a i sire.
* Origin: SETNet:INFOSYS*informacije*NON-STOP*BG*011-414940* (38:103/114)
pascal.297dtadic,
-> #284, postmast>> "T> Zasto ih ne napravis sam, sa nekim editorom CHR fontova?
>> Gde moze da se nadje takav editor?
Po beogradskim BBS-ovima se mogu naći dva:
- SFE.ARJ
- BGIFONT.ARJ
pascal.298igors,
Arhiva IMENIK.ZIP sadrzi program cija je namena servisiranje baze
podataka sa informacijama o vasim prijateljima i poslovnim partnerima tj. neka
vrsta elektronskog imenika i adresara. Program je pisan u TP 6.0 uz koristenje
dve eksterne biblioteke, GUILIB koju je napisao Mladen Perkovic i Sasa Cuturic
(namenjena je kreiranju elemenata korisnickog interfejsa) i TPDB (Turbo Pascal
Tools for Data Base) koja se bavi kontolom DBase kompatibilnih fajlova
koriscenih u programu.
Program IMENIK.EXE je stoga demonstracija mogucnosti koju nude ove dve
biblioteke.
Posle raspakivanja arhive prvo startujte IMENINS.EXE (setup program) gde
morate podesiti parametre vazne za rad. Najvazniji su PATHs (tj. direktorijumi
u kojima ce se nalaziti *.DBF, *.HLP, *.CFG, *.RSC fajlovi koji su neophodni za
rad programa). Ostali parametri su manje vazni i podesavaju se opciono.
Program sam poslao na SEZAM na molbu njegovog autora Mladena Perkovica.
P.S.
GUILIB biblioteka ce nakon finalne dorade biti poslana na SEZAM u
dogledno vreme. TPDB je uzeta sa SEZAMA i verovatno se nalazi pod imenom
TPDB314.ZIP u PASCAL direktorijumu.
imenik.zippascal.299isekulovic,
-> #288, nikac>> U svom progrsmu preuzmem npr. int 08h tj. sa setintvec postavim neku
>> moju interupt proceduru. E sad, iz tog mog programa pozovem za exec
>> preko command.com -a neki drugi program. Sta se desava sa preuzetim
>> interuptima za vreme izvrsavanja ovog podprocesa? Da li ce se izvrsavati
>> moje interupt procedure jer je moj program u memoriji, ili ne?
Zbog specifičnosti interapta 08h program iako menja interapt proceduru
mora da pozove staru da ne bi došlo do neželjenih posledica, najverovatnije
zbingovanja računara, tako da će se tvoja procedura izvršavati i posle
startovanja drugog programa▀
Ovo sam i praktično proverio kada sam pravio auto-dl za mte. žak sam
koristio i SwapVectors pre i posle exec procedure jer pošto promenim
proceduru na int 08h ona ne može da je dira da ne bi napravila haos, a
ostale vektore sredi ok.
pascal.300msmiljanic,
Ukratko: do 4 igraca, boje, ton, zvuk, brzina itd. sve se
podesava. One koji su skinuli neku od prethodne 2 verzije iz drugih
konferencija nek ne mrzi da skinu i ovu jer je doterana i finalna.
Program je napisan u TP-u i interesantan je kao primer da Crt unit
radi i sa nestandardnim modovima i fontovima.
yamb.zippascal.301postmast,
From: Nenad.Radosavljevic@f114.n103.z38.setgate.setnet.co.yu (Nenad Radosavljevic)
Subject: Pascal
Date: Fri, 15 Jul 1994 08:44:00
..│Ajde da me neko prosvetli :)
..│U svom progrsmu preuzmem npr. int 08h tj. sa setintvec postavim neku
..│moju interupt proceduru. E sad, iz tog mog programa pozovem za exec
..│preko command.com -a neki drugi program. Sta se desava sa preuzetim
..│interuptima za vreme izvrsavanja ovog podprocesa? Da li ce se izvrsav
..│moje interupt procedure jer je moj program u memoriji, ili ne?
Ovako kao sto si napisao trebalo bi da se izvrsavaju ukoliko taj
program koji je pozvan preko Comman.com-a --ne menja-- interupt vector
tabelu (koliko ja znam sam command.com ne menja tabelu). Medjutim
postoji dva ogranicenja:
1. U tvojim interrupt rutinama --ne sme-- se pozivati ni jedan DOS
servis, jer ce (zbog problema reentrant-osti) sistem "puci").
2. Na samom pocetku tvoje interrupt rutine (pogotovo za one rutine
koje se "kace" na Int $08h i $09h) moras pozvati starog nosioca int
vektora i to ne iz pascala vec preko masinske direktive. Primer:
Vektor stare rutine si sa getintvec($08,oldvec) snimio u oldvec
promenljivu (tipa pointer):
Proceure CallOldInt(Sub : Pointer);
begin
InLine ($9C/$5E/$06); {* PUSHF *}
{* call dword ptr [bp+6] *}
end;
a onda u tojoj inerrupt proceduri:
Procedure My interrupt(.....); Interrupt;
...
...
begin
CallOldInt(oldvec);
...
...
...
...
end;
Nadam se da sam pomogao. Ako ti treba jos objasnjenja pisi - ja cu biti
u Bgd-u od 24.07. pa ocekuj odgovor od tog datuma pa na dalje.
Pozdrav,
Nenad R.
■ CMPQwk 1.30 #316 ■ My other computer is a VAX.
* Origin: SETNet:INFOSYS*informacije*NON-STOP*BG*011-414940* (38:103/114)
pascal.302postmast,
From: broker@setgate.setnet.co.yu (Predrag Supurovic)
Subject: pascal
Date: Fri, 15 Jul 1994 10:22:19
"P> From: "Ivan Petrovic" <omega@sezam.UUCP>
"P> Pitam u pogresnoj conf, ali gde sa nadjem taj UUENCODE. Sta je to
"P> uopste?
Ako ti nije teko na pocetku poruke navdi za koga je, posto SEZAM,
kada je posalje u BInt napise da je za All. Jedva sam skontao da je za
mene.
UUENCODE i UUDECODE je par programa namenjenih za konvertovanje binarnih
datoteka u ASCII i ponovno konvertovanje iz ASCII u originilnu binarnu
datoteku. Na ovaj nacin se datoteke mogu poslati u obliku poruke, sto je
vrlo zgodno kada se radi sa mrezama (naravno, administratori ne vole predugacke
poruke.
Pogledaj, siguran sam da na SEZAM-u imas ovaj par programa.
broker@setgate.setnet.co.yu
... BR> Sta sam to popio? - rece Sokrat.
* Origin: Oreska BBS, UZICE = SF BIBLIOTEKA = SETNet: (38:101/101)
pascal.303postmast,
From: broker@setgate.setnet.co.yu (Predrag Supurovic)
Subject: pascal
Date: Fri, 15 Jul 1994 10:22:19
"P> p.s. a kakva je rutina bila u pitanju, zaboravih...
"P>
"P> Rutina za crc proveru exe programa pisanog u TP-u...
E da. Bacio sam se u prelistavanje literature i nasao u jednom
casopisu par rutina za menjanje izvrsnog koda, sto bi moglo da
se primeni i na cuvanje CRC-a. Znam da sam negde imao i TPU
koji je bas bio namenjen CRC proveri i jos uvek prevrcem casopise da
ga nadjem...
broker
... Svuda muskarci i zene - a nigde ljudi.
* Origin: Oreska BBS, UZICE = SF BIBLIOTEKA = SETNet: (38:101/101)
pascal.304postmast,
From: broker@setgate.setnet.co.yu (Predrag Supurovic)
Subject: pascal
Date: Fri, 15 Jul 1994 10:22:20
"P> From: "Ivan Petrovic" <omega@sezam.UUCP>
"P> Postoji li neka biblioteka funkcija namenjana pravljenju
"P> korisnickog interfejsa? Ne mislim na menije, vec na zamene za
"P> ReadLn, WriteLn i slicne funkcije. Nesto sto formatira unos
"P> i ispis podataka i tako to.
"P>
"P> U kom smislu zamene? Potrebno ti je nesto kao writeln a nije
"P> writeln!?
Upravo tako. Treba mi nesto kao Clipper GET i SAY. Ako to ne nadjem
sescu da sam napravim, ali bolje je da se prvo raspitam, zar ne? :)
broker
... BR> Ups. Opet ostadoh bez tagova...
* Origin: Oreska BBS, UZICE = SF BIBLIOTEKA = SETNet: (38:101/101)
pascal.305omega,
-> #304, postmastFrom: broker@setgate.setnet.co.yu (Predrag Supurovic) :)
> Upravo tako. Treba mi nesto kao Clipper GET i SAY. Ako to ne nadjem
> sescu da sam napravim, ali bolje je da se prvo raspitam, zar ne? :)
Ne znam kako to radi Clipper, ali ja sam pre nekoliko nedelja okacio
print proceduru koja pise direktno u video memoriju. Ali ne radi bas
kao writeln, vec se daju koordinate. Da li to pomaze?
pascal.306mmitrovic,
-> #301, postmastŮ█▀█Ţ InLine ($9C/$5E/$06); š* PUSHF *ć
Inline je stvar prošlost. Koristi asm direktivu.
pascal.307kriss,
-> #283, postmast˙˙>> nastavak iz prethodne poruke
˙˙
˙˙ MTN5E##S:%BQ)/)N*G`[W-1@I-&55RU#??M([D5T`%ZNAR0'9]V*J5M]#*-JT
Jel nije teško onom ko ovo sve dešifruje i sredi da zakači ovde običan
name.TPU i šta već ide uz to. Hvala.
pascal.308postmast,
From: anubis@hobbiton.CO.YU
Subject: Re: pascal
Date: Tue, 26 Jul 1994 00:45:46 GMT
Ivan Petrovic (omega@sezam.UUCP) wrote:
>>> Ne znam kako to radi Clipper, ali ja sam pre nekoliko nedelja okacio
>>> print proceduru koja pise direktno u video memoriju. Ali ne radi bas
>>> kao writeln, vec se daju koordinate. Da li to pomaze?
Imam ja svoju funkciju InputXY (x,y,'Text')
Moguca su razna editovanja samog unesenog texta.
pascal.309inesic,
Patim se sa nekim kalendarom. Treba mi formula za izračunavanje
broja dana od 1. jan. 1. god. do tekućeg (zadatog) datuma. Isto
tako trebala bi mi formula za obrnutu stvar. Ako je neko
svojevremeno imao HP-71B, i ako se seća onih francuskih diskova,
to su bile funkcije
day(dat:longInt):longInt gde je dat neki intidžer u
formatu ggggmmdd, a rezultat je broj dana
proteklih od "nulte" godeine
datum(d:longInt):longInt gde je d broj dana proteklih od
"nulte" godine, a rezultat je datum u
gorenavedenom intidžer formatu
Meni lično ne treba funkcija koja će vraćati brojeve u ovim
formatima, treba mi samo formula po kojoj se to računa. Probao
sam nešto da skrpim ali mi nije išlo. Što je najgore, pozajmio
sam od druga HP-71B, tako da uvek znam kad pogrešim, a pogrešim
uvek. :( Dobijam sve neke približne brojeve.
E da, sad sam se setio da je nekada, u uputstvima za stare
pakardove kalkulatore sa RPNom, bio dat program za izračunavanje
bioritma. Tu je, imeđu ostalog bila data funkcija day(). Ako neko
još ima, i nostalgično čuva makinu, ako je nekom ostala knjižica
"Aplications on your HP-33" (davnih li vremena) ili neka slična
nek mi časkom prekuca onaj deo programa koji to računa.
Unapred ću se zahvaliti svakom dobronamernom.
inesic
pascal.310djelovic,
-> #309, inesic> Patim se sa nekim kalendarom. Treba mi formula za izračunavanje
> broja dana od 1. jan. 1. god. do tekućeg (zadatog) datuma.
Dejanr je svojevremeno napisao veoma lep tekst na tu temu, pogledaj u
starijim računarima ili se uputi odmah u /RSOFT direktorijum.
pascal.311andrejt,
Svugde kaze (u prevodu) : JMP FFFF : 0 resetuje
comp ako je na adr. 40h : 72h upisana vrednost
1234h, medjutim ne uspeva bas najbolje.Ako
neko zna nesto nek mi kaze.
pascal.312andrejt,
-> #311, andrejtMrzim reply na sopstvene porue ali jedno objasnjenje
doticna jmp ff... nece iz pascala (6.0) preko direktive
asm ...
pascal.313dejanr,
-> #309, inesic>> Patim se sa nekim kalendarom. Treba mi formula za izračunavanje
>> broja dana od 1. jan. 1. god. do tekućeg (zadatog) datuma. Isto
>> tako trebala bi mi formula za obrnutu stvar.
Ha! Imam gotovo rešenje za tebe :)
Pogledaj tekst iz "Računara 94", zove se "Sve po kalendaru", takve stvari
vrlo detaljno objašnjene. žak nije od 1.1.1. nego i od ranije :)
Ako ti trebaju samo programi (procedure), imaš ih u direktorijum RSOFT,
fajl R094KAL.ZIP.
pascal.314dejanr,
-> #313, dejanrPS Procedure možeš bezbedno koristititi za "razumne" datume iz prethodnih
par vekova, ali treba da budeš oprezan sa datumima od pre pet-šest
vekova zbog promene kalendara (mada procedure podržavaju i Julijanski
kalendar. Sa datumima sa samog početka nove ere treba da budeš još
oprezniji, jer je tada vladao haos sa kalendarima. Sa datumima od pre
nove ere... najbolje da ih i ne računaš :)
O svemu tome piše u rečenom tekstu.
pascal.315evlad,
-> #312, andrejt>> Mrzim reply na sopstvene porue ali jedno objasnjenje
>> doticna jmp ff... nece iz pascala (6.0) preko direktive
>> asm ...
Probaj:
Program Ctrl_Alt_Del;
Uses
Crt;
Var
Key : Char;
Procedure RESET;
Begin
(* Load Reset_Flag [0000:0472] with 1234H *)
Mem [$0000:$0472] := $34;
Mem [$0000:$0473] := $12;
(* JMP FFFF:0000 *)
InLine ($EA/$00/$00/$FF/$FF);
End;
Begin (* MAIN *)
ClrScr;
GotoXY(27,12);
Write ('Reboot System Now <Y/N> ?');
Key := ReadKey;
if UpCase(Key) = 'Y' then RESET;
ClrScr;
Write('Have a nice day.');
end. (* MAIN *)
Kod mene radi.
pascal.316omega,
-> #314, dejanrŢ PS Procedure mozes bezbedno koristititi za "razumne" datume iz prethodnih
Ţ par vekova, ali treba da budes oprezan sa datumima od pre pet-sest
Kad smo vec kod toga, da li se zna kada je sve menjano vreme u ovom
veku? (Mislim na to sto je sada vremenska razlika izmedju nas i GMT 1
cas).
pascal.317andrejt,
-> #315, evlad__>>> Mrzim reply na sopstvene porue ali jedno objasnjenje
__>>> doticna jmp ff... nece iz pascala (6.0) preko direktive
__>>> asm ...
__>
__>Probaj:
__>
__>Program Ctrl_Alt_Del;
__> ...
Da radi.Ali sam u medjuvremenu i sam uspeo,
mislim makar malo jednostavnije (zbog asm ... end;
umesto inline(...);)
Dakle :
Var P : Pointer;
Begin
MemW[$42:$72] := $1234;
P := Ptr($FFFf,0);
ASM JMP P End;
End.
Hvala ipak.
pascal.318dejanr,
-> #316, omega>> Kad smo vec kod toga, da li se zna kada je sve menjano vreme u ovom
>> veku? (Mislim na to sto je sada vremenska razlika izmedju nas i GMT 1
>> cas).
Razlika je zbog toga što je London zapadnije od nas za jednu časovnu
zonu, a ne zato što su oni menjali vreme a mi nismo, ili obrnuto.
Istina je da se povremeno vreme pomeri za neku sekundu da bi se uskladilo
sa kretanjem nebeskih tela, ali to se radi sinhronizovano u čitavom svetu.
pascal.319omega,
-> #318, dejanrŢ Razlika je zbog toga sto je London zapadnije od nas za jednu casovnu
Ţ zonu, a ne zato sto su oni menjali vreme a mi nismo, ili obrnuto.
Ma to je ok, ali izgleda da ja nisam najbolje objasnio. Naime, mi
pomeramo vreme u martu i septembru za sat vremena. Ali da li to vazi/
da li je vazilo za njih uvek?
pascal.320evlad,
-> #317, andrejt>> Hvala ipak.
U svako doba, ako nesto treba moze ovde, moze mail. Sto znam, pomoci cu.
pascal.321dejanr,
-> #319, omega>> Ma to je ok, ali izgleda da ja nisam najbolje objasnio. Naime, mi
>> pomeramo vreme u martu i septembru za sat vremena. Ali da li to vazi/
>> da li je vazilo za njih uvek?
Uvek svakako nije, ali su to uveli pre nas. Međutim, za ovu raspravu je
to sasvim nebitno, pošto smo govorili o programu koji računa referentni
broj dana u okviru kalendara, dakle na primer koliko je dana prošlo
između 12. januara 1905 i 30. jula 1994. Tu su sati uglavnom nebitni.
pascal.323omega,
-> #321, dejanrŢ Uvek svakako nije, ali su to uveli pre nas.
Pa to me i zanima. Od kog do kog trenutka je postojala neuskladjenost
(aada valjda postoji - razlika je 1 cas)?
Ţ Medutim, za ovu raspravu je to sasvim nebitno,
Pa pitanje i nije vezano za raspravu, nego samo za sebe. Ja sam se
samo nadovezao.