cccc.1mzgrdja,
Pre neki dan sam dobio novi katalog Mikro knjige, kad ono u "novim izdanjima"
pise i Borland C++ Tehnike programiranja. Pise da obuhvata Turbo Vision, OWL
itd. Da li neko mozda zna neku slicnu knjigu za Visual C++ (bilo kakva, samo da
ima opis MFC-a za win.). Mozda Mikro knjiga ima u planu da prevede i neku
knjigu za Visual C++ ?
Pozdrav
cccc.2dragisha,
[Reply to PC.PROG.3/cccc:547 (.bale.)]
-> > -> Da li postoji neka fora da se definiše makro u okviru kog bi
-> > -> se labele definisao kao local, što bi eliminisalo multiple
-> > -> declaration problem ?
-> >
-> > Pa, ne bi trebalo da postoji:).
->
-> Postoji fora, i zove se ML - Macro Language, na primer. Što će reći,
-> malo jači makro-procesor od cpp-a.
Govori se o *kompajleru* i onome što isti podrazumijeva. To je naravno
cpp, ne ML.
--
[Ban the sale of arms to Venus de Milo]
cccc.3postmast,
From: ps26989d@buefhp.etf.uni-bg.yu (Pajic Srdjan)
Subject: Re: cccc
Date: Sat, 23 Apr 1994 11:57:50 GMT
Nikola Miljkovic (miljko@sezam.UUCP) wrote:
>> Mislim nesto sto ce da se proseta kroz heap i pogleda ko je sta
>>alocirao. ^^^^^^^^^^^^^^^^^
Kako to mislis 'da pogleda' ? Mozda gresim, al' heap je ulancana lista
u kojoj samo pisu velicine blokova (nisam se time mnogo bavio, al'
tako bar pise u K&R ).
Ako si samo trazio da vidis kolika je velicina kog bloka, dal' je prazan
i sl. , ne treba ti nikakva rutina - za to se pobrinuo sam Frenk Borland:
heapcheck proverava status heap-a
heapcheckfree proverava ima li na heap-u mesta za blok zadate duzine
heapchecknode proverava heap, nod po nod
heapwalk seta se po heap-u, nod po nod <-- verovatno si na ovo
mislio
Za format funkcija pogledaj u helpu.
P.S. Ovo od gore je prepisano iz fajla koji sam nedavno kucao - za svaku
funkciju po nekoliko reci, cisto kao podsecanje. Da ne bi vise lutao u
mraku & raspitivao se okolo, obrati se Maksi (maksa@sezam.yu) - njemu
sam dao receni fajl.
cccc.4.bale.,
ŮŢ-> Postoji fora, i zove se ML - Macro Language, na primer. Što će reći
ŮŢ-> malo jači makro-procesor od cpp-a.
ŮŢ
ŮŢ Govori se o *kompajleru* i onome što isti podrazumijeva. To je
ŮŢnaravno cpp, ne ML.
Well, ML bi rešio stvar sa labelama, a onda se može nastaviti sa cpp-om. cpp
nije kompajler :-)
Regards from .bale. !
#:*)+-<
cccc.5mmitrovic,
reply na prog.3 8.878
Ů█▀█Ţ neki hint (citaj source) za prikazivanje TTF fontova
žuo sam da knjiga sa opisom TTF fonta ima nekih 500njak
stranica, tako da sumnjam da je neko pisao source (ili da ga
uopšte ima). Ali ako se nađe neko takav, nek ga okači ovde,
pošto treba i meni.
cccc.6mmitrovic,
reply na prog.3 8.877
Ů█▀█Ţ Ima li neko source za prikazivanje GIF-a ?
Imam ga, ali je pisan u Cu. Koliko mi je poznato ti radiš u
pascalu, ali ako oćeš poslaću ga. Sve se kanim da ga prebacim
u pascal, al se uvek nađe nešto važnije za raditi.
cccc.7mmitrovic,
reply na prog.3 8.868
Ů█▀█Ţ Otvorena je grupa TVision
Šta bi, svi junaci nikom ponikoše ;)
cccc.8markom,
█*█ Imam ga, ali je pisan u Cu. Koliko mi je poznato ti radiš u
█*█ pascalu, ali ako oćeš poslaću ga. Sve se kanim da ga prebacim
█*█ u pascal, al se uvek nađe nešto važnije za raditi.
Ne bilo ti teško da mi ga baciš na mail :):)
cccc.9dragisha,
Subject: Re: cccc
-> Kako to mislis 'da pogleda' ? Mozda gresim, al' heap je ulancana lista
-> u kojoj samo pisu velicine blokova (nisam se time mnogo bavio, al'
-> tako bar pise u K&R ).
->
-> Ako si samo trazio da vidis kolika je velicina kog bloka, dal' je prazan
-> i sl. , ne treba ti nikakva rutina - za to se pobrinuo sam Frenk
-> Borland:
K&R algoritam (tj., onaj navedeni tamo) pamti podatke samo za slobodne
prostore, ne i za alocirane. Pri dealokaciji se radi maksimalno
ukrupnjavanje slobodnog prostora. (Ispravite me ako griješim, nije
isključeno jer sam to čitao '86. dok sam mislio da je C *TO*:)
--
[Whoever dies with the most toys... is still dead!]
cccc.10mjova,
> pise i Borland C++ Tehnike programiranja. Pise da obuhvata
> Turbo Vision, OWL itd. Da li neko mozda zna neku slicnu
> knjigu za Visual C++ (bilo kakva, samo da
ko je autor i koja je cifra?
cccc.11bulaja,
│ko je autor i koja je cifra?
└───
Naslov...: Borland C++
tehnike programiranja
Autor....: Kaare Christian
Izdavac..: ZD Press
Obim.....: 400 strana
Za cifru ne znam, pošto Mikro Knjiga još nije poslala obaveštenje o
pretplati, ali za očekivati je da cifra u pretplati bude do 35 din.
cccc.12dekiper,
Evo još malo podatako o knjizi. Cena u pretplati je 30 dinara (do 10.5.) ali
pošto sam se ja našao pametan i otišao tamo pre neki dan uleteo sam za 25
dinara ;)))). Inače cena u knjižarama (a i kod njih) će biti 40 dinara :(.
Kako kažu, knjiga je odlična. Mala ispravka za bulaju: knjiga ima 500 strana
Cifra od 400 je bila orijentaciona ali su se u toku prevođenja desile još neke
stvarčice pa će imati 500.
Pozdrav, Deki
cccc.13postmast,
From: ps26989d@buefhp.etf.uni-bg.yu (Pajic Srdjan)
Subject: Re: cccc
Date: Tue, 26 Apr 1994 16:47:41 GMT
>>Nazvao sam Mikro knjigu pre neki dan, orjentaciona cena (za pretplatu) je
>>25 - 30 ND. Jos nije izasla, planiraju je za sajam.
Najnovija informacija: BC++ 3.1 tehnike programiranja izlazi oko 15. maja,
pocelo je primanje pretplate, a cena u pretplati je 30 ndin.
cccc.14zsiz,
Pitanje kako u BC 2.0 u grafičkom modu, na određenom
mestu, dobiti da se ispiše vrednost neke promenljive.
Znači ne jednog određenog stringa nego vrednost
promenljivOvo pitam za nekog drugog.
Pozdrav.
cccc.15obren,
> Pitanje kako u BC 2.0 u grafičkom modu, na određenom mestu, dobiti da se
> ispiše vrednost neke promenljive. Znači ne jednog određenog stringa nego
> vrednost promenljive
Pomoću funkcije sprintf() "ispišeš" vrednost te promenljive u string,
umesto na ekran. Taj string će biti jednak onome što bi obično printf()
ispisalo na ekranu, pa ga možeš odštampati u grafici sa outtextxy().
cccc.16zsiz,
> Pomoću funkcije sprintf() "ispišeš" vrednost te promenljive u string,
Hvala. Preneću.
Pozdrav.
cccc.17markom,
█*█ Znači ne jednog određenog stringa nego vrednost
Pa konvertuj vrednost u string i taj string ispiši ...
cccc.18postmast,
From: ps26989d@buefhp.etf.uni-bg.yu (Pajic Srdjan)
Subject: Re: cccc
Date: Wed, 27 Apr 1994 19:59:48 GMT
Zdenko Sizgoric (zsiz@sezam.UUCP) wrote:
>>Znaci ne jednog odredenog stringa nego vrednost
>>promenljivOvo pitam za nekog drugog.
Upisi promenljivu u string (sprintf), pa onda outtextxy(..) na ekran.
cccc.19postmast,
From: glisin@fon (Ivan Glisin)
Subject: Re: cccc
Date: Wed, 27 Apr 1994 21:40:57 GMT
Zdenko Sizgoric (zsiz@sezam.UUCP) pise:
>> Pitanje kako u BC 2.0 u grafickom modu, na odredenom
>> mestu, dobiti da se ispise vrednost neke promenljive.
Samo posredno, preko stringa. Dakle, ako je potrebno ispisati recimo
vrednost nekih koordinata x i y u vrhu ekrana, moze se pisati:
char str[40];
sprintf (str, "x=%d, y=%d", x, y);
outtextxy (0, 0, str);
Funkcija 'sprintf' ce u string upisati isto ono sto bi 'printf' na ekran,
tako da je moguce uraditi sve sto i sa 'printf'.
cccc.20djdule,
=> Ů█▀█Ţ Ima li neko source za prikazivanje GIF-a ?
=>
=> Imam ga, ali je pisan u Cu. Koliko mi je poznato ti radiš u
=> pascalu, ali ako oćeš poslaću ga. Sve se kanim da ga prebacim
=> u pascal, al se uvek nađe nešto važnije za raditi.
Ostavi ga meni, treba mi. I ne moras da ga prebacijes posto radim u Cu.
cccc.21zsiz,
Hvala svima koji su odgovorili na pitanje u vezi sa
prikazivanjem vrednosti promenljive u grafičkom modu
na određenom položaju na ekranu.
Pozdrav.
cccc.22gpplanum,
Tek sam poceo da ucim C,a vec problem.
Krenuo sam sa nekim primerima iz Ritchie-ve knjige,i sad!
Primer treba da se zavrsi ako je getchar = EOF.Pitanje je:
Cemu treba da bude jednak getchar(tj.sta da unesem)da bi se
program zavrsio,tj. da bi moj znak bio jednak EOF-u?
Znam da je EOF=-1,ali koji je to char??
Pozdrav,gpplanum!
cccc.23postmast,
From: glisin@fon (Ivan Glisin)
Subject: Re: cccc
Date: Sat, 30 Apr 1994 20:33:14 GMT
Miladin Duricic (gpplanum@sezam.UUCP) pise:
>> Cemu treba da bude jednak getchar(tj.sta da unesem)da bi se
>> program zavrsio,tj. da bi moj znak bio jednak EOF-u?
Pa, standardni EOF na DOS-u je CTRL-Z a na UNIX-u CTRL-D.
Dakle, pokusaj za CTRL-Z ako radis na DOS-u, verovatno ce da
radi kako treba.
cccc.24postmast,
From: glisin@fon (Ivan Glisin)
Subject: Re: cccc
Date: Sat, 30 Apr 1994 20:36:33 GMT
Miladin Duricic (gpplanum@sezam.UUCP) pise:
>> Znam da je EOF=-1,ali koji je to char??
Eh da, nije EOF -1 nego getchar vrati -1 kada naidje na EOF ili
na problem prilikom unosenja znaka (ovo je obicno kod fajlova).
Eko je problem, 'errno' promenljiva se postavi i vrati se -1.
Ako je EOF vrati se -1 i 'errno' ne oznacava gresku.
cccc.25dekiper,
Znak za EOF je Ctrl-Z ili ako hoćeš prosto - pritisni F6 i Enter.
Pozdrav, Deki
cccc.26gpplanum,
Da,to je bilo to!Hvala svima!
Pozdrav,gpplanum!
cccc.27peca.st,
!-> Znam da je EOF=-1,ali koji je to char??
Ctrl-Z ili F6.
Peđa.
cccc.28ppekovic,
>> Primer treba da se zavrsi ako je getchar = EOF.Pitanje je:
>> Cemu treba da bude jednak getchar(tj.sta da unesem)da bi se
>> program zavrsio,tj. da bi moj znak bio jednak EOF-u?
Na DOS-u Ctrl-Z tj. 0x1A, na Unix-u Ctrl-D tj. 0x04.
Paya
cccc.29postmast,
From: glisin@fon (Ivan Glisin)
Subject: Re: cccc
Date: Sun, 1 May 1994 21:26:30 GMT
Pitanje: kako da napravim program na C-u kojim mogu da posaljem modemu
sekvencu koju ja hocu? Konkretno, crk'o mi je cip u telefonu, pa ne mogu
da biram brojeve. Telefon naravno radi i vezan je na red sa modemom, kako
treba. E sada: ja hocu da iz DOS-a kazem 'dial 123456' i on okrene 123456
i odmah zatim spusti slusalicu (ja u medjuvremenu dignem pa drzim vezu).
Da li ovo mora u C-u, ili moze i iz DOS-a, da se napravi neki BATCH pa da
se uradi redirekcija na COM1/2. Probao sam i nije islo. Mada, voleo bih da
vidim i resenje u C-u, mozda se pokaze kao zgodno za neku integraciju
imenika/adresara sa modemom.
cccc.30postmast,
From: glisin@fon (Ivan Glisin)
Subject: Re: cccc
Date: Sun, 1 May 1994 21:53:27 GMT
Ivan Glisin (glisin@fon) pise:
>> Da li ovo mora u C-u, ili moze i iz DOS-a, da se napravi neki BATCH pa da
>> se uradi redirekcija na COM1/2. Probao sam i nije islo.
Auto replika :-)))
Kada sam predao poruku setio sam se sta nisam uradio pa sam se sjurio
u DOS da probam i evo resenja za BATCH:
@echo off
mode com2: baud=2400 parity=n data=8 stop=1 retry=n
echo atx3l2dp%1 > com2
pause
echo ath > com2
Zaboravio sam samo MODE, nista vise, ccc... :-))) E, dakle pitanje:
isto ovo samo u C-u? Uopste, kako bi izgledao najminimalniji treminal,
to jest kako iz C-a komunicirati sa modemom u oba smera. Korisno bi
bilo ako bi mi neko rekao koje funkcije da pogledam. Imam BC++ 2.0.
Koji .h fajl sadrzi stvari koje me interesuju?
cccc.31sinfos,
pozdrav
moze li neko da mi kaze zasto mi ovaj program ne radi kako treba:
#include <stdio.h>
#include <utmp.h>
main()
{
struct utmp u;
printf("%s",u.ut_user,"\n");
printf("%s",u.ut_id,"\n");
printf("%s",u.ut_line,"\n")
}
kada ga pustim da mi
59
i to bez entera
niti dobijem u.ut_user, u.ut_id, u.ut_line :(
cu
ps: da, naravno da sam pocetnik...:)
cccc.32djelovic,
> Koji .h fajl sadrzi stvari koje me interesuju?
BIOS.H sadrži funkciju bioscom koja je tebi potreba. Takođe, uzmi datoteku
BCTI*.zip (BC technical info, ima na Sezamu, ne znam za FON), u toj arhivi bi
trebalo da postoji primer pravljenja komunikacionih programa.
Ukoliko te, pak, zanima profesionalna primena te želiš da uključiš i COM3
i COM4 kao i neke veće brzine prenosa, trebaće ti neka od krupnijih biblioteka
(ima u diru) ili lcomm iz starog PC.SOFT-a.
cccc.33dekiper,
Ne razumem šta očekuješ da se desi sa promenljivom u?
ti si u definisao kao : struct ..... u; (pišem online, ne znaŚm koja tačno)
Sada bi trebalo sa tom strukturom da se nešto desi međutim ti ćeš ovim
programom dobiti na ekranu vrednosti koje su se tog trebutka (pri
inicijalizaciji) zatekle u memoriji! Inače, sintaksno je OK, samo mi smisao
nije jasan!
Pozdrav, Deki
cccc.34.bale.,
> treba. E sada: ja hocu da iz DOS-a kazem 'dial 123456' i on okrene
> 123456
Kaži iz DOS-a "echo atdp123456 > comN" (N > 0).
cccc.35miljko,
>> printf("%s",u.ut_user,"\n");
>> printf("%s",u.ut_id,"\n");
>> printf("%s",u.ut_line,"\n")
Ovako neće ići - printf se koristi kao:
printf (format, lista_parametara)
s tim što format i lista parametara moraju da se slažu u broju i
tipu parametara. Konkretno ti si sa "%s" tražio ispis jednog stringa,
a posle si naveo dva u.ut_line i "\n". Zato ti je ponašanje
programa nepredvidjeno, jer si poremetio stek. Treba dakle:
printf ("%s\n", u.ut_user); ...
ili recimo:
printf ("%s%s", u.ut_user, "\n"); ...
cccc.36vitez.koja,
#=> printf("%s",u.ut_user,"\n");
Za početak, nagovestio si jedan argument u printf funkcijama, a prosleđuješ
dva... Treba da stoji
printf("%s\n", u.ut_user); ili printf("%s%s", u.ut_user, "\n");
cccc.37postmast,
From: smilic@breza (Sasa Milic)
Subject: Re: cccc
Date: Tue, 3 May 1994 15:41:56 GMT
Srdan Kosovac (sinfos@sezam.UUCP) je napisa-la/o:
: {
: struct utmp u;
: printf("%s",u.ut_user,"\n");
: printf("%s",u.ut_id,"\n");
: printf("%s",u.ut_line,"\n")
: }
: ps: da, naravno da sam pocetnik...:)
Ne radi jer u formatskom stringu dajes tip ( %s ) samo za prvi argument, a
u listi imas dva argumenta.
Ovako ce raditi:
printf ( "%s\n", u.ut_user );
printf ( "%s\n", u.ut_id );
printf ( "%s\n", u.ut_line );
a moze i ovako ( mada je bolji prvi nacin ):
printf ( "%s%s", u.ut_user, "\n" );
printf ( "%s%s", u.ut_id, "\n" );
printf ( "%s%s", u.ut_line, "\n" );
Usput, proveri i da li su polja ut_user, ut_id i ut_line tipa char*, a moras
i promenljivu u da inicijalizujes.
Sasa
p.s.
Ajd probaj pa ako jos imas problema javi se opet.
cccc.38sinfos,
Hvala svima, odoh da probam :)
cccc.39d.stamen,
>> treba. E sada: ja hocu da iz DOS-a kazem 'dial 123456' i on
>> okrene 123456
>
> Kazi iz DOS-a "echo atdp123456 > comN" (N > 0).
Delovalo mi je moguce pa probah ... I nista!!!
Jesi li siguran da to tako moze?
DS
cccc.40sinfos,
> Delovalo mi je moguce pa probah ... I nista!!!
Pa, verovatno ti ne radi jer ti je modem na com-u 3 ili na com-u 4?
pozdrav.
cccc.41markom,
█*█ Delovalo mi je moguce pa probah ... I nista!!!
Evo ti ono što si tražio. Ako ti modem nije na COM-u dva, javi mi na mail na
kojem je portu pa da ti pošaljem verziju za taj port (mrzelo me da mu pravim i
cfg fajl O:)
dial.zipcccc.42dcolak,
│ Pa, verovatno ti ne radi jer ti je modem na com-u 3 ili na com-u 4?
To nema nikakve veze sa COM portom. Provereno...
Imao sam i ja sličnih problema, negde u nekoj conf. piše rešenje,
ali mene mrzi da tražim, a i zaboravih ga :))
Elem ja stalno koristim ECHO ATH > COM4
Sledge DAMMIR!
cccc.43dcolak,
│ Evo ti ono što si tražio. Ako ti modem nije na COM-u dva, javi mi na mail
│ na kojem je portu pa da ti pošaljem verziju za taj port (mrzelo me da mu
│ pravim i cfg fajl O:)
Tz Tz Tz marko!
Šta beše ARGV ? :>>>>
Sledge DAMMIR!
cccc.44.bale.,
>Jesi li siguran da to tako moze?
Probaj da dodas mode komandu, kao sto je napisao iglisin.
Regards from .bale. !
#:*)+-<
cccc.45markom,
█*█ Šta beše ARGV ? :>>>>
ARGV ne beše ništa, ali argv znam šta je ;>
cccc.46dcolak,
│ █*█ Šta beše ARGV ? :>>>>
│
│ ARGV ne beše ništa, ali argv znam šta je ;>
Mali hint, može da bude i ArGuMeNT svejedno je :))
Sledge DAMMIR!
cccc.47danielm,
Hi,
ja sam presao sa pascala na c pre nedelju dana i nikako ne mogu da prevedem
na c onu rutinu cekanja da se top u monitoru popne u gornji levi ugao, koja
je bila u nekim bajtovima licne prirode:
repeat until (port[$3BA] and $80) = 0;
probao sam sa:
char *top = (char *)0x3ba;
a onda :
do {} while ( (*top && 0x80) == 0 );
ali ne ide.
Ako neko zna zasto ovo ne radi, (a i zna kako treba)
bio bih mu veoma zahvalan da odgovori.
Daniel
cccc.48maksa,
>> Ako neko zna zasto ovo ne radi, (a i zna kako treba)
>>
>> bio bih mu veoma zahvalan da odgovori.
Najbolje rešenje je, verovatno, inline assembler:
asm MOV DX,986;
a:
asm {
IN AL,DX;
TEST AL,8;
JZ a
}
b:
asm { IN AL,DX;
TEST AL,8;
JZ b
}
// ovde ide deo, tj. instrukcija koja crta
cccc.49maksa,
>> Najbolje re{enje je, verovatno, inline assembler:
Ispisano rešenje je za VGA, a pitanje bilo orijentisano
na herc, izvinjavam se.
cccc.50markom,
█*█ Mali hint, može da bude i ArGuMeNT svejedno je :))
Dobro ajde pobedio si :)
P.S. Kao parametar prima broj porta ...
dial.zipcccc.51d.stamen,
Evo opet ja!
Probao sam par varjanti i proradila je ona na koju sam najmanje
racunao- ECHO ATDPxxxxxx > COM3 !?!.
Ako bi neko bio ljubazan da mi kaze kako i zasto, jer mi je
modem podesen na COM4 i svi programi ga tako i kapiraju.
D.S
cccc.52dragann,
Za c programere sa osmeha:
Zasto naj obicnije "Hello world" nece da se linkje?
Osmeh $ cc p.c
/usr/lib/crt0.o: Undefined symbol __DYNAMIC referenced from text segment
/usr/lib/crt0.o: Undefined symbol __DYNAMIC referenced from text segment
/usr/lib/crt0.o: Undefined symbol __DYNAMIC referenced from text segment
cccc.53ognjen,
)-> Evo ti ono sto si trazio. Ako ti modem nije na COM-u dva,
)-> javi mi na mail na kojem je portu pa da ti posaljem verziju
)-> za taj port (mrzelo me da mu pravim i cfg fajl O:)
Mozes li da posaljes source?
cccc.54dzakic,
> Probao sam par varjanti i proradila je ona na koju sam najmanje
> racunao- ECHO ATDPxxxxxx > COM3 !?!.
> Ako bi neko bio ljubazan da mi kaze kako i zasto, jer mi je
> modem podesen na COM4 i svi programi ga tako i kapiraju.
Verovatno ti neću razjasniti misteriju do kraja, ali ovo znam:
U biosovom data segmentu (40h), od ofseta nula počinje niz od 4 word-a
u koje su upisane adrese portova od 1 do 4. Bios pri inicijalizaciji tu
upiše 3f8 i 2f8. Podaci o com3 i com4 najčešće ostanu nula pa zato bios
i većina programa koji podatke šalju preko biosa, odbija da radi sa
njima. Kod tebe je na neki način (?) adresa četvrtog porta upisana na
mesto trećeg pa se sada na com4 šalje tako što biosu kažeš da šalje na
treći (echo >com3).
Kažu da windowsi ne dozvoljavaju da postoji com4 ako com3 fizički ne
postoji (i kod mene je tako, com1 miš, com2 imam a ne koristim, com3 ne
postoji i na četvorci je modem). Zkehler je pisao o tome ovde, ali ja i
pored saveta nisam uspeo da nateram windowse da se ponašaju kako treba.
E, tu se dešava da adresa com4 sklizne na trojku, pa je to jedan od
mogućih uzroka. Preporučio bih ti da pogledaš programčić 'addport' koji
sam odavno skinuo sa sezama i koji omogućava da se pogleda šta piše u
tom bios delu, kao i da se upiše željena vrednost. Meni u autoexecu
stoji:
addport com3 3e8 > nul
addport com4 2e8 > nul
Pa na modem šaljem lepo sa echo atz >com4
Zak
cccc.55postmast,
From: ak@Osmeh.FON.Uni-BG.YU (Aleksandar Kircanski)
Subject: Re: cccc
Date: Sun, 8 May 1994 12:54:18 GMT
Damir Colak (dcolak@sezam.UUCP) wrote:
: To nema nikakve veze sa COM portom. Provereno...
: Imao sam i ja slicnih problema, negde u nekoj conf. pise resenje,
: ali mene mrzi da trazim, a i zaboravih ga :))
: Elem ja stalno koristim ECHO ATH > COM4
Ti koristis, a kod mene nece, a i nisam jedini :)
--
Aky - Kircanski Aleksandar aky@tesla.mcs.com
cccc.56postmast,
From: glisin@fon (Ivan Glisin)
Subject: Re: cccc
Date: Sun, 8 May 1994 13:29:42 GMT
Aleksandar Kircanski (ak@Osmeh.FON.Uni-BG.YU) pise:
>> Ti koristis, a kod mene nece, a i nisam jedini :)
Pa evo ga resenje koje ja trenutno koristim:
@echo off
mode com2: baud=2400 parity=n data=8 stop=1 retry=n > nul
echo Dialing...
echo atx3l3dp%1 > com2
pause > nul
echo ath > com2
to odradi stvar ovako: kazete dial 123456 i masina napise 'Dialing...'.
Ako vam je telefon ukljucen u modem tada dignete slusalicu, ali ne onda
pre nego sto krenete sa 'dial' batchom. Kada cujete da zvoni lupite ENTER
i modem vas vrati na telefon. Imam eksterni modem, ali mislim da to nista
ne menja, mada sam cuo da se desava da ovo nece sa internim. Ne znam zasto?
E sada: ja hocu ovo isto da izvedem na C-u! Dakle C verzija DIAL-a.
Seo bih sam da se igram i napisao bih to verovatno brzo, ali skoro da nemam
ni dan slobodan, pa zato pitam da li je neko to napravio pa da mi posalje
sto minimalniji primer da vidim fazone. Koliko vidim, svi junaci... :-(((
cccc.57zormi,
Instalirah i ja Borland C++ 4.0. Rezultat: 73 MB na hardu :(
Do sada sam držao i MSC i BC, ali ću izgleda morati da se opredelim
ili kupim CD.
cccc.58danielm,
> Ja ocu to u C - u !!!!
Ajd kad si navalio na C, da te zadovoljim.
Evo jednog mog starog programa (nije ceo ali tu je
funkcija za slanje stringa na port), koji uz 15 sekundi
moze da se preradi u sta oces.
Evo stize...
primer.ccccc.59asterix,
>> Ja ocu to u C - u !!!!
> ...
> Evo stize...
A kako misliš da Ivan Glišin download-uje tvoju datoteku ?
cccc.60markom,
*** Mozes li da posaljes source?
Samo da ga malo sredim i stiže ...
cccc.61markom,
*** Samo da ga malo sredim i stiže ...
Kao što obećah ...
dial.zipcccc.62mmitrovic,
Ů█▀█Ţ char *top = (char *)0x3ba;
Ů█▀█Ţ a onda :
Ů█▀█Ţ do šć while ( (*top && 0x80) == 0 );
Koliko mi se čini tebi treba vrednost sa porta, a ovde ucitavaš
bajt iz memorije. Osim toga zar nebi trebalo
while (uslov) <komanda> umesto
do <komanda> while (uslov)?
Pregledaj include fajlove pa nađi funkciju za uzimanje vrednosti
sa portova, ili nek ti je neko kaže, ja se ne sećam.
cccc.63zsiz,
Jedan kolega bi bio rad da programira video kartice.
Koje kartice i šta da programira nije rekao tačno.
Dali na Sezamu ima neki fajl gde piše nešto o
programiranju video kartica ili može li neko
da preporuči neku literaturu?
Mislim da je kolega pričao o grafici.
Pozdrav.
cccc.64danielm,
> Kako mislis da glisa download - uje tvoju datoteku?
Izvinjavam se, ali jos nisam upucen u sve tajne komunikacija,
Evo vam ga ovako ASCII :
#include<stdio.h>
#include<io.h>
#include<process.h>
#include<stdlib.h>
#include<dos.h>
#include<string.h>
union REGS reg;
int prt;
void init_port()
{
reg.h.ah = 0x00;
reg.h.al = 0xa3;
reg.x.dx = prt - 1;
int86(0x14, ®, ®);
}
int port_err()
{
reg.h.ah = 0x03;
reg.x.dx = prt - 1;
int86(0x14, ®, ®);
return (reg.h.ah & 0x01); /* 1 = READY */
}
char send_char(char ch)
{
do {
reg.h.ah = 0x01;
reg.h.al = ch;
reg.x.dx = prt - 1;
int86(0x14, ®, ®);
if (reg.h.ah == 0)
return (0);
} while (reg.h.ah & 0x80);
if ((reg.h.ah & 0x1e) == 0)
return (0);
return (reg.h.ah);
}
void send_str(char *ch)
{
while (*ch && !(send_char(*ch++)));
if (!(*ch))
send_char(0x0d);
else {
printf("Port write error.\n");
}
}
main()
{
char st[80];
printf("Type number of port where modem is hooked up (1 - 4) : ");
prt = getch() - 48;
printf("%d\n", prt);
if ((prt < 1) | (prt > 4)) {
printf("Can't be.\n");
exit(1);
}
init_port();
if (!port_err()) {
printf("Port error. Device is probably used by some other program.\n");
exit(1);
}
strcpy(st, "ATX3");
send_str(&st);
if (!port_err()) {
printf("Port error.\n");
exit(1);
}
strcpy(st, "ATDP648422");
send_str(&st);
if (!port_err()) {
printf("Port error.\n");
exit(1);
}
do {
} while (!getch());
strcpy(st, "ATH0");
send_str(&st);
}
Sorry ako je predugacko...
Inace u init_port je podeseno na N/8/1/2400.
Takodje sorry, jer sam poceo da radim u C-u tek pre par nedelja, pa mozda nije
sve bas C-ovski ( inace ovo sam ranije radio na pascalu, pa sam samo preveo na
C ).
Pozdrav,
Daniel
P.S. A da, TC prijavljuje par warninga (suspicious pointer convertion), ali
nema frke za to.
P.P.S. Ne verujem da ce odmah da proradi :)) Mora malo da se nabudzi.
cccc.65m.hristodulo,
>> Za c programere sa osmeha:
>> Zasto naj obicnije "Hello world" nece da se
>> linkje?
Zato što je administrator Osmeha u napadu
entuzijazma obrisao sve header (*.h) datoteke... U
iščekivanju reinstalacije operativnog sistema
koristim druge računare za kompajliranje programa...
--
m.hristodulo@sezam.yu
(Miroslav Hristodulo)
cccc.66postmast,
From: ps26989d@buefhp.etf.uni-bg.yu (Pajic Srdjan)
Subject: Re: cccc
Date: Wed, 11 May 1994 12:56:23 GMT
Zoran Milosavljevic (zormi@sezam.UUCP) wrote:
>>Instalirah i ja Borland C++ 4.0. Rezultat: 73 MB na hardu :(
Pa kad si instalirao bas sve. Razmisli, trebaju li ti dva command-line
kompajlera u okruzenju namenjenom za Windowse, pa svi moguci helpovi,
pa primeri, i jos ko zna sta sve ne...
>>Do sada sam drzao i MSC i BC, ali cu izgleda morati da se opredelim
>>ili kupim CD.
Sta, zar samo dva kompajlera??? Pa gde se dede GNU C, Watcom C, Zortek C...:)
Nemoj mi reci da programiras u oba???
cccc.67postmast,
From: glisin@fon (Ivan Glisin)
Subject: Re: cccc
Date: Wed, 11 May 1994 21:36:11 GMT
Nenad Vukobratovic (asterix@sezam.UUCP) pise:
>> >> Ja ocu to u C - u !!!!
>> > Evo stize...
>> A kako mislis da Ivan Glisin download-uje tvoju datoteku ?
Ispravna primedba :-)
Zamolio bih sve sa Sezama koji salju nesto u konferencije kao odgovor na
necije pitanje ko je van Sezama da sorsove ubacuju kao deo teksta jer su
vezane datoteke u binarnom formatu za poruke specificnost Sezam-a pa tako
ne mogu da budu poslate uz poruku na ostale mreze, posebno ne na internet.
cccc.68postmast,
From: smilic@breza (Sasa Milic)
Subject: Re: cccc
Date: Thu, 12 May 1994 12:17:03 GMT
Daniel Milosevic (danielm@sezam.UUCP) je napisa-la/o:
: repeat until (port[$3BA] and $80) = 0;
: probao sam sa:
: char *top = (char *)0x3ba;
: do {} while ( (*top && 0x80) == 0 );
Probaj ovo:
while ( inport ( 0x3ba ) & 0x80 );
Sasa
cccc.69moebius,
Dali iko ima disketu(ili njen sadrzaj) koja ide uz najnoviju knjigu u izdanju
Mikro knjige,BORLAND C++ TEHNIKE PROGRAMIRANJA od KAARE CRISTIAN.Ako ima
onda neka ostavi doticni zipic.:)
cccc.70zormi,
*>> Instalirah i ja Borland C++ 4.0. Rezultat: 73 MB na hardu :(
*
* Pa kad si instalirao bas sve. Razmisli, trebaju li ti dva command-line
* kompajlera u okruzenju namenjenom za Windowse, pa svi moguci helpovi,
* pa primeri, i jos ko zna sta sve ne...
Navika :). Instaliram prvo sve pa onda polako odbacujem šta mi ne treba
kad ponestane diska.
*>> Do sada sam drzao i MSC i BC, ali cu izgleda morati da se opredelim
*>> ili kupim CD.
*
* Sta, zar samo dva kompajlera??? Pa gde se dede GNU C, Watcom C, Zortek
* C...:) Nemoj mi reci da programiras u oba???
Vrlo si blizu i ako se šališ. ;)
Obično sam radio u BC jer brže prevodi i lakše se isprave greške, pa na
kraju prevedem u MSC koji je davao bolji kod, naravno kad se radi o ANSI
C-u bez extenzija i Windows-a. Doduše, skorije nisam proveravao.
Inače, radio sam u Zortech C++ pre jedno 4 godine kada je to bio jedini
C++, a meni je za analizu signala u komplexnom domenu bila potrebna
komplexna aritmetika. Obrisao sam ga pre par godina, mada ovaj novi
Symantec C++ (naslednik Zortech-a) mnogi hvale.
Takodje, koristio sam High C sa Phar Lap-om isto pre jedno 4 godine za
izradu 32-bitnih protected modula koji su se dodavali u Matlab 386 (takodje
jedini C sa kojim se to moglo), isto zarad obrade signala i isto obrisano
s diska pre par godina.
To čuveno brisanje nije preživeo ni C za TMS320C30 signal procesor koji
sam imao na kartici, ni Transputer C za one čuvene mikroprocesore u to
vreme kojih sam imao 4 kom. u paraleli isto na PC kartici (na njima je
radila lepša polovina moje porodice).
Eh, srećna vremena bavljenja naukom... :(
cccc.71dragann,
> Zato sto je administrator Osmeha u napadu
> entuzijazma obrisao sve header (*.h) datoteke... U
Ovo mi nije jasno. Problem je u linkovanju jer cc napravi .o fajl.
Osmeh $ cc -c p.c
Osmeh $ cc -l p.o
/usr/lib/crt0.o: Undefined symbol __DYNAMIC referenced from text segment
cccc.72sinfos,
>>/usr/lib/crt0.o: Undefined symbol __DYNAMIC referenced from text segment
Da, to se i meni uvek desi. Moze li neko da pojasni tu gresku?
cccc.73postmast,
From: glisin@fon (Ivan Glisin)
Subject: Re: cccc
Date: Fri, 13 May 1994 22:00:36 GMT
Daniel Milosevic (danielm@sezam.UUCP) pise:
>> Takodje sorry, jer sam poceo da radim u C-u tek pre par nedelja,
>> pa mozda nije sve bas C-ovski...
Huh! Ne da nije, nego se pitam zasto nisi odmah stvar napisao u asembleru?
Hocu reci, i ovako mi nista nije jasno: pozovi interapt, pozovi servis...
Zar to ne moze a da se ne vidi sve to? Ili je DOS toliko glup da to zaista
mora da se budzi sa int86, reg i slicnim stvarima?
cccc.74dekiper,
I ja sam skoro kupio istu knjigu. Super je, a najviše mi se sviđa što nije za
početnike već za one "malo" iskusnije! U knjizi je tempo žestok i što mi se
najviše sviđa ne teoretiše mnogo nego ide direktno gde treba! Svaka čast
autoru! (mada on ovo neće videti :(( )
Što se diskete tiče, biće za koji dan kako kažu u MK
Pozdrav, Deki
cccc.75driks,
PROBLEM:
Ovo dole bi trebalo da sa adrese f000:fff5 procita datum kreiranja BIOS-a.
- printf("%s",ptr_date) nece da radi.
- kod ispisa karaktera po karakter radi. ZASTO???
#include <stdio.h>
#include <dos.h>
main()
{ int i;
char far *ptr_date=(char far *)MK_FP(0xf000, 0xfff5);
printf("%s",ptr_date); /* NERADI */
for (i=0; i<=8; i++)
printf("%c",ptr_date[i]); /* RADI */
}
cccc.76djelovic,
> - printf("%s",ptr_date) nece da radi.
> - kod ispisa karaktera po karakter radi. ZASTO???
String ptr_date nema nulu na kraju, tj. ima neku proizvoljnu dužinu.
Verovatno je predugačak za printf, ili bi ti ovaj izbacio string ptr_date i
neko djubre posle.
Umesto:
> char far *ptr_date=(char far *)MK_FP(0xf000, 0xfff5);
probaj ovako:
char far *tmp=(char far *)MK_FP(0xf000, 0xfff5);
char ptr_date [10];
strncmp (ptr_date, tmp, 9);
ptr_date [9] = 0;
printf ("%s", ptr_date);
cccc.77driks,
>>
>> String ptr_date nema nulu na kraju, tj. ima neku proizvoljnu
>> duzinu. Verovatno je predugacak za printf, ili bi ti ovaj
>> izbacio string ptr_date i neko djubre posle.
Pogledao sam preko Inspect-a datum na adr. f000:fff5 se zavrsava
terminatorom '\0'.
Nego meni printf("%s", ptr_date) uvek izbacuje samo jedan
karakter i to ascii(0xf0) bez ikakvog djubreta.
>> probaj ovako:
>>
>> char far *tmp=(char far *)MK_FP(0xf000, 0xfff5);
>> char ptr_date [10];
>>
>> strncmpy (ptr_date, tmp, 9);
>> ptr_date [9] = 0;
>>
>> printf ("%s", ptr_date);
Ovo radi, ali meni bode oci ono gore.
cccc.78danielm,
> Huh! Ne da nije, nego se pitam zasto nisi odmah stvar napisao u asembleru?
Imam dva razloga:
1. Covek je to trazio u C-u.
2. Jedini asembler koji sam ikada koristio je DOS-ov DEBUG, a sa ostalima ne
znam da radim ( a i nemam ih ).
Pozdrav,
Daniel
cccc.80zzivotic,
>> Nego meni printf("%s", ptr_date) uvek izbacuje samo jedan
>> karakter i to ascii(0xf0) bez ikakvog djubreta.
Zavisi od modela u kome prevedeš program - verovatno si izabrao small,
probaj large i radiće. Printf funkcija nema proveru parametara pa ih
kompajler gura na stek 'onakve kakvi su'. U ovom slučaju na stek ode
far pointer, a printf iz small modela na %s očekuje near pointer.
Ako koristiš MSC možeš koristi i small model ali tada treba pisati:
printf("%Fs", ptr_date);
Pozdrav, zz
cccc.81srdjan.j,
==>> Huh! Ne da nije, nego se pitam zasto nisi odmah stvar
==> napisao u asembleru?
==>
==> Imam dva razloga:
==>
==> 1. Covek je to trazio u C-u.
==> 2. Jedini asembler koji sam ikada koristio je DOS-ov DEBUG, a
==> sa ostalima ne znam da radim ( a i nemam ih ).
Smatram da je najelegantnije rešenje neki C++ i njegov interni asembler.
Povremeno nešto napišem u asembleru i to je uvek u okviru C programa. žak
i neznam da koristim TASM.
Srđan.
cccc.82dtadic,
Da li neko ima iskustva sa linkovanjem "user defined" fontova u
Turbo C-u 2.0?
Kolega me je zamolio za pomoć jer mu installuserfont stalno vraća
vrednost manju od nule, iako je uradio sledeće:
1. Konverziju .CHR --> .OBJ je uradio koristeći BGIOBJ /F.
2. Umesto registerbgifont koristi registerfarbgifont.
3. Koristi large model.
4. U graphics.h je u font_names dodao svoje fontove, a na kraju
datoteke je dodao:
void _Cdecl myf1_font(void);
void _Cdecl myf2_font(void);
extern int far _Cdecl myf1_font_far[];
extern int far _Cdecl myf2_font_far[];
Da li je nešto izostavio?
Hvala unapred.
cccc.83postmast,
From: ps26989d@buefhp.etf.uni-bg.yu (Pajic Srdjan)
Subject: Re: cccc
Date: Tue, 17 May 1994 15:57:56 GMT
Zoran Milosavljevic (zormi@sezam.UUCP) wrote:
>>* Sta, zar samo dva kompajlera??? Pa gde se dede GNU C, Watcom C, Zortek
>>* C...:) Nemoj mi reci da programiras u oba???
>>Vrlo si blizu i ako se salis. ;)
Nikad vise, majke mi ;) Svaka cast, majstore!!
>>Inace, radio sam u Zortech C++ pre jedno 4 godine kada je to bio jedini
>>C++, a meni je za analizu signala u komplexnom domenu bila potrebna
>>komplexna aritmetika. Obrisao sam ga pre par godina, mada ovaj novi
>>Symantec C++ (naslednik Zortech-a) mnogi hvale.
Pre godinu i nesto sam video (u nekom PC Magazinu) reklamu za pomenuti
Symantec C++. Stvar na slici je radila pod WIN 3.1 (ne secam se sta je
pisalo za DOS) i izgledala vrlo masno. U reklami je pisalo da je napravljen
'za ljude koji rade pod BC++, MSC'. Posto pucaju na visoko, trebalo bi
da je dobar. Valjda nije, sto rek'o Maksa, 'ko plavusa: all looks, no
brain' ;))))
cccc.84postmast,
From: ps26989d@buefhp.etf.uni-bg.yu (Pajic Srdjan)
Subject: Re: cccc
Date: Tue, 17 May 1994 16:05:56 GMT
Dejan Pervulov (dekiper@sezam.UUCP) wrote:
>>I ja sam skoro kupio istu knjigu. Super je, a najvise mi se svida sto nije za
>>pocetnike vec za one "malo" iskusnije! U knjizi je tempo zestok i sto mi se
Ma da al' problem je u sledecem: na pocetku je kratki pregled C++ - a.
Pocetnici tu nemaju sta da traze, a oni "malo" iskusniji to ionako znaju.
Mislim da je tu autor trebao da se odluci za koga pise. Ostatak je OK.
cccc.85zormi,
* Symantec C++. Stvar na slici je radila pod WIN 3.1 (ne secam se sta je
* pisalo za DOS) i izgledala vrlo masno. U reklami je pisalo da je napravljen
* 'za ljude koji rade pod BC++, MSC'. Posto pucaju na visoko, trebalo bi
* da je dobar.
Stigao je u Beograd, kolega mi nudio ali nemam tolike diskete :(, pa ako
je neko probao neka dojavi utiske...
cccc.86dekiper,
Pa, što se mene tiče, odgovara mi! Mislim da onaj uvod i nije toliko bitan, ali
ne smeta :)) Mislim da se autor odlučio da knjiga bude samo za iskusne, ali je
napomenuto da je "za one koji ZNAJU C ali su POžETNICI u C++-u".
Pozdrav, Deki
cccc.87alkos,
Da li je neko linkovao sa C-om asemblerske module koji koriste
protected mode ili ima neko uputstvo?
Ljubeznom pomagaču sledi nagrada u vidu poluprovodničkog
elementa zvanog LED dioda. :) Primopredaja u klubu programera.
cccc.88zloboleon,
ňňň Ljubeznom pomagaču sledi nagrada u vidu poluprovodničkog
ňňň elementa zvanog LED dioda.
!!!!!!!!!!
Interesantno, ajde da ne budem cepidlaka, ali zar je LED != Light Emiting Diod
?!? Znači, ono '... dioda' je suvišno ;).
cccc.90postmast,
Subject: Cccc
Date: Wed, 18 May 1994 04:52:00
DM> repeat until (port[$3BA] and $80) = 0;
while (! inportb (0x3BA) & 0x80);
DELTA 99 [ /\ DeLtA TeaM ]
990709060:In case of doubt, make it sound convincing.
* Origin: PC Plus BBS, Beograd;+381-11-340-227;SETNet: (38:103/106)
cccc.91postmast,
From: ps26989d@buefhp.etf.uni-bg.yu (Pajic Srdjan)
Subject: Re: cccc
Date: Thu, 19 May 1994 12:45:01 GMT
Zoran Milosavljevic (zormi@sezam.UUCP) wrote:
>>Stigao je u Beograd, kolega mi nudio ali nemam tolike diskete :(, pa ako
>>je neko probao neka dojavi utiske... ^^^^^^^
Nije valjda vise nego za BC i MSC?? Kuku, gde ide ovaj svet :(
cccc.92postmast,
Subject: If...else
Date: Sat, 14 May 1994 01:51:00
VV>Ja sam u pocetku nazubljivao isto kao ti. I kad smo vec kod
VV>citljivosti ovaj nacin trosi manje redova i na ekranu je vidljivo
VV>vise koda. Prema tome sve ima svoje. Inace na ovakvo nazubljivanje
VV>sam presao kada sam video da ga jako puno ljudi koristi.
Da, vidis, u pravu si. Mnogo ljudi ga koristi, i sto je nazjzanimljivije,
ti ljudi nisu amateri. Cudno, to mi nikada nece biti jasno. Jeste da tvoj
nacin nazubljivanja trosi manje redova na ekranu (ceo jedan red), ali zato
gubis na preglednosti. Jeste da imam VRLO mali disk, ali nisam bas u tako
losoj situaciji da moram da stedim jedan ili dva NewLine karaktera.
Uostalom, cesto ubacujem i po neki prazan red (da bi odvojio logicke
celine). BTW, na Fon File Server-u imas programcic koji se zove INDENT i
sluzi za ulepsavanje C source-va. Moze se konfigurisati po zelji.
___
■ OLX 2.1 TD ■ If a program is useless, it will have to be documented.
* Origin: [New Age BBS]*[Beograd]*[+38-11-404-639]*[23-06] (38:103/110)
cccc.93postmast,
Subject: Re: TurboC i Clipper
Date: Thu, 19 May 1994 10:59:00
-=> Predrag Supurovic je lupio/la -=>
PS> Da li neko moze da objasni kako se povezuju TurboC i Clipper?
PS> Da li se to moze? Znam da za MSC-om radi.
PS>
Prosto.. Napravis OBJ fajl u c-u i iz Clipper programa
pozoves funkciju sa CALL i to je sve. Sad, tu imaju neke
zackoljice oko registara, parametara ali su uglavnom lako
resive.
Zak McKracken 38:101/101@SetNet.Oreska
... RAM = Rarely Adequate Memory
* Origin: Oreska BBS, UZICE = SF BIBLIOTEKA = SETNet: (38:101/101)
cccc.94postmast,
Subject: Re: TurboC i Clipper
Date: Fri, 20 May 1994 18:41:06
> PS> Da li neko moze da objasni kako se povezuju TurboC i Clipper?
> Prosto.. Napravis OBJ fajl u c-u i iz Clipper programa
> pozoves funkciju sa CALL i to je sve. Sad, tu imaju neke
Da li si ti to probao ili pricas napamet? Koliko znam postoje neke
nekompatibilnosti u nazivima funkcija u TurboC i MSC, pa posto je
Clipper pisan u MSC to ne ide bas jednostavno.
broker
* Origin: Oreska BBS, UZICE = SF BIBLIOTEKA = SETNet: (38:101/101)
cccc.95postmast,
Subject: If...else
Date: Sat, 21 May 1994 09:40:00
GT> Da, vidis, u pravu si. Mnogo ljudi ga koristi, i sto je nazjzanimljivije,
> ti ljudi nisu amateri. Cudno, to mi nikada nece biti jasno. Jeste da tvoj
> nacin nazubljivanja trosi manje redova na ekranu (ceo jedan red), ali zato
> gubis na preglednosti. Jeste da imam VRLO mali disk, ali nisam bas u tako
> losoj situaciji da moram da stedim jedan ili dva NewLine karaktera.
> Uostalom, cesto ubacujem i po neki prazan red (da bi odvojio logicke
> celine).
Kako jedan red? Koliko struktura otvorim toliko redova. Redove ne
stedim radi diska vec radi PREGLEDNOSTI. Na jednoj strani gubim na
njoj ali po mom misljenju ne mnogo, a s druge strane vidim vise koda
na ekranu, pa mi je preglednije. Kad analiziram kod manje koristim
strelice gore-dole. Kao sto rekoh sve ima svoje.
-- SPEED 1.30 [NR]: Covek je necenzurisan majmun. (Neposlusni bumerang)
* Origin: Oreska BBS, UZICE = SF BIBLIOTEKA = SETNet: (38:101/101)
cccc.96dejanr,
>> Prosto.. Napravis OBJ fajl u c-u i iz Clipper programa
>> pozoves funkciju sa CALL i to je sve. Sad, tu imaju neke
Neće ići...
Meni je samo uspelo povezivanje Clipper-a sa Microsoft C-om, i to čini mi
se da je morala da se koristi isključivo verzija 5.1. Nije mi poznato
da je iko uspeo da poveže Clipper i Turbo C, mnogo se razlikuju biblioteke.
Inače, odavno sam se "pomirio" da sve što mi treba od potprograma uradim u
asembleru, i onda bar nema problema sa povezivanjem... osim povremeno ;(
cccc.97.ken.,
> Nece ici...
>
> Meni je samo uspelo povezivanje Clipper-a sa Microsoft C-om, i
> to cini mi se da je morala da se koristi iskljucivo verzija
> 5.1. Nije mi poznato da je iko uspeo da poveze Clipper i Turbo
> C, mnogo se razlikuju biblioteke.
Mislim da je BBS Infox (Sombor 025-28-228) napisan bas u vezi
Clipper - Turbo C (nisam bas siguran ???).
Negde sam vidjao i neke primere za povezivanje. Nesto sam i
pokupio sa samog Infox-a.
cliptc.arjcccc.98mmitrovic,
Ů█▀█Ţ nekompatibilnosti u nazivima funkcija u TurboC i MSC, pa posto je
Ů█▀█Ţ Clipper pisan u MSC to ne ide bas jednostavno.
Problem je u _ znaku na pocetku imena funkcija.
Clipper ih valjda zahteva, a TC ih ne stavlja automatski,
već mora da se dodaju, ili da se uključi neki switch pri prevođenju.
Probajte nešto, ja sam već zaboravio šta sam radio.
cccc.99markom,
*** Clipper ih valjda zahteva, a TC ih ne stavlja automatski,
*** već mora da se dodaju, ili da se uključi neki switch pri prevođenju.
U BC 3.1 postoji opcija GENERATE UNDERBARS, možda je to rešenje ?
cccc.100postmast,
From: sladjan@fon (Sladjan Babarogic)
Subject: Re: TurboC i Clipper
Date: Wed, 25 May 1994 14:20:48 GMT
Predrag Supurovic (broker@infosys.setnet.co.yu) wrote:
: > PS> Da li neko moze da objasni kako se povezuju TurboC i Clipper?
Pre godinu dana moj drug je imao isti problem.
Aplikaciju je radio na Summer87 Clipper-u a pozivala je C funkcije
pisane u TC-u. Posle nekoliko desetina pokusaja povezivanja odustali smo.
Posle sam cuo da je povezivanje moguce ako se radi o Clipper-u 5.x i MSC.
Probaj pa sta bude. Posle javi da znamo da li moze.
-----
Sladjan Babarogic, student, FON E-mail: sladjan@fon.fon.uni-bg.yu
sladjan@labis.fon.uni-bg.yu
cccc.101markom,
I need help O:))
Elem, u Pascalu je moguće definisati promenljivu na tačno određenoj adresi, na
primer na B000h:8000h, da li je moguće ovako nešto u C-u ?
I još nešto, da li u C-u postoji funkcija kao Ptr u Pascalu ?
Ako je već bilo, bacite pointer na poruku, tnx unapred :)
cccc.102dcolak,
│ Elem, u Pascalu je moguće definisati promenljivu na tačno određenoj adresi,
│ na primer na B000h:8000h, da li je moguće ovako nešto u C-u ?
Promeljivu na datoj adresi? Pa uzmeš pointer koji pokazuje na tu
adresu, i posle tu adresu puniš podacima, dakle promenjljiva na
željenoj adresi..
│ I još nešto, da li u C-u postoji funkcija kao Ptr u Pascalu ?
Hm, Ptr mu dođe, koliko se sećam pointer na bilo šta? Šta će ti to
u C-u, pored lepih castinga i ostalih zezalica ;)
Šta misliš o void *hello; :)
Sledge DAMMIR!
cccc.103markom,
*** Promeljivu na datoj adresi? Pa uzmeš pointer koji pokazuje na tu
*** adresu, i posle tu adresu puniš podacima, dakle promenjljiva na
*** željenoj adresi..
Ne, ne, ne, ako napišem:
int *a;
a=0x1F;
Koliko ja znam, adresa a će ukazivati na DS:1Fh, right? E, a meni treba, recimo
promenljiva na adresi B000h:8000h ...
*** Hm, Ptr mu dođe, koliko se sećam pointer na bilo šta? Šta će ti to
*** u C-u, pored lepih castinga i ostalih zezalica ;)
Ne, Ptr je funkcija, koja daje vrednost pointeru, na primer posle
a:=Ptr($B000,$8000),
a će pokazivati na B000h:8000h ...
Nadam se da sam sad bio jasniji :)
cccc.104dvesic,
>> Aplikaciju je radio na Summer87 Clipper-u a pozivala je C
>> funkcije pisane u TC-u. Posle nekoliko desetina pokusaja
>> povezivanja odustali smo.
I bolje ! U svojim mladim danima sam se bavio povezivanjem
Clipper-a (prvo S'87, pa 5.01) sa Turbo C 2.0.
Elem, najveci problemi su :
- (ne)sdtandardni format OBJ fajla koji generise TC
- startup kod koji se (ne)moze skroz iskljuciti
- problemi oko nekih inicijalizacionih rutina u CL.LIB
Mada je povezivanje moguce (i to preko kompajliranja u ASM,
rucnog ciscenja -> TASM) savetujem da se manete istog.
Jednostavno, uzmite C 5.1 (ja radim sa C 6.0), kompajlirajte
sa
CL /c /AL /FPa /Gs Modul.C
i nema glava da vas boli :)
Prilikom linkovanja dodajte LLIBCA kao eksternu bibloteku.
Obratite paznju da prvi OBJ fajl u nizu za linkovanje mora
biti generisan CLIPPER kompajlerom; tek za njim stavite
C i ASM module.
Kako RTLINK sve ovakve module smesta u ROOT sekciju (tj.
van dinamickih overleja) preporucujuem Blinker ako ima
dosta ovih modula.
Pozdrav,
Dejan.
cccc.105vmisev,
> Elem, u Pascalu je moguće definisati promenljivu na tačno određenoj adre-
> si, na primer na B000h:8000h, da li je moguće ovako nešto u C-u ?
Aha. Treba ti jedno pokazalo na tu adresu, pa trpaš tamo šta ti treba.
Samo pazi na tip i nema probalema.
Vladimir
cccc.106srdjan.j,
==> Elem, u Pascalu je moguće definisati promenljivu na tačno
==> određenoj adresi, na primer na B000h:8000h, da li je moguće
==> ovako nešto u C-u ?
Npr. koristi ovako nešto:
....
char far * flegovi;
flegovi = ( char * ) MK_FP( 0, 0x417 );
...
/* ovde koristiš flegove */
if ( *flegovi & ....
Srđan.
cccc.107mmitrovic,
Ů█▀█Ţ Hm, Ptr mu dođe, koliko se sećam pointer na bilo šta? Šta će ti to
Ů█▀█Ţ u C-u, pored lepih castinga i ostalih zezalica ;)
Nije na to mislio, to je funkcija Addr ili operator č (majm.znak)
mislio je na:
procedure Ptr(Seg,Ofs:Word):Pointer;
to se u Cu valjda radi dodeljivanjem ULong-a pointeru.
cccc.108srdjan.j,
==> mislio je na:
==> procedure Ptr(Seg,Ofs:Word):Pointer;
==>
==> to se u Cu valjda radi dodeljivanjem ULong-a pointeru.
==>
Ili makroom MK_FP.
Srđan.
cccc.109dcolak,
│ int *a;
│ a=0x1F;
│
│ Koliko ja znam, adresa a će ukazivati na DS:1Fh, right? E, a meni treba,
│ recimo promenljiva na adresi B000h:8000h ...
Ah, pa tebi treba:
int FAR *scrn = (int FAR *)0xb8000000L;
Right? :)
Sledge DAMMIR!
cccc.110vitez.koja,
#=> Elem, u Pascalu je moguće definisati promenljivu na
#=> tačno određenoj adresi, na primer na B000h:8000h, da li
#=> je moguće ovako nešto u C-u ?
Postoji makro u dos.h koji radi to što ti treba. Npr.
void *p; p=MK_FP(0xB000, 0x8000);
Pomenuti makro postoji u Borland Cu. Kod Microsoft Ca dovoljna je
i naredba dodele.
cccc.111goxx,
■ Meni je samo uspelo povezivanje Clipper-a sa Microsoft C-om, i to čini mi
■ se da je morala da se koristi isključivo verzija 5.1. Nije mi poznato
■ da je iko uspeo da poveže Clipper i Turbo C, mnogo se razlikuju biblioteke.
Koristio sam za par funkcija Turbo C 2.0 (za MS C mora 5.1 i više).
Treba da se kompajlira u large modelu, linkuje sa cl.lib. Ne sećam se da
sam nešto vodio računa o '_' karakteru ispred imena (čak sam ga koristio
za početak imena), mada izgleda da ima neka caka (Microsoft f-je imaju u
biblioteci jedan underscore ispred imena). RTLink mi je javljao u nekom
slučaju da je funkcija __doserrno duplo definisana, ali je sve radilo
OK. Nisam previše "čačkao" C,ali verovatno mogu da se koriste i funkcije
iz C biblioteke u clipper programima. "Jedino" ograničenje u korišćenju
Turbo C-a su float brojevi jer ih on beleži u drugom formatu, a MS
valjda koristi neki IEEE standard.
Ako bude veće interesovanje za ovu temu vezivanja Clipper-C mogu da
pogledam malo više o tome. Imam neku knjigu za povezivanje clipper-a 87
i C-a, ali u načelu to je isto. Dobri su i primeri iz nanfor biblioteke
(neko je skoro o ovom pisao u temi clipper), naročito zbog nekih
nedokumentovanih funkcija iz clipper-a.
Goran
cccc.112smarkov,
> Ne, Ptr je funkcija, koja daje vrednost pointeru, na primer posle
> a:=Ptr($B000,$8000),
> a će pokazivati na B000h:8000h ...
>
je ekvivalentno sa ...
#include <dos.h>
int __far *a; /* Model nezavisno */
FP_SEG(a)=0xb000; /* Msc */
FP_OFF(a)=0x8000;
a = MK_FP(0xb000, 0x8000); /* Turbo C */
cccc.113postmast,
From: smilic@breza (Sasa Milic)
Subject: Re: cccc
Date: Fri, 27 May 1994 13:30:16 GMT
Marko Milivojevic (markom@sezam.UUCP) je napisa-la/o:
: *** Clipper ih valjda zahteva, a TC ih ne stavlja automatski,
: *** vec mora da se dodaju, ili da se ukljuci neki switch pri prevodenju.
: U BC 3.1 postoji opcija GENERATE UNDERBARS, mozda je to resenje ?
Za koriscenje standardnih biblioteka C-a, MORA SE UKLJUCITI
GENERATE UNDERBARS, jer funkcije u bibliotekama imaju ispred
imena _. Inace, ova opcija postoji ne samo u BC 3.1, vec i u
svim prethodnim, pocev jos od Turbo C-a.
--
\_\_\_\_\_ \_ \_
\_ \_ \_\_ \_\_ Sasa Milic
\_ \_ \_ \_ \_
\_\_\_\_\_ \_ \_ \_ smilic@fon.fon.uni-bg.yu
\_ \_ \_ smilic@breza.fon.uni-bg.yu
\_ \_ \_ \_
\_\_\_\_\_ \_ \_
cccc.114postmast,
From: smilic@breza (Sasa Milic)
Subject: operator[]
Date: Fri, 27 May 1994 14:55:18 GMT
Problemcic na GNU C++u !!! Proverite ovaj program. Kompajler uvek
poziva drugu funkciju !!! Ako izbacim '= 0' program i ne moze da se
prevede. Da li neko zna u cemu je problem i da li moze da proba kako
se ponasaju Borland C++ i MSC++ ?
#include <iostream.h>
struct a {
void operator [] ( int i, char p[] = 0 )
{ cout << "prva funkcija" << endl; }
void operator [] ( char s[], char p[] = 0 )
{ cout << "druga funkcija" << endl; }
};
main ()
{
a a1;
a1[ 1, "a" ];
a1[ "qwerty", "b" ];
}
--
\_\_\_\_\_ \_ \_
\_ \_ \_\_ \_\_ Sasa Milic
\_ \_ \_ \_ \_
\_\_\_\_\_ \_ \_ \_ smilic@fon.fon.uni-bg.yu
\_ \_ \_ smilic@breza.fon.uni-bg.yu
\_ \_ \_ \_
\_\_\_\_\_ \_ \_
cccc.115postmast,
From: Goran.Turudich@f110.n103.z38.setgate.setnet.co.yu (Goran Turudich)
Subject: If...else
Date: Tue, 24 May 1994 23:44:02
Ja rekao:
GT> ti ljudi nisu amateri. Cudno, to mi nikada nece biti jasno. Jeste da tvoj
GT> nacin nazubljivanja trosi manje redova na ekranu (ceo jedan red), ali zato
GT> gubis na preglednosti.
A Vinko Velinov odgovorio:
VV>Kako jedan red? Koliko struktura otvorim toliko redova. Redove ne
VV>stedim radi diska vec radi PREGLEDNOSTI.
VV>vidim vise koda na ekranu, pa mi je preglednije.
VV>Kad analiziram kod manje koristim strelice gore-dole.
Ocigledno je da mi pod PREGLEDNOSCU ne podrazumevamo iste stvari. Po tebi
se preglednost meri brojem linija koda na ekranu. Po meni preglednost nije
kvantitativna, vec kvalitativna velicina. Broj linija na ekranu mi ne znaci
mnogo koliko mi znaci citljivost istog.
Primeti samo razliku izmedju sledeca dva koda koja isto rade:
for (int i=0;i<AuxPointer->SubMenuNum;i++) {
Locate(y,x);
TextAttr(T_BOLD);
printf("%-3s ",AuxPointer->SubMenu[i]->Start);
TextAttr(T_NORMAL);
printf("%s",AuxPointer->SubMenu[i]->Name);
if (AuxPointer->SubMenu[i]->NewLine) {
x=10;
for (int j=0;j<AuxPointer->SubMenu[i]->NewLine;j++)
y++;
} else {
if (x==10)
x=41;
else {
x=10;
y++;
}
}
}
for (int i = 0; i < AuxPointer->SubMenuNum; i++)
{
Locate (y, x);
TextAttr (T_BOLD);
printf ("%-3s ", AuxPointer->SubMenu[i]->Start);
TextAttr (T_NORMAL);
printf ("%s", AuxPointer->SubMenu[i]->Name);
if (AuxPointer->SubMenu[i]->NewLine)
{
x = 10;
for (int j = 0; j < AuxPointer->SubMenu[i]->NewLine; j ++)
y ++;
}
else
{
if (x == 10)
x = 41;
else
{
x = 10;
y++;
}
}
}
Obrati paznju samo na FOR strukturu. Ako iza nje, u istom redu otvoris
blok, oci ces izgubiti dok utvrdis da li se u petlji ponavlja samo sledeca
ili sve navedene naredbe. Kod IF...THEN...ELSE je isto lako zagubiti se ako
koristis prvi nacin pisanja. Naravno, sve je stvar navike. Ali, ne znam
kako to objasniti coveku koji mora da odrzava tako napisan program :(((
A, sto se tice upotrebe strelica gore-dole, pa, postoje i PgUp i PgDn :)))
___
■ OLX 2.1 TD ■ Don't force it - get a bigger hammer.
* Origin: [New Age BBS]*[Beograd]*[+38-11-404-639]*[23-06] (38:103/110)
cccc.116djelovic,
> void operator [] ( int i, char p[] = 0 )
> { cout << "prva funkcija" << endl; }
>
> void operator [] ( char s[], char p[] = 0 )
> { cout << "druga funkcija" << endl; }
žudi me da i ovo uspeva da prevede: operator [] po predlogu ANSI C++
standarda sme da primi samo jedan parametar. Konstrukcije tipa a [1, 2] nisu
dozvoljene, piše se a [1][2].
cccc.117markom,
*** Nije na to mislio, to je funkcija Addr ili operator č (majm.znak)
Ne, ne, ne, monkey i Addr, vraćaju samo adresu promenljive u DS-u (C: &a), a
ono 'void *a' je isto kao 'a:pointer' ...
*** to se u Cu valjda radi dodeljivanjem ULong-a pointeru.
Daj mi neki primer, ili pointer na help, tako nešto ...
cccc.118markom,
*** Aha. Treba ti jedno pokazalo na tu adresu, pa trpaš tamo šta ti treba.
*** Samo pazi na tip i nema probalema.
Joj bre, ljudi, toliko znam i ja, ali KAKO to da izvedem ?????
cccc.119markom,
*** Ah, pa tebi treba:
*** int FAR *scrn = (int FAR *)0xb8000000L;
Jeeeeee, skontao si :)))
*** Right? :)
Ne znam, probaću ... :)
cccc.120markom,
*** FP_SEG(a)=0xb000; /* Msc */
*** FP_OFF(a)=0x8000;
To je to, biopro, hvala svima na pomoći :)
cccc.121spantic,
> Pomenuti makro postoji u Borland Cu. Kod Microsoft Ca dovoljna je
> i naredba dodele.
Postoji i MSC, ali tek od 7.0. Do tada uvedite sami makro, postoji
primer u HELP PC 2.1, s tim da mu nedostaje jedna zagrada.
cccc.122spantic,
> Koristio sam za par funkcija Turbo C 2.0 (za MS C mora 5.1 i više).
Svaka čast. Linkovanje BC-a sa Clipper-om je svakako muka. Detaljna
uputstva za linkovanje imate u FAQ CA-Clipper, koji je na SEZAM stigao
nekako pošto sam sam rešio svoje muke sa povezivanjem MSC sa Clipper-om.
cccc.123dcolak,
│ *** Aha. Treba ti jedno pokazalo na tu adresu, pa trpaš tamo šta ti treba.
│ *** Samo pazi na tip i nema probalema.
│
│ Joj bre, ljudi, toliko znam i ja, ali KAKO to da izvedem ?????
A rekao sam ti :) Evo ti malog sourcea za zezanje ;)
#include <stdio.h>
#include <mem.h>
#include "image.h" // ovde je slika iz TDRAW snimljena kao .C
main ()
{
/* Kludge a pointer at video memory (segment 0xB800, offset 0) */
void far *screen = (void far *) 0xB8000000;
memcpy (screen,IMAGEDATA,4000); /* Move image to screen */
}
Sledge DAMMIR!
cccc.124ppekovic,
>> /* Kludge a pointer at video memory (segment 0xB800, offset 0) */
>> void far *screen = (void far *) 0xB8000000;
Znam da većina zna, ali zbog onih koji možda ne znaju, da bi
program radio kako treba, tj. da bi radio na herkulesu, treba
ispitati koja je kartica u pitanju i postaviti odgovarajuću
adresu, koja je različita za različite tipove adaptera.
Paya
cccc.125vmisev,
>> Aha. Treba ti jedno pokazalo na tu adresu, pa trpaš tamo šta ti treba.
>> Samo pazi na tip i nema probalema.
> Joj bre, ljudi, toliko znam i ja, ali KAKO to da izvedem ?????
Sorry, nisam ni primetio kol'ko sam bio površan. Da bi mogao da upotre-
biš odgovor, morao bi da znaš rešenje, a onda ne bi ni pitao, zar ne? :))
Al' vidim, dobio si šta si tražio :), pa da se ne ponavljam...
Vladimir
cccc.126vmisev,
Mozda će nekom biti zanimljivo (meni je dva sata dušu vadilo):
...
while((a=getc(in_file))!=EOF)
...
Vidite li neku grešku u gornjem redu? Nisam ni ja. Prostija stvar se u
C-u ne može napisati, a opet kompajler ne prihvata, kaže greška u tom redu i
to sintaksna...
Otkriću vam tajnu :) Radi se o C kompajleru na IBM u RCUB. Trebalo je
napisati
while((a=getc(in_file)) ]= EOF)
^
Problem je u skupu grafičkih karaktera na IBM 3090... Možda će nekom
pomoći da ne lupa glavu oko gluposti...
Vladimir
cccc.127mmitrovic,
Ů█▀█Ţ *** Nije na to mislio, to je funkcija Addr ili operator č (majm.znak)
Ů█▀█Ţ Ne, ne, ne, monkey i Addr, vraćaju samo adresu promenljive u DS-u (C:
Ů█▀█Ţ &a), a ono 'void *a' je isto kao 'a:pointer' ...
Ne, monkey i Addr vraćaju far adresu bilo čega definisanog. Pr. ako
imas proceduru XYX, Addr(XYX)=čXYX= far adresa procedure koja defini-
tivno nije u DS. U Pascalu nema near pointera, tj. sve funkcije
barataju FAR pointerima bez obzira na scope.
Ů█▀█Ţ *** to se u Cu valjda radi dodeljivanjem ULong-a pointeru.
Ů█▀█Ţ Daj mi neki primer, ili pointer na help, tako nešto ...
char* a = (char*)0xb8001234; ili tako nekako (mali mi hard da
držim i C++ i OOPascal), ovo mi čisto iz sećanja.
a će pokazivati (bar bi trebalo) ;) na B800:1234 hex.
cccc.128postmast,
From: ps26989d@buefhp.etf.uni-bg.yu (Pajic Srdjan)
Subject: Re: If...else
Date: Sun, 29 May 1994 11:35:46 GMT
Goran Turudich (Goran.Turudich@f110.n103.z38.setgate.setnet.co.yu) wrote:
>>Ja rekao:
>>GT> ti ljudi nisu amateri. Cudno, to mi nikada nece biti jasno. Jeste da tvoj
>>A Vinko Velinov odgovorio:
>>VV>Kako jedan red? Koliko struktura otvorim toliko redova. Redove ne
Jeli bre, jel' vi pisete programe da bi lepo izgledali i posle se time
hvalili okolo, il' pisete programe da bi zavrsili neki posao?
Ova vasa svadja me neodoljivo podseca na svadje tipa 'Pascal vs C' i
slicne, a jednako je bespredmetna. Nije mi samo jasno pokusavate li
da ubedite drugog da je u pravu, ili sebe?
P.S. Valjda vam je jasno da svako ima svoj nacin pisanja programa, i da
je svakom njegov nacin najbolji. Dakle, to postaje pitanje ukusa, a o
njima ne vredi raspravljati, zar ne?
cccc.130postmast,
From: Kiril.Vidim~e@f108.n108.z38.setgate.setnet.co.yu (Kiril Vidim~e)
Subject: Cccc
Date: Mon, 30 May 1994 03:12:10
Dali nekoj bi mozzel da mi posocci dobra kniga za programiranne
vo C pod UNIX?
Imam iskustvo so C pod DOS (Borland C), no, potrebna mi e kniga
so koja najlesno bi mozzel da gi iskoristam pridobivkite od
UNIX-ot (pipes, sockets...) i da gi eliminiram :( pridobivkite
od DOS-ot (dos.h, graphics.h...).
So edna reccenica: kniga za preogganne na c programer od DOS na
UNIX.
Sugestija?
KiRe ViDiMCCe
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
= Kiril Vidimce * kvidimce@a1.news.mk = "The best thing in =
= Bojmija 8/1/24 = vkire@lotus.mk * learning is =
= 91000 Skopje * vkire@cerera.uni.mk = understanding" =
= Republic of Macedonia = vkire@ereb.uni.mk * ───────────── =
= Tel: +389-91-411-125 * vidik@ezinfo.ethz.ch = - L. Infeld =
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
* Origin: Struga BBS +389 96 74074 * Macedonia * SETNet: (38:108/108)
cccc.131postmast,
From: Goran.Turudich@f110.n103.z38.setgate.setnet.co.yu (Goran Turudich)
Subject: operator[]
Date: Sun, 29 May 1994 02:50:04
Sasa Milic ima problem:
SM> Problemcic na GNU C++u !!! Proverite ovaj program. Kompajler uvek
SM> poziva drugu funkciju !!! Ako izbacim '= 0' program i ne moze da se
SM> prevede.
SM>#include <iostream.h>
SM>struct a {
SM> void operator [] ( int i, char p[] = 0 )
SM> { cout << "prva funkcija" << endl; }
SM> void operator [] ( char s[], char p[] = 0 )
SM> { cout << "druga funkcija" << endl; }
SM>};
SM>main ()
SM>{
SM> a a1;
SM> a1[ 1, "a" ];
SM> a1[ "qwerty", "b" ];
SM>}
Ovako nece moci, a iz sledecih razloga:
Operator [] je binarni operator. E, sad, sta je tu problem? Ti si naveo
dva parametra u listi argumenata, zar ne? Problem je u tome sto je po
default-u prvi parametar objekt iz kog pozivas metodu (preklopljeni
operator). Dakle u konkretnom primeru, prvi parametar je a1. Sta mu je
drugi parametar, pojma nemam. Takodje, nemam pojma zasto ne radi kada
izbrises "=0", ali siguran sam (jer sam probao) da nece da radi ni na
Borlandovim compilerima.
Evo programa koji ce raditi, ali u argument listi ces imati samo jedan
argument :(((
#include <iostream.h>
struct a {
void operator [] ( int i )
{ cout << "prva funkcija" << endl; }
void operator [] ( char s[] )
{ cout << "druga funkcija" << endl; }
};
void main ()
{
a a1;
a1[ 1 ];
a1[ "qwerty" ];
}
Ali, posto naslucujem da hoces da izvedes neko dvodimenzionalno
indeksiranje, onda ti saljem i program koji to omogucava. Ne zaboravi da
dvodimenzionalno indeksiranje kod C i C++ ide kao niz[i][j]. U tom stilu
mora biti i tvoj C++ program. Operator [] je zamisljen kao binarni gde mu
je prvi argument ispred uglastih zagrada, a drugi unutar njih. Protiv toga
ne mozemo :(((
#include <iostream.h>
struct a {
a operator [] ( int i )
{
cout << "prva funkcija" << endl;
return *this;
}
a operator [] ( char s[] )
{
cout << "druga funkcija" << endl;
return *this;
}
};
void main ()
{
a a1;
a1[ 1 ]["qwerty"];
a1[ "qwerty" ][ "b" ];
}
Ali, obrati paznju na to da se u ovom slucaju metoda poziva dva puta, a ne
jednom. Kada bih samo znao sta hoces da uradis, mozda bih mogao da ti
pomognem. Javi sta je u pitanju (ili ovde, u conf ili na turudic@fon).
___
■ OLX 2.1 TD ■ Never program and drink beer at the same time.
* Origin: [New Age BBS]*[Beograd]*[+38-11-404-639]*[23-06] (38:103/110)
cccc.132postmast,
From: sinisa@fon (Mr. Sinisa Neskovic)
Subject: Re: operator[]
Date: Tue, 31 May 1994 10:42:40 GMT
Goran Turudich (Goran.Turudich@f110.n103.z38.setgate.setnet.co.yu) wrote:
: Ali, posto naslucujem da hoces da izvedes neko dvodimenzionalno
: indeksiranje, onda ti saljem i program koji to omogucava. Ne zaboravi da
: dvodimenzionalno indeksiranje kod C i C++ ide kao niz[i][j]. U tom stilu
: mora biti i tvoj C++ program. Operator [] je zamisljen kao binarni gde mu
: je prvi argument ispred uglastih zagrada, a drugi unutar njih. Protiv toga
^^^^^^^^^^^
: ne mozemo :(((
^^^^^^^^^
Tacno je da je sintaksa za indeksiranje visedimenzionih nizova u C++
u stilu niz[i][j]. Medjutim C++ ne zabranjaju de sa uradi u stilu niz[i,j]
koristeci overload operatore. Evo kako se to moze uraditi.
Za to su potrebne tri klase: Index , DoubleIndex i Mat2D.
extern "C"
{
#include <stdio.h>
}
class DoubleIndex
{
public:
int i1;
int i2;
DoubleIndex(int j, int k) : i1(j), i2(k) {}
// ...
};
class Index
{
int i;
public:
Index() : i(0) {}
Index(int j) : i(j) {}
operator int& () { return i; }
// ovaj operator sintaksnu konstrukciju i,j pretvara u DoubleIndex objekat
DoubleIndex operator, (Index I) { return DoubleIndex(i, I.i); }
const Index& operator= (int j) { i = j; retur *this; }
const Index& operator++ () { ++i; return *this; }
// ...
};
class Mat2D // dvodimenziona matrica koja se indeksira sa niz [i, j]
{
int m[20][10] ; // u praksi dimenzije ne treba fiksirati
public:
int& operator[] (DoubleIndex I) { return m[I.i1][I.i2]; }
// ...
};
// U glavnom programu koriscenje ovih klasa izgleda ovako :
main()
{
Mat2D m;
Index i, j;
// popunjavanje matrice
for(i=0; i < 20, i++)
for(j=0; j < 10; j++)
m[i,j] = 10*i + j;
// stampanje matrice
for(i=0; i < 20, i++)
{
for(j=0; j < 10; j++)
printf("%d ", m[i,j]);
printf("\n");
}
}
Mozda je sve ovo malo nezgrapno, ali se moze.
Za ovaj trik sam saznao od James L. Adcock-a iz Microsoft-a.
cccc.133postmast,
From: ps26989d@buefhp.etf.uni-bg.yu (Pajic Srdjan)
Subject: Re: operator[]
Date: Tue, 31 May 1994 17:45:34 GMT
Mr. Sinisa Neskovic (sinisa@fon) wrote:
>>: Ali, posto naslucujem da hoces da izvedes neko dvodimenzionalno
>>: indeksiranje, onda ti saljem i program koji to omogucava. Ne zaboravi da
Ovo sto pises je lepo, al' ne vidim svrhu u svemu tome. Sintaksa a[i,j]
vec izlazi van okvira C(++)-a. Pa zasto onda lepo ne preklopiti
operator() ?
cccc.134postmast,
From: glisin@fon (Ivan Glisin)
Subject: Re: If...else
Date: Tue, 31 May 1994 23:18:07 GMT
Pajic Srdjan (ps26989d@buefhp.etf.uni-bg.yu) pise:
>> P.S. Valjda vam je jasno da svako ima svoj nacin pisanja programa, i da
>> je svakom njegov nacin najbolji. Dakle, to postaje pitanje ukusa, a o
>> njima ne vredi raspravljati, zar ne?
Tacno tako, samo ima jedan mali problem: kada tog nekoga ko voli da pise
C program na najsabijeniji moguci nacin uz to bez komentara jednoga dana
zgazi autobus (puj, puj...), njegov trud je najverovatnije zauvek izgubljen.
Ova rasprava se odnosi na ono sto se tice profesionalnog softwer inzenjeringa
sto ukljucuje i to kako treba da se pise tekst. Mozda zvuci smesno ovo sto
se prica, ali recimo IBM ima UPUTSTVA kako se pise program: kakve tabulatore,
gde komentare, kakve prorede ubacivati, kakva imena davati i slicno. Tako
je moguce da svi IBM programeri citaju kodove svojih kolega bez problema.
Uostalom, u realnom zivotu je slicno: pokusajte da odnesete u sud neku zalbu
ili molbu napisanu u nekom Z-standardu (recimo rukom sve u jednom pasusu).
E, nece moci. Molba recimo mora da ima zaglavlje sa datumom, pa da pise
MOLBA, pa ispod u vezi sa cim, pa malo prazno, pa pasus sa tekstom i tako
redom. Sustina? Pa da onaj koji to treba da prouci ne mora da lupa glavu
sta je dobio i da to zakljucuje iz sadrzaja nego odmah zna o cemu bi moglo
da se radi na osnovu forme dokumenta, a onda odmah zna i gde ce naci ono
sto ga interesuje ako nece da cita sve, a obicno nece, bas kao sto ja
obicno necu da citam 1000 linija necijeg koda da bih shvatio gde treba da
promenim neku konstantu. Pogledajte recimo kako je uradjen kod DTE editora.
Vrlo lep primer. Trebalo mi je desetak minuta da nadjem mesto koje treba
da modifikujem da bih mogao da koristim VT100 keyboard sekvence i da ga
proteram kroz 'cc' na XENIX 386. Samo zato sto je covek LEPO dokumentovao
sve u programu i pametno oblikovao izvorni kod.
Dakle, ne radi se o svadji, radi se prosto o cinjenicama. Sa stanovista
profesionalnog pristupa tvrdnje tipa JA BAS VOLIM DA PISEM STVARI POPUT
if(**a==s&&--b*||c->r2) d2(a,fg); jednostavno ne stoje jer u ovakvom komadu
koda samo autor zna njegovo SEMANTICKO znacenje, odnosno, sta to treba
da radi. I bas niko drugi na svetu.
Na zalost, kod nas takve tvrdnje ispaljuju obicno amateri koji nikada nisu
pokusali nista timski da rade i svoje kodove pisu tako da sto brze dobiju
rezultat sa ciljem da pokazu da to mogu ili da plase roditelje ili komsije
njihovim magijskim umecem.
Prema tome, ne radi se o ukusu nego o upotrebljivosti. Ko ima nameru da
radi nesto profesionalno sutra, MORACE da nauci ono o cemu pise Goran.
Ko hoce celog zivota da bude haker, moze da pise i na kineskom sto se
mene tice jer i tako njegovi kodovi samo njemu trebaju, pa nije ni bitno.
cccc.135smarkov,
> while((a=getc(in_file))!=EOF)
> ...
>
> Vidite li neku grešku u gornjem redu? Nisam ni ja. Prostija stvar se u
> C-u ne može napisati, a opet kompajler ne prihvata, kaže greška u tom redu
> i to sintaksna...
> Otkriću vam tajnu :) Radi se o C kompajleru na IBM u RCUB. Trebalo je
> napisati
> while((a=getc(in_file)) ]= EOF)
Kad smo već kod ovakvih konstrukcija ...
Šta je rezultat rada sledećeg programa ?
#include <stdio.h>
main()
{
char c;
if ((c=EOF) != EOF) {
printf("Wow\n");
}
}
Zavisi od implementacije ... Zato nije portabilan fragment :
char c;
while ((c=getc(fp)) != EOF) {
DoSomething();
}
Problem je u tome što ANSI ne specificira da je 'char' označen.
Ako vaš kompajler ima neoznačene 'char' tada gornji program izvrši
printf a donja petlja nikad ne terminira (jer je EOF obično -1).
Obično postoji cmd opcija ili pragma kojom je moguće zadati
podrazumevani tip za 'char' (signed/unsigned).
(Za MSC recimo, prevedite gornji program sa /J opcijom i dobićete "Wow")
cccc.136vmisev,
> So edna reccenica: kniga za preogganne na c programer od DOS na UNIX. Su-
> gestija?
"UNIX vodič za programere"; Zorica Jelić; Institut za nuklearne nauke
"Boris Kidrič", Vinča; Beograd 1991.
Nije loše za početak. Ali samo za početak.
Vladimir
cccc.137vmisev,
> Ova rasprava se odnosi na ono sto se tice profesionalnog softwer inzenje-
> ringa sto ukljucuje i to kako treba da se pise tekst. Mozda zvuci smesno
> ovo sto se prica, ali recimo IBM ima UPUTSTVA kako se pise program: kakve
> tabulatore, gde komentare, kakve prorede ubacivati, kakva imena davati i
> slicno. Tako je moguce da svi IBM programeri citaju kodove svojih kolega
> bez problema.
Slažem se sa ovim. Ako je program "za po kući", ajd' i da se oprosti
neurednost u stilu. Al' ako je za "za po napolju" :), pa ako još neko smrtan
trba to da čita... Mada ni u prvom slučaju nije na odmet malo samodiscipline
čisto vežbe radi ;)
Kad smo već kod toga ima ovde na Sezamu ibmpc/c/indents.zip. Vredi ski-
nuti, čovek ga je napis'o ovim povodom, tj, smučila mu se rasprava tipa gde
se piše ' { ' i slično :)
Vladimir
cccc.138vmisev,
> Problem je u tome što ANSI ne specificira da je 'char' označen. Ako vaš
> kompajler ima neoznačene 'char' tada gornji program izvrši printf a donja
> petlja nikad ne terminira (jer je EOF obično -1).
Podesetilo me, a nisam više siguran: ako me sećanje ne vara na VAX-u je
char beše po default-u signed? Jesam u right ili u left? :)
Vladimir
cccc.139postmast,
From: panzer@soko.etf.uni-bg.yu (Mijuskovic Veselin)
Subject: Re: Cccc
Date: Wed, 1 Jun 1994 10:09:16 GMT
In article <770349935.AA01863@setgate.setnet.co.yu>, Kiril.Vidim~e@f108.n108.z38.setgate.setnet.co.yu (Kiril Vidim~e) writes:
> Dali nekoj bi mozzel da mi posocci dobra kniga za programiranne
> vo C pod UNIX?
Na srpskom ima jedna koja je izdanje Instituta Vinca (UNIX vodic za
programere) i ako naletis na nju slobodno je preskoci. Od strane literature
ovde se najvise kotira knjiga Maurice Bach-a, kojoj ne znam tacan naslov.
Detaljno su opisane sve cake Unix-a, naravno, trazi se znanje C-a. Sto se tice
pocetaka, ovde na orlu postoje neki ASCII text fajlovi koji u obliku clanaka
obradjuju pojedine stvari Unix-a. Pisci su uglavnom ljudi koji su i dizajnirali
Unix (dakle, Ken i Dennis) i BSD dodatke (poveci tim). U okviru toga postoje
izvadci iz Unix Programmer's Manual chap.2 koje su pisali pomenuta dvojica, a
sto se tice socket biblioteke postoji clanak o upotrebi i implementaciji, pa
mozes da vidis kako se socket-i koriste a i da vidis kako su implementirani.
Koristan je i BSD4.2 System Manual koji opisuje neke sistemske pozive i
potprograme, mada bez primera.
Sto se tice grafike, to na Unix-u ne postoji izuzev u rudimentarnom
obliku. Zato pronadji neku literaturu o X Windows. Ako znas MS Windows,
otprilike su jednako komplikovani.
--
Panzer
In real life : Mijuskovic Veselin Internet : panzer@orao.etf.uni-bg.yu
/Meeyoushkowitch Veselyn/ DECnet : buef78::mijusk37088d
cccc.140postmast,
From: glisin@fon (Ivan Glisin)
Subject: Re: Cccc
Date: Wed, 1 Jun 1994 14:42:55 GMT
Mijuskovic Veselin (panzer@soko.etf.uni-bg.yu) pise:
>> pocetaka, ovde na orlu postoje neki ASCII text fajlovi koji u obliku clanaka
>> obradjuju pojedine stvari Unix-a. Pisci su uglavnom ljudi ...
Hej, gde je to na ORLU? Da li ima jos neke dokumentacije na masinama
Beo Internet-a koja bi bila korisna, a tice se UNIX-a?
cccc.141postmast,
From: vujke@fon (Amit Vujic)
Subject: Re: If...else
Date: Wed, 1 Jun 1994 14:54:04 GMT
Ivan Glisin (glisin@fon) wrote:
: Pajic Srdjan (ps26989d@buefhp.etf.uni-bg.yu) pise:
: >> P.S. Valjda vam je jasno da svako ima svoj nacin pisanja programa, i da
: >> je svakom njegov nacin najbolji. Dakle, to postaje pitanje ukusa, a o
: >> njima ne vredi raspravljati, zar ne?
: redom. Sustina? Pa da onaj koji to treba da prouci ne mora da lupa glavu
: sta je dobio i da to zakljucuje iz sadrzaja nego odmah zna o cemu bi moglo
: da se radi na osnovu forme dokumenta, a onda odmah zna i gde ce naci ono
: sto ga interesuje ako nece da cita sve, a obicno nece, bas kao sto ja
: obicno necu da citam 1000 linija necijeg koda da bih shvatio gde treba da
: promenim neku konstantu. Pogledajte recimo kako je uradjen kod DTE editora.
: Vrlo lep primer.
: Prema tome, ne radi se o ukusu nego o upotrebljivosti. Ko ima nameru da
: radi nesto profesionalno sutra, MORACE da nauci ono o cemu pise Goran.
: Ko hoce celog zivota da bude haker, moze da pise i na kineskom sto se
: mene tice jer i tako njegovi kodovi samo njemu trebaju, pa nije ni bitno.
Slazem se. Mislim da bi se to moglo reci i krace .
Standard je vraski fina stvar. I bilo bi lepo kad bi nesto sto bi
podsecalo na to postojalo i u softverastvu.
-----------------------------------------------------------------------------
vujke@fon.fon.uni-bg.yu
[Posle je Homer napravio cudo od nase zavitlancije ]
cccc.142postmast,
From: sladjan@fon (Sladjan Babarogic)
Subject: Re: If...else
Date: Wed, 1 Jun 1994 17:09:51 GMT
Pajic Srdjan (ps26989d@buefhp.etf.uni-bg.yu) wrote:
: P.S. Valjda vam je jasno da svako ima svoj nacin pisanja programa, i da
: je svakom njegov nacin najbolji. Dakle, to postaje pitanje ukusa, a o
: njima ne vredi raspravljati, zar ne?
Da, sve je to lepo kad radis program za tvoje licne potrebe i
taj program odrzavas.
Problemi nastaju kada se radi projekat gde se cak i delovi
koda koje su pisali razliciti ljudi preplice.
Posto radio na nekim projektima a i dalje cu dobro pazim na imena
promenljivih i funkcija, kao i stavljanje newline-ova kao i nazubljivanje
programa.
-----
Sladjan Babarogic, student, FON E-mail: sladjan@fon.fon.uni-bg.yu
sladjan@labis.fon.uni-bg.yu
cccc.146mjevta,
>> se prica, ali recimo IBM ima UPUTSTVA kako se pise program:
>> kakve tabulatore, gde komentare, kakve prorede ubacivati,
>> kakva imena davati i slicno.
Veoma sam zainteresovan da vidim ta uputstva. Kako moze
da dodje do njih?
bjevta
cccc.147djelovic,
> Problem je u tome što ANSI ne specificira da je 'char' označen.
> Ako vaš kompajler ima neoznačene 'char' tada gornji program izvrši
> printf a donja petlja nikad ne terminira (jer je EOF obično -1).
ANSI *speceificira* da je char označen.
cccc.148mitar,
Zdravo.Ima li ko kakva iskustva sa C-Scape i Look&Feel?
Cini mi se da to nije los screen dizajner ali se pri kompajliranju
koda koji L&F napravi pojavjljuju tri greske koje su mi prilicno
jasne ali mi nije jasno kako da ih otklonim.
Zapravo linker prijavljuje tri extern deklaracije iz LNF.lib fajla
nedefinisanim. Neko ce reci, pa definisi ih, ali stvari nisu bas tako
proste.
Ako je neko vec petljao sa L&F neka mi majlne, molim.
Vecito zahvalan,
rr.
cccc.149dcolak,
│ "UNIX vodič za programere"; Zorica Jelić; Institut za nuklearne nauke
│ "Boris Kidrič", Vinča; Beograd 1991.
Zar ona nije izdala knjigu "Baštovanstvo" ili tako nekako?!
Sledge DAMMIR!
cccc.150vmisev,
>> "UNIX vodič za programere"; Zorica Jelić; Institut za nuklearne nauke
>> "Boris Kidrič", Vinča; Beograd 1991.
> Zar ona nije izdala knjigu "Baštovanstvo" ili tako nekako?!
:) Nemam pojma. Pa lepo sam rekao "samo za početak". Koliko sam shvatio
čovek je rekao da je početnik u programiranju na UNIX-u, da ga zanimaju pro-
cesi, signali, cevke i sl. A u toj knjizi može da nađe osnovne informacije,
pa da ide dalje. Možda postoji neka bolja knjiga na srpskom, ali ja ne znam
za nju.
Vladimir
cccc.151mitar,
Opet ja.
Uspeo sam da sredim stvar sam.
Radi se o tome da pomenuti lib fajl ne treba ni ukljucivati. :)
U stvari on sluzi za izmene(prekompajliranje) biblotecnih rutina.
Pardon i pozdrav.
rr
cccc.152postmast,
From: Kiril.Vidimce@f108.n108.z38.setgate.setnet.co.yu (Kiril Vidimce)
Subject: C & Asm
Date: Thu, 02 Jun 1994 03:25:08
>Kako da u svoj C program ubacim par linija na asembleru? Znam da za to pos-
>toji direktiva ASM, ali koja je sintaksa (ja sam ne{to poku{avao ali nije
>i{lo)? Da li treba ne{to posebno da se uradi kod kompajliranja i linkovanja?
Ako e Borland C(++), togass:
asm {
mov ah, 0x0a
mov al, 0x41
mov bh, 0x00
mov bl, 0x07
mov cx, 0x05
int 0x10
}
Nemam iskustvo so MS C(++), no, bi trebalo da e isto, osven
asm -> _asm
KiRe ViDiMCCe
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
= Kiril Vidimce * kvidimce@a1.news.mk = "The best thing in =
= Bojmija 8/1/24 = vkire@lotus.mk * learning is =
= 91000 Skopje * vkire@cerera.uni.mk = understanding" =
= Republic of Macedonia = vkire@ereb.uni.mk * ------------- =
= Tel: +389-91-411-125 * vidik@ezinfo.ethz.ch = - L. Infeld =
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
* Origin: Struga BBS +389 96 74074 * Macedonia * SETNet: (38:108/108)
cccc.153postmast,
From: Goran.Turudich@f110.n103.z38.setgate.setnet.co.yu (Goran Turudich)
Subject: If...else
Date: Thu, 02 Jun 1994 00:41:00
ps26989d@buefhp.etf.uni-bg.yu (Pajic Srdjan) rece:
PS>Jeli bre, jel' vi pisete programe da bi lepo izgledali i posle se time
PS>hvalili okolo, il' pisete programe da bi zavrsili neki posao?
Ja (a sigurno i Vinko Velinov) nameravam da pisem programe koje ce jednog
dana neko i odrzavati. Mi nismo od onih koji naprave aplikaciju, utrape je
za 100 - 200 DIN/DEM, a onda pobegnu glavom bez obzira, a korisnika ostave
na cedilu. Jedan profesionalno uradjen program PODRAZUMEVA i lepo uredjen
code, a i DOKUMENTACIJU, a to znaci i komentare (sto vecina "programera"
ne praktikuje).
PS>Valjda vam je jasno da svako ima svoj nacin pisanja programa, i da
PS>je svakom njegov nacin najbolji. Dakle, to postaje pitanje ukusa, a o
PS>njima ne vredi raspravljati, zar ne?
NE, izvini, ali ne slazem se sa tobom. Nacin pisanja programa je kao i
rukopis. Rukopis jeste pitanje ukusa, ali MIRIS mu nije bas najbolji ako
je RUZAN. Ako zelis da pises tako da i drugi mogu da te procitaju, moras
da koristis neke konvencije, ili da pises prilicno razgovetno, jer,
priznaces, uzasno tesko je uci u tudju logiku programiranja (pogotovo sto
mnoge pametnice izmisljaju neke svoje nebuloze), a zamisli sve ovo, a jos
i necitko - UZAS.
Informatika (i njen deo koji se odnosi na programiranje) nije umetnost i u
njoj nikako ne mozemo pricati o ukusima, vec o standardima. Dakle, ako
zelis da se profesionalno bavis informatikom (ili bilo cim) - menjaj stav
iz osnova.
* Origin: [New Age BBS]*[Beograd]*[+38-11-404-639]*[23-06] (38:103/110)
cccc.154postmast,
From: glisin@fon (Ivan Glisin)
Subject: Re: If...else
Date: Thu, 2 Jun 1994 21:40:02 GMT
Amit Vujic (vujke@fon) pise:
>> Obecavam da cu odsad biti pazljiviji i kraci .
Ja mislim da je dovoljno citirati 2-3 reda u vrh glave da bi se
mogao pratiti tok diskusije. Cesto je i jedna recenica koja je
kljuc sasvim dovoljna. Da se pridrzavamo ovoga?
I PLIIIIIZ, bez onih tagova i potpisa od deset-petnaest redova
sa svim podacima o babi, dedi, tati, mami, broju telefona, zubnom
kartonu, omiljenom pevacu i tako to. To nas koji ovo citamo ON-LINE
preko modema prilicno kosta ako je tarifa skupa. Da ne pominjem
ljude van Beograda. (sve ovo nema veze sa C-om, izvinjavam se :-)
cccc.155miko,
Da li u C-u postoje funkcije pomocu kojih iz nekog znakovnog niza
mozemo izdvojiti odredjenu grupu znakova u neki drugi znakovni niz?
P.S. Koliko se secam analogne BASIC-ove naredbe su MID$,LEFT$ i RIGHT$.
Miko
cccc.156dcolak,
│ pa da ide dalje. Možda postoji neka bolja knjiga na srpskom, ali ja ne
│ znam za nju.
Postoji li neka dobra na engleskom? Video sam jednu u engleskoj
čitaonici, ali, nje više nema...
Sledge DAMMIR!
cccc.157markom,
:: P.S. Koliko se secam analogne BASIC-ove naredbe su MID$,LEFT$ i RIGHT$.
Za LEFT$ je analogija strncpy(), a za ove ostale ne znam ...
cccc.158dcolak,
│ Da li u C-u postoje funkcije pomocu kojih iz nekog znakovnog niza
│ mozemo izdvojiti odredjenu grupu znakova u neki drugi znakovni niz?
Proveri STRNCPY, STRTOK, STRLEN i naravno, STRCPY. Postoji još gomila,
ali to je dosta za početak :) Mada, hm, ako ništa, napraviš svoju f-ju
za te stvari..
Sledge DAMMIR!
cccc.159markom,
:: Proveri STRNCPY, STRTOK, STRLEN i naravno, STRCPY. Postoji još gomila,
strtok() i strlen() teško da će mu pomoći ...
cccc.160dcolak,
│ :: Proveri STRNCPY, STRTOK, STRLEN i naravno, STRCPY. Postoji još gomila,
│
│ strtok() i strlen() teško da će mu pomoći ...
Ok, objasni kako bez strlen da uradi right$ .
Sledge DAMMIR!
cccc.161markom,
:: Ok, objasni kako bez strlen da uradi right$ .
Uh, pa da, u pravu si, ne može jednostavno, ali sa malo truda ipak može ... :)
Ali strtok() mu pomaže kaoi i strstr() - nikako :)
cccc.162omega,
Ţ Mada, hm, ako nista, napravis svoju f-ju za te stvari..
Kao i za sve ostalo sto mu treba. :( Konkretno, C ima katastrofalan
prstup video memoriji, takodje razna move-isanja po memoriji i sl. :(
Valjda zbog prenosivosti :(
cccc.163.braca,
Treba mi listing komunikacionog programa između COM1 i COM2.
( Kad povežem Portove da mogu da simuliram dva računara )
HELP!
Braca
cccc.164dcolak,
│ Uh, pa da, u pravu si, ne može jednostavno, ali sa malo truda ipak može ...
│ :)
│ Ali strtok() mu pomaže kaoi i strstr() - nikako :)
Well, ne znam sa kakvim si se ti Basicom rodio, ali onaj moj je
imao i strstr, tj. da ti da poziciju jednog $ u drugom ;)
Sledge DAMMIR!
cccc.165markom,
:: Kao i za sve ostalo sto mu treba. :( Konkretno, C ima katastrofalan
:: prstup video memoriji, takodje razna move-isanja po memoriji i sl. :(
Kako katastrofalan ? Pa imaš pokeb() i peekb() koji se mogu gledati analogno
nizu MEM u TP-u ...
cccc.166markom,
:: Well, ne znam sa kakvim si se ti Basicom rodio, ali onaj moj je
:: imao i strstr, tj. da ti da poziciju jednog $ u drugom ;)
Ajoj, čitaš li ti ? To mu ne može pomoći da bi napravio mid$ i right$, što si
i video na tvom BBS-u :)))
cccc.167vitez.koja,
Uz poruku je program koji pri pokušaju prevođenja zaglavljuje IDE
- iskoči QEMM-like tekst "exception 13, bla, bla" i ni makac.
Radi se o Borland Cu 3.1, 386 računar. Prevođenje iz komandne
linije prolazi (znam da ima grešaka;).
Isprobajte, ako imate malo vremena, da li se to i kod vas
dešava...
cccc.168omega,
Ţ :: Kao i za sve ostalo sto mu treba. :( Konkretno, C ima katastrofalan
Ţ :: prstup video memoriji, takodje razna move-isanja po memoriji i sl. :(
Ţ
Ţ Kako katastrofalan ? Pa imas pokeb() i peekb() koji se mogu gledati
Ţ analogno nizu MEM u TP-u ...
:)) Nisam bas na to mislio. Konkretno memset (ili setmem) uopste
nije iste brzine kao fillchar u TP-u :(, isto vazi i za memcpy (ako se ne
varam) i move u TP-u...
cccc.169postmast,
From: panzer@vrabac.etf.uni-bg.yu (Mijuskovic Veselin)
Subject: Re: Cccc
Date: Fri, 3 Jun 1994 11:10:11 GMT
In article <Cqq3JK.8AG@fon>, glisin@fon (Ivan Glisin) writes:
>> pocetaka, ovde na orlu postoje neki ASCII text fajlovi koji u obliku clanaka
>> obradjuju pojedine stvari Unix-a. Pisci su uglavnom ljudi ...
>Hej, gde je to na ORLU? Da li ima jos neke dokumentacije na masinama
>Beo Internet-a koja bi bila korisna, a tice se UNIX-a?
Dir je /usr/local/doc/unix/ a evo sta ima:
awk.txt AWK Users Manual - (A.Aho, B.Kernighan, P.Weinberger)
Uputstvo za AWK, napisali gorepomenuti.
beav140.txt BEAV (Emacs like binary editor) Users Manual
cacm.txt UNIX Time Sharing System - (K.Thompson, D.Ritchie) <----+
Clanak iz CACM, koji je upoznao svet sa Unix-om, autori |
ctour.txt Opis dizajna jednog od prvih C kompajlera za PDP-11 - pretezno
se bavi cistim kompajlerom (kreiranje stabla izraza, tabele
simbola, konvertovanje u kod i sl.). Napisao Dennis licno.
curses.txt Opis Curses biblioteke sa par primera, od strane autora (BTW,
da li ste znali da je curses lib razvijen da bi se mogla igrati
igra "rogue" na razlicitim terminalima? :) )
fs.txt Fast File System on BSD4.2 UNIX - opis hard file sistema od
strane autora.
fsck.txt Opis upotrebe fsck-a od strane autora programa, M.K.McKusick-a.
gprof.txt Struktura i dizajn gprof alata za profiling programa (ovo je
sa jednog od simpozijuma SIGPLAN-a)
implement.txt Cica Ken prica kako izgleda UNIX kernel.
iosys.txt Dennis opisuje I/O sistem Unix-a.
ipc.txt Uputstvo za upotrebu socketa, napisali ljudi koji su ih i
dizajnirali.
lint.txt Lint, a C Program Checker - uputstvo, autor oba S.C.Johnson
lisp.txt FRANZ Lisp Textbook
make.txt Make Users Manual, by its author S.I.Feldman
net.txt Sta je unutar soketa, tj. kako su dizajnirani - pisu autori.
password.txt Zasto su passwordi na UNIX-u onakvi kakvi jesu - pisu Ken i
Robert T. Morris Senior (aha, tata ONOG RTM-a).
porttour.txt Opis dizajna portabilnog C kompajlera od strane D.Ritchie-ja.
regen.txt Some good advices of how to install UNIX/32V regarding the
errors in the File System or accidental loosage of the portions
of the OS itself
sccs.txt SCCS Users Manual
security.txt Kratak clanak o bezbednosti sistema i podataka na UNIX-u.
(D.Ritchie)
sed.txt Streams Editor Manual
sendmail.txt Sendmail dizajn, E.Allman
sysman.txt BSD4.2 UNIX System Manual (vecinom opisuje sistemske pozive
kernel-a - bez primera).
trek.txt Star Trek - how to play the game
unixprog.txt UNIX Programming - II Edition, by D.Ritchie and B.Kernighan
(ova je malo zeznuta tokom prolaska kroz nroff, znake <, >, {,
} menja u neke kombinacije f, i i l znakova - kratko uputstvo
kako programirati na UNIX-u)
uucp.txt UUCP Implementation Description by D.A.Nowitz
vaxasem.txt Berkeley VAX-11/UNIX assembler Reference Manual
yacc.txt Opis i upotreba Yacc alata - napisao autor.
Sve ovo su cisti ASCII tekstovi, nastali proturanjem source-a kroz
tbl, eqn i nroff i filtrovani kroz `col -b'. Nedostaje par crteza, a i
oni koji su ostali pate od TAB boljke.
--
Panzer
In real life : Mijuskovic Veselin Internet : panzer@orao.etf.uni-bg.yu
/Meeyoushkowitch Veselyn/ DECnet : buef78::mijusk37088d
cccc.170postmast,
From: jovicic@fon (Aleksandar Jovicic)
Subject: Re: cccc
Date: Fri, 3 Jun 1994 19:32:16 GMT
Damir Colak (dcolak@sezam.UUCP) wrote:
: "UNIX vodic za programere"; Zorica Jelic; Institut za nuklearne nauke
: "Boris Kidric", Vinca; Beograd 1991.
: Zar ona nije izdala knjigu "Bastovanstvo" ili tako nekako?!
Pa "bastovanu" ako bi da radis C na UNIX-u pogledaj tu knjigu (nije bas nesto
al' posto bolje nema dobra je i ona)
--
A. Jovicic - FON
************************************
* jovicic@fon.fon.uni-bg.yu *
* sys2!jovicic@fon.fon.uni-bg.yu *
* f1jovici@yuearn11.bitnet *
* ejovicic@ubbg.etf.uni-bg.yu *
************************************
P.S. Doduse sve sto nadjes u toj knjizi naci ces i sa man
normalno opsirnije i na engleskom.
cccc.171postmast,
From: Kiril.Vidimce@f108.n108.z38.setgate.setnet.co.yu (Kiril Vidimce)
Subject: Fox Vs C
Date: Thu, 02 Jun 1994 20:06:00
>Potrebno mi je da napravim C program koji bi obradjivao FOX baze.
>Podrska treba da bude 100% kompatibilna sa FOX-om. Ne pomaze mi
>konverzija, vec obrada treba da bude direktno u FOX-u.
>Da li postoji bilo kakvo resenje, tj. biblioteka koja ovo omogucava?
Imam biblioteka za dBASE, no, dosega ne sum sretnal nessto
sliccno za FOX. :(
Ti treba rabota i so FoxPro index-i?
KiRe ViDiMCCe
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
= Kiril Vidimce * kvidimce@a1.news.mk = "The best thing in =
= Bojmija 8/1/24 = vkire@lotus.mk * learning is =
= 91000 Skopje * vkire@cerera.uni.mk = understanding" =
= Republic of Macedonia = vkire@ereb.uni.mk * ------------- =
= Tel: +389-91-411-125 * vidik@ezinfo.ethz.ch = - L. Infeld =
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
* Origin: Struga BBS +389 96 74074 * Macedonia * SETNet: (38:108/108)
cccc.172postmast,
From: Kiril.Vidimce@f108.n108.z38.setgate.setnet.co.yu (Kiril Vidimce)
Subject: Cccc
Date: Thu, 02 Jun 1994 20:06:01
>> Dali nekoj bi mozzel da mi posocci dobra kniga za programiranne
>> vo C pod UNIX?
> Na srpskom ima jedna koja je izdanje Instituta Vinca (UNIX vodic za
>programere) i ako naletis na nju slobodno je preskoci. Od strane literature
Thanx za predupreduvanneto. :) Ja ima niz prodavnicite vo Skopje.
>ovde se najvise kotira knjiga Maurice Bach-a, kojoj ne znam tacan naslov.
>Detaljno su opisane sve cake Unix-a, naravno, trazi se znanje C-a. Sto se tice
KKe mozze nekoj da se seti na imeto na knigata? Da mozzam
da ja pobaram i kaj nas...
>pocetaka, ovde na orlu postoje neki ASCII text fajlovi koji u obliku clanaka
>obradjuju pojedine stvari Unix-a. Pisci su uglavnom ljudi koji su i dizajnirali
>Unix (dakle, Ken i Dennis) i BSD dodatke (poveci tim). U okviru toga postoje
Ima li javen account na orao i kako da se pristapi? (tel. broj?)
Kade se naoggaat file-ovite? (direktorium?)
> Sto se tice grafike, to na Unix-u ne postoji izuzev u rudimentarnom
>obliku. Zato pronadji neku literaturu o X Windows. Ako znas MS Windows,
>otprilike su jednako komplikovani.
Ne mi e ni potrebna grafika. :) A za X-Windows, malku kke pocceka...
KiRe ViDiMCCe
* Origin: Struga BBS +389 96 74074 * Macedonia * SETNet: (38:108/108)
cccc.173postmast,
From: smilic@breza (Sasa Milic)
Subject: RPC
Date: Sat, 4 Jun 1994 12:52:53 GMT
Da li neko ima iskustva sa RPC-om ? Zeza me funkcija svc_register, ne
znam dal' treba jos negde sem u /etc/rpc da dodam naziv servera.
Sasa
cccc.174postmast,
From: glisin@fon (Ivan Glisin)
Subject: Re: Cccc
Date: Sat, 4 Jun 1994 16:07:37 GMT
Kiril Vidimce (Kiril.Vidimce@f108.n108.z38.setgate.setnet.co.yu) pise:
>> KKe mozze nekoj da se seti na imeto na knigata? Da mozzam
>> da ja pobaram i kaj nas...
Ne znam za pomenute, ali svakako pokusaj da nadjes knjigu koja je
ODLICNA za pocetak i za malo vise. To je:
Introducing UNIX System V
Rachel Morgan, Henry McGilton
McGRAW-HILL INTERNATIONAL EDITIONS
Computer Science Series
PY 1987, PA 612, ISBN 0-07-100210-3
cccc.175postmast,
From: broker@setgate.setnet.co.yu (Predrag Supurovic)
Subject: Fox Vs C
Date: Fri, 03 Jun 1994 08:52:04
==== Kiril Vidimce rece: ======================================
>Potrebno mi je da napravim C program koji bi obradjivao FOX baze.
KV> Imam biblioteka za dBASE, no, dosega ne sum sretnal nessto
KV> sliccno za FOX. :(
KV> Ti treba rabota i so FoxPro index-i?
Da, trebalo bi. Kako radi to sa DBASE datotekama? Podrzava li i indekse?
Koliko je brzo, itd...
broker
... BR> Ups. Opet ostadoh bez tagova...
* Origin: Oreska BBS, UZICE = SF BIBLIOTEKA = SETNet: (38:101/101)
cccc.176miljko,
>> Potrebno mi je da napravim C program koji bi obradjivao
>> FOX baze. Podrska treba da bude 100% kompatibilna sa
>> FOX-om. Ne pomaze mi konverzija, vec obrada treba da
>> bude direktno u FOX-u.
>>
>> Da li postoji bilo kakvo resenje, tj. biblioteka koja
>> ovo omogucava?
Što se tiče C-a i obrade DBF datoteka, najbolji proizvod
je valjda CODEBASE. Verzija 4.5, koju imam, omogućavai rad sa
Fox indexima, a postoji i novija verzija (5.0).
cccc.177wizard,
> : U BC 3.1 postoji opcija GENERATE UNDERBARS, mozda je to resenje ?
>
> Za koriscenje standardnih biblioteka C-a, MORA SE UKLJUCITI
> GENERATE UNDERBARS, jer funkcije u bibliotekama imaju ispred
A čemu uopšte služe ti underbarsovi u C-u? Mislim, odakle se javila
potreba za njima?
cccc.178mjevta,
>> Što se tiče C-a i obrade DBF datoteka, najbolji proizvod
>> je valjda CODEBASE. Verzija 4.5, koju imam, omogućavai rad sa
>> Fox indexima, a postoji i novija verzija (5.0).
Da li CDX ili mozda stari Fox Base?
bjevta
cccc.179bulaja,
││Što se tiče C-a i obrade DBF datoteka, najbolji proizvod je valjda
││CODEBASE. Verzija 4.5, koju imam, omogućavai rad sa Fox indexima, a
││postoji i novija verzija (5.0).
│└───
│Da li CDX ili mozda stari Fox Base?
└───
CDX, a čini mi se i IDX (koji ti naravno neće trebati pored CDX:).
Inače postoji i CodeBase verzija 5.1, ali to još nisam imao prilike da
vidim na delu niti u čemu je razlika u odnosu na 5.0 (sudeći po
prospektima razlike su u tome što se dobijaju neke dodatne zezalice za
Windows:).
cccc.180dragisak,
> KKe mozze nekoj da se seti na imeto na knigata? Da mozzam
> da ja pobaram i kaj nas...
'The Design of The UNIX Operating System'
Maurice J. Bach
Prentice-Hall, 1986.
cccc.181miljko,
>> Da li CDX ili mozda stari Fox Base?
CDX. Stari (IDX), koliko je meni poznato ne, bar u
verziji 4.5!
cccc.182vitez.koja,
#=>
#=> Uz poruku je program koji pri pokušaju prevođenja
#=> zaglavljuje IDE - iskoči QEMM-like tekst "exception 13,
#=> bla, bla" i ni makac.
#=>
#=> Radi se o Borland Cu 3.1, 386 računar. Prevođenje iz
#=> komandne linije prolazi (znam da ima grešaka;).
#=>
#=> Isprobajte, ako imate malo vremena, da li se to i kod
#=> vas dešava...
Drugi put pomaže bog :)
music.zipcccc.183markom,
:: :)) Nisam bas na to mislio. Konkretno memset (ili setmem) uopste
:: nije iste brzine kao fillchar u TP-u :(, isto vazi i za memcpy (ako se ne
:: varam) i move u TP-u...
Verovatno da nije, zato što oni rade drugačije u zavisnosti od modela ...
cccc.185markom,
Pitanje za UNIX programere:
Da li postoji na UNIX-u što radi kao _dos_finfirst() i _dos_findnext() ?
cccc.186djelovic,
Ukoliko si POSIX-kompatibilan, onda funkcije opendir, closedir, readdir
i rewinddir zajedno sa strukturom DIR (koja je nekakav direktorijumski
ekvivalent strukture FILE za datoteke) možeš da nađeš u zaglavlju dirent.h.
cccc.187vmisev,
> Dir je /usr/local/doc/unix/ a evo sta ima:
A jel isti otvoren i za ljude koji nemaju nalog na orlu? Da li mogu da
skinem šta mi treba sa anonymous ftp?
Vladimir
vmisev@sezam.yu
p3misev@yuearn11.bitnet
cccc.188ppekovic,
>> Ukoliko si POSIX-kompatibilan, onda funkcije opendir, closedir, readdir
>> i rewinddir zajedno sa strukturom DIR (koja je nekakav direktorijumski
>> ekvivalent strukture FILE za datoteke) možeš da nađeš u zaglavlju dirent.h.
... a ukoliko ne pronađeš dirent.h, potraži dir.h ili direct.h.
Paya
cccc.189omega,
Ţ :: :)) Nisam bas na to mislio. Konkretno memset (ili setmem) uopste
Ţ :: nije iste brzine kao fillchar u TP-u :(, isto vazi i za memcpy (ako se
Ţ ne :: varam) i move u TP-u...
Ţ
Ţ Verovatno da nije, zato sto oni rade drugacije u zavisnosti od modela ...
Probao sam u svim modelima, TC je sporiji od TP :)
cccc.190markom,
:: Ţ Verovatno da nije, zato sto oni rade drugacije u zavisnosti od modela ...
::
:: Probao sam u svim modelima, TC je sporiji od TP :)
Pa da, jer vrši proveru modela u kojem radi, to sam i rekao ...
cccc.191nigra,
Pozdrav svima!
Da li neko zna zasto f-ja absread za argument drive =2 (C:) ne radi
(vraca -1 error code).
nigra.
cccc.192mjova,
> Da li neko zna zasto f-ja absread za argument drive =2
> (C:) ne radi (vraca -1 error code).
;) kakvo pitanje, takav odgovor:
zato što je neki prosleđeni parametar van opsega.
cccc.193bigbrada,
*>> Da li neko zna zasto f-ja absread za argument drive =2 (C:)
*>> ne radi (vraca -1 error code).
Zar nije za C: argument drive = 0?
The.Great
cccc.194markom,
:: Zar nije za C: argument drive = 0?
žek', koliko sam ja upućen u tematiku, 0 je trenutni drajv? 1=a,2=b,
itd, moguće je da grešim, ali ne verujem :)
cccc.195postmast,
From: smilic@breza (Sasa Milic)
Subject: RPC
Date: Sat, 4 Jun 1994 12:52:53 GMT
Da li neko ima iskustva sa RPC-om ? Zeza me funkcija svc_register, ne
znam dal' treba jos negde sem u /etc/rpc da dodam naziv servera.
Sasa
cccc.196postmast,
From: glisin@fon (Ivan Glisin)
Subject: Re: Cccc
Date: Sat, 4 Jun 1994 16:07:37 GMT
Kiril Vidimce (Kiril.Vidimce@f108.n108.z38.setgate.setnet.co.yu) pise:
>> KKe mozze nekoj da se seti na imeto na knigata? Da mozzam
>> da ja pobaram i kaj nas...
Ne znam za pomenute, ali svakako pokusaj da nadjes knjigu koja je
ODLICNA za pocetak i za malo vise. To je:
Introducing UNIX System V
Rachel Morgan, Henry McGilton
McGRAW-HILL INTERNATIONAL EDITIONS
Computer Science Series
PY 1987, PA 612, ISBN 0-07-100210-3
cccc.197postmast,
From: broker@setgate.setnet.co.yu (Predrag Supurovic)
Subject: Fox Vs C
Date: Fri, 03 Jun 1994 08:52:04
==== Kiril Vidimce rece: ======================================
>Potrebno mi je da napravim C program koji bi obradjivao FOX baze.
KV> Imam biblioteka za dBASE, no, dosega ne sum sretnal nessto
KV> sliccno za FOX. :(
KV> Ti treba rabota i so FoxPro index-i?
Da, trebalo bi. Kako radi to sa DBASE datotekama? Podrzava li i indekse?
Koliko je brzo, itd...
broker
... BR> Ups. Opet ostadoh bez tagova...
* Origin: Oreska BBS, UZICE = SF BIBLIOTEKA = SETNet: (38:101/101)
cccc.198slom,
Drugar treba da pise program u C-u koji barata sa velikim matricama
(reda 1600x1600). Posto je brzina dosta bitna, hoce da iskoristi memoriju
iznad 640 Kb, a ne da cita/pise na disk.
Vidim da u C diru ima neka biblioteka za BC++, pa me interesuje da li
je neko vec koristio istu, i uopste kakva su iskustva drugih sa slicnim
problemima.
sm
cccc.199zormi,
* Drugar treba da pise program u C-u koji barata sa velikim matricama
* (reda 1600x1600). Posto je brzina dosta bitna, hoce da iskoristi memoriju
* iznad 640 Kb, a ne da cita/pise na disk.
Sa velikim matricama sam se bavio pre nekoliko godina kad sam pisao dodatne
module za MATLAB 386 paket (tata-mata za matrice). Pisao sam ih u High C-u
sa Phar Lap DOS Extenderom i to je lepo radilo.
Danas ima i nekih modernijih rešenja, ali mi nije zatrebalo...
cccc.200postmast,
From: smilic@breza (Sasa Milic)
Subject: RPC
Date: Sat, 4 Jun 1994 12:52:53 GMT
Da li neko ima iskustva sa RPC-om ? Zeza me funkcija svc_register, ne
znam dal' treba jos negde sem u /etc/rpc da dodam naziv servera.
Sasa
cccc.201postmast,
From: glisin@fon (Ivan Glisin)
Subject: Re: Cccc
Date: Sat, 4 Jun 1994 16:07:37 GMT
Kiril Vidimce (Kiril.Vidimce@f108.n108.z38.setgate.setnet.co.yu) pise:
>> KKe mozze nekoj da se seti na imeto na knigata? Da mozzam
>> da ja pobaram i kaj nas...
Ne znam za pomenute, ali svakako pokusaj da nadjes knjigu koja je
ODLICNA za pocetak i za malo vise. To je:
Introducing UNIX System V
Rachel Morgan, Henry McGilton
McGRAW-HILL INTERNATIONAL EDITIONS
Computer Science Series
PY 1987, PA 612, ISBN 0-07-100210-3
cccc.202postmast,
From: broker@setgate.setnet.co.yu (Predrag Supurovic)
Subject: Fox Vs C
Date: Fri, 03 Jun 1994 08:52:04
==== Kiril Vidimce rece: ======================================
>Potrebno mi je da napravim C program koji bi obradjivao FOX baze.
KV> Imam biblioteka za dBASE, no, dosega ne sum sretnal nessto
KV> sliccno za FOX. :(
KV> Ti treba rabota i so FoxPro index-i?
Da, trebalo bi. Kako radi to sa DBASE datotekama? Podrzava li i indekse?
Koliko je brzo, itd...
broker
... BR> Ups. Opet ostadoh bez tagova...
* Origin: Oreska BBS, UZICE = SF BIBLIOTEKA = SETNet: (38:101/101)
cccc.203m.dzigurski,
Da li postoji u MSC-u 5.1 nesto kao delay() funkcija?
cccc.204ognjen,
)-> Da li postoji u MSC-u 5.1 nesto kao delay() funkcija?
Zar to nije procedura?
cccc.205spantic,
> Da li postoji u MSC-u 5.1 nesto kao delay() funkcija?
Ne, moraš sam da je napišeš. Ali nije problem. Evo ti gotova. Uključi
time.h.
------
/*------------------------------------------
Procedura: delay ( ms )
Opis : kasni u milisenkudama
Ulaz : int ms
-------------------------------------------*/
void delay( int ms )
{
int ts;
/* ms se moraju konvertovati u tikove. 1 sec = 18.2 tikova */
ms = (int)(ms*18.2/1000 + 1);
ts = clock();
while((clock()-ts)<ms)
{
/* telo petlje je prazno */
}
} /* end proc delay */
cccc.206markom,
:: Da li postoji u MSC-u 5.1 nesto kao delay() funkcija?
Ne postoji ni u 6.0, ja je tražim već jedno dva meseca kako bih
prepravio jednu comm biblioteku iz BC-a u MSC, ali ne ide :(((
cccc.208postmast,
From: ddjokic@fon (Dragan Djokic)
Subject: Re: osmeh/g++
Date: Sun, 19 Jun 1994 10:54:32 GMT
Gordan Grebovic (grebov@fon) wrote:
: zapazio sam da g++ na osmeh-u prevodi neke prgrame, koje nisam
: uspeo da prevedem sa istim na fon-u, ali prilikom izvrsavanja
: javi : ld.so: Undefined symbol "tgetent" ...
: znali neko u cemu je problem?
Ako radis sa bibliotekom curses, a bice da radis, onda stavi
jedno -ltermcap pri linkovanju i resices se bede
--
Djole
-----------
ddjokic@fon
cccc.209postmast,
From: iznogud@Osmeh.FON.BG.AC.YU (Aleksandar Petrovic)
Subject: Re: osmeh/g++
Date: Sun, 19 Jun 1994 10:56:14 GMT
Gordan Grebovic (grebov@fon) wrote:
: zapazio sam da g++ na osmeh-u prevodi neke prgrame, koje nisam
: uspeo da prevedem sa istim na fon-u, ali prilikom izvrsavanja
: javi : ld.so: Undefined symbol "tgetent" ...
: znali neko u cemu je problem?
Slicna poruka se javlja i kad pokusas da startujes Emacs...
++
cccc.213postmast,
From: Brankica.Kranjac@f110.n103.z38.setgate.setnet.co.yu (Brankica Kranjac)
Subject: Re: If...Else
Date: Tue, 21 Jun 1994 02:08:28
On 10 Jun 94 11:45pm, Goran Turudich wrote to Sasa Milic:
GT>>Informatika (i njen deo koji se odnosi na programiranje) nije umetnost
:) A Sasa Milic odgovorio:
SM>> A "The art of Computer Programming" - Donald Knuth ?
SM>> ^^^
:) Ma, ovo je samo figurativno. Donald Knuth sigurno sebe ne
:) smatra umetnikom, vec naucnikom.
Ne budi toliko siguran. Covek je i te kako dobro znao sto je
tu knjigu tako nazvao. To sto mnogi informatiku danas zovu
zanatom, ne znaci da ona to i jeste.
Lady Linet 38:103/110@SetNet.NewAge
< Moderator SetNet.Erotika >
... Program? Hahaha! Koji radi! Hahaha!
* ■ Hack by ANGEL ■ 1111111111
* Origin: [New Age BBS]*[Beograd]*[+38-11-404-639]*[23-06] (38:103/110)
cccc.214smarkov,
> A čemu uopšte služe ti underbarsovi u C-u? Mislim, odakle se javila
> potreba za njima?
Kao siguran način da ne pozoveš funkciju iz biblioteke pogrešnom
konvencijom poziva.
Kod koji se generiše za poziv funkcije odredjen je podrazumevanom
konvencijom (C/Pascal/fastcall za MSC recimo) i/ili proširenjima
jezika (kvalifikatori __cdecl, __pascal ...).
Kompajler generiše simbol za ime funkcije (kako u pozivu tako i
tamo gde je definisana) tako da imlicitno sadrzi informaciju
o konvenciji poziva (underbars ispred oznacava C funkciju ...).
cccc.215zzivotic,
>> Ne, moraš sam da je napišeš. Ali nije problem. Evo ti gotova. Uključi
>> time.h.
Sitan nedostatak - u nekim programima nema potrebe da se uvlači deo float..
biblioteke što ovaj primer čini. Razlika je negde oko 14k koda što za neke
rezidentne programe može biti značajno. Zato je bolje:
/*------------------------------------------
Procedura: delay ( clock_t ms )
Opis : kasni u milisekundama
Ulaz : clock_t ms
-------------------------------------------*/
void delay( clock_t ms )
{
/* ms se moraju konvertovati u tikove. 1 sec = 18.2 tikova */
ms = (ms*182)/10000;
ms += clock();
while( clock() < ms)
;
}
Pozdrav, zz
cccc.216markom,
:: void delay( clock_t ms )
Hmm, čudno, ali kod mene ne rade ni tvoja ni spanticeva ?!? Kako treba
kompajlirati dati program, ja sam kompajlirao sa prostim CL ime.c ...
Koliko ja znam, delay(500) bi trebalo da čeka pola sekunde, delay(5000000) ne
čeka ni stotinku :(
cccc.217zzivotic,
>> Hmm, čudno, ali kod mene ne rade ni tvoja ni spanticeva ?!? Kako treba
>> kompajlirati dati program, ja sam kompajlirao sa prostim CL ime.c ...
>> Koliko ja znam, delay(500) bi trebalo da čeka pola sekunde, delay(5000000)
>> ne čeka ni stotinku :(
Da, greška je u tome što clock() funkcija u poslednjim verzijama MSC
kompajlera koristi 1/1000 kao rezoluciju tajmera (iako je preciznost i dalje
1/18.2) pa treba u primeru jednostavno preskočiti onu konverziju u "clock
tikove". Dakle, dovoljno je:
ms = clock() + ms;
while ( clock() < ms )
;
Pozdrav, zz
cccc.218markom,
:: Da, greška je u tome što clock() funkcija u poslednjim verzijama MSC
:: kompajlera koristi 1/1000 kao rezoluciju tajmera (iako je preciznost i dalje
:: 1/18.2) pa treba u primeru jednostavno preskočiti onu konverziju u "clock
:: tikove". Dakle, dovoljno je:
Yup, to je bilo to :) Dakle, da rezimiramo:
void delay (clock_t ms) {
ms += clock();
while (clock() < ms);
}
E sad, ja obećah u SEZAM:datoteke dcolaku komunikacionu biblioteku, evo
ga lib uz poruku :)
commlib.zipcccc.219m.dzigurski,
-> Hmm, čudno, ali kod mene ne rade ni tvoja ni spanticeva ?!? Kako treba
-> kompajlirati dati program, ja sam kompajlirao sa prostim CL ime.c ...
Ne radi ni kod mene. Ja sam problem resio ovom funkcijom:
#include <time.h>
#include <sys\timeb.h>
void delay(int milliseconds)
{
struct timeb t;
time_t seconds;
unsigned last;
_enable();
ftime(&t);
last = t.millitm;
seconds = t.time;
while( milliseconds > 0)
{
int volatile count;
for ( count = 0; count < 2400; count ++);
ftime(&t);
if (t.time == seconds)
milliseconds -= (t.millitm - last);
else
milliseconds -= 1000 * (int) (t.time - seconds)
- (last - t.millitm);
last = t.millitm;
seconds = t.time;
}
}
cccc.220maksa,
Je l' može neko da kaže kako se detektuje pritisnut Alt taster ?
(ili makar pointer na poruku gde to piše ?)
cccc.221evlad,
: Je l' moze neko da kaze kako se detektuje pritisnut Alt taster ?
: (ili makar pointer na poruku gde to pise ?)
Izvor Norton Guide ASM.NG, ako si na to mislio. Nadam se da nisam
promasio temu tvog pitanja.
0:417h Shift Status
Length: 1 byte
Shift Status
7 6 5 4 3 2 1 0
x . . . . . . . Insert locked
. x . . . . . . Caps Lock locked
. . x . . . . . Num Lock locked
. . . x . . . . Scroll Lock locked
. . . . x . . . Alt key is pressed
. . . . . x . . Ctrl key is pressed
. . . . . . x . Left Shift key is pressed
. . . . . . . x Right Shift key is pressed
0:418h Extended Shift Status
Length: 1 byte
Extended Shift Status
7 6 5 4 3 2 1 0
x . . . . . . . Ins key is pressed
. x . . . . . . Caps Lock key is pressed
. . x . . . . . Num Lock key is pressed
. . . x . . . . Scroll Lock key is pressed
. . . . x . . . Pause key locked
. . . . . x . . SysReq key is pressed
. . . . . . x . Left Alt key is pressed
. . . . . . . x Right Ctrl key is pressed
Bits 2 through 0 are valid only for the 101/102-key keyboard.
On the PCjr, bit 2 is used to indicate if Key Click is active.
Pozdrav iz Kikinde, Vlada
cccc.222markom,
:: Je l' može neko da kaže kako se detektuje pritisnut Alt taster ?
Na adresama 0x40:0x17 i 0x40:0x18 su ti bajtovi koji označavaju koji su
specijalni tasteri pritisnuti, ne znam napamet šemu, ali ima u helppc-u
i u techhelp-u
Takođe, možeš čitati direktno sa porta 0x60
cccc.223markom,
Nisam znao gde da pitam, pa reko' ajde ovde :)
Skoro sam sa BC-a prešao da programiram u MSC-u, ali mi se ipak više
sviđa Turbo Debugger od onog CodeView-a iz MSC-a 6.0
Da li neko zna da li, i kako, može program preveden MSC-om da se vozi
kroz TD ? Prilično mi je potrebno, tnx :)
cccc.224djelovic,
> Da li neko zna da li, i kako, može program preveden MSC-om da se vozi
> kroz TD ? Prilično mi je potrebno, tnx :)
Jest da ne zaslužuješ odgovor. čak te i treba kazniti zbog gnusne izdaje
Borlanda :), ali ipak:
Uz TD se dobija i mali utility za konverziju CodeView tabela u one pogodne
za TD. Potraži malo.
cccc.225maksa,
>> Izvor Norton Guide ASM.NG, ako si na to mislio. Nadam se da
>> nisam promasio temu tvog pitanja.
>> 0:417h Shift Status
>> 0:418h Extended Shift Status
Nisi promašio, hvala. :)
cccc.226mjova,
> Je l' može neko da kaže kako se detektuje pritisnut Alt
> taster ?
u bios segmentu (0040h), postoji nekoliko promenljivih sa statusom
kontrolnih tastera. one se nalaze na 0040:0017 i 0040:0018.
njihov sadržaj možeš dobiti preko int 16, fn 02 i fn 12.
cccc.227markom,
:: Jest da ne zaslužuješ odgovor. čak te i treba kazniti zbog gnusne izdaje
:: Borlanda :), ali ipak:
Hmm, da su barem približno iste veličine na disku, ostao bih
na BC-u, ali ovako, hmm, ipak je MSC bolji ;)
:: Uz TD se dobija i mali utility za konverziju CodeView tabela u one pogodne
:: za TD. Potraži malo.
Tnx.
cccc.228markom,
:: Uz TD se dobija i mali utility za konverziju CodeView tabela u one pogodne
:: za TD. Potraži malo.
Reply no. 2 ..
Našao sam TDMAP.EXE, ali kad kroz njega proteram dobijeni
MAP fajl, posle dobijem isto što i ranije samo što ne
prijavljuje da program nema symbol table. Ono što je meni
potrebno je da imam sors programa i da ga izvršavam liniju
po liniju, kao u IDE-u. Eh, taj MSC :( :)
Marko
cccc.229dcolak,
│ prijavljuje da program nema symbol table. Ono što je meni
│ potrebno je da imam sors programa i da ga izvršavam liniju
│ po liniju, kao u IDE-u. Eh, taj MSC :( :)
Zašto to ne bi radio u CV?
Sledge DAMMIR!
cccc.230markom,
:: Zašto to ne bi radio u CV?
Zato što mi se više sviđa Turbo Debbuger.
Kao najvažnije je moja prelepa paletica koju CV obavezno
resetuje, a TD ne.
Još stoji pitanje, kako ? :)
-=> MM <=-
cccc.231postmast,
From: panzer@orao.etf.bg.ac.yu (Veselin Mijuskovic)
Subject: Re: CURSES za DOS
Date: Tue, 28 Jun 1994 12:00:02 GMT
In article <772752804.AA02736@setgate.setnet.co.yu> Goran.Turudich@f110.n103.z38.setgate.setnet.co.yu (Goran Turudich) writes:
> BTW, zasto bas naziv CURSES (u prevodu sa engleskog: kletve, prokletstva,
> psovke)?
Verovatno sto je ljudima koji su napravili originalni curses psovanje
bilo najcesce desavana stvar u toku rada na istom ;) U clanku o cursesu ne
pise zasto se tako zove (naslov clanka je Screen updating and Cursor Movement
Optimisation Library). Medjutim, znam kako je nastala; bilo je potrebno da se
napravi skup funkcija ispisa nezavisnih od ispisa da bi se igra rogue mogla
igrati na razlicitim terminalima (nista cudno - valja potsetiti da je ken
napisao prvu verziju Unix-a da bi mogao da igra svoju igru "Space Travel" na
jednom sklepanom PDP-7)
--
Panzer
In real life : Mijuskovic Veselin Internet : panzer@orao.etf.uni-bg.yu
/Meeyoushkowitch Veselyn/ DECnet : UBBG::EMIJUSKO
cccc.232dcolak,
Da li neko zna kako da linkujem .FON fajlove u sam .EXE. Ne želim da
delim .FON fajlove sa .EXE fajlovima :)
Radi se o MSC 6.0...
Sledge DAMMIR!
cccc.234djelovic,
> DA LI NEKO IMA NEKI PROGRAM 386MAX. PROGRAMIRAM U BC++,PA SAM HTEO DA MALO
> ZAVIRIM U MSC KAD ONO TRAZI 386MAX.
386MAX je deo komercijalnog paketa tako da njegova razmena preko Sezama
nije dozvoljena.
cccc.235neman,
> DA LI NEKO IMA NEKI PROGRAM 386MAX. PROGRAMIRAM U BC++,PA
> SAM HTEO DA MALO ZAVIRIM U MSC KAD ONO TRAZI 386MAX.
Ne deri se pre nego saznas da li je to sto trazis PD/SW ili nije ;)
cccc.236markom,
:: DA LI NEKO IMA NEKI PROGRAM 386MAX. PROGRAMIRAM U BC++,PA SAM HTEO DA MALO
:: ZAVIRIM U MSC KAD ONO TRAZI 386MAX.
Kako bre traži 386Max? KOd mene lepo radi i bez njega, do
duše imam qemm, ali ne bi trebalo da ima problema ni sa
HIMEM+EMM386 :)
-=> MM <=-
cccc.237ppekovic,
>> DA LI NEKO IMA NEKI PROGRAM 386MAX. PROGRAMIRAM U BC++,PA SAM HTEO DA MALO
>> ZAVIRIM U MSC KAD ONO TRAZI 386MAX.
386Max je komercijalni softver. Ono što treba za MSC 7.0+ je
DPMI a to imaš i sa QEMM-om i recimo u DOS prozoru pod
Windows-ima.
Paya
cccc.238dekiper,
Da markome, ali on ima verovatno 7.0 ili 8.0 za koje treba DPMI server. MSC-u
6.0 to nije trebalo (a i još uvek ne treba mada mislim ni da ne pravi probleme
ako je neki prisutan). Nego kad smo već kod DPMI-a kod mene je malo nejasna
situacija. Imam instaliran HIMEM.SYS iz Win3.11 i analogni EMM386.EXE. Koliko
ja znam ni jedan od ovih programa ne ume da izigrava DPMI a meni BC++ non-stop
prijavljuje kako već imam instaliran DPMI server. GDE?
Pozdrav, Deki
cccc.239slavisa,
Program zika.exe sadrži u sebi
fopen("zika.exe","w")
i posle toga ide kod u kome sam probao da dopišem još
nešto na kraj "zika.exe". Sistem je krahirao, što i mogu da
razumem, ali je to za posledicu imalo 108k bad sectora
na mom disku.
Svaki komentar je dobrodosao.
cccc.240velar,
HEL EVERYBODY ,
DA LI NEKO MOZDA IMA KODOVE TASTERA .NA PRIMER ESC = Ox1b I TAKO DALJE.
A VAM NI
VELAR !
cccc.241bulaja,
**** new file ****
R:\IBMPC\C\*.*
----------------------
dflat19 zip 144201 D-Flat v19: SAA/CUA user interface C lib, source (DDJ)
cccc.242vmisev,
> Program zika.exe sadrži u sebi fopen("zika.exe","w") i posle toga ide kod
> u kome sam probao da dopišem još nešto na kraj "zika.exe".
A kako si ti to pisao u file? Koje funkcije si koristio? Meni je zbog
I/O operacija krahir'o program gogolj puta :) ali nikad ništa nisam sje*b'o.
A baš sam pitao u nekoj conf, kako može SW da upropasti HW. Aj' bači source,
please :)
Vladimir
P.S. Probaj da pišeš na floppy i posmatraj šta se sa njim događa. Jeftinije
je :)
cccc.244postmast,
From: smilic@breza (Sasa Milic)
Subject: Re: cccc
Date: Wed, 6 Jul 1994 10:34:59 GMT
Slavisa Rajkovic (slavisa@sezam.UUCP) je napisa-la/o:
: Program zika.exe sadrzi u sebi
: fopen("zika.exe","w")
fopen("zika.exe","a")
Sasa
cccc.245postmast,
From: smilic@breza (Sasa Milic)
Subject: Re: cccc
Date: Wed, 6 Jul 1994 18:49:21 GMT
Lazar Velicki (velar@sezam.UUCP) je napisa-la/o:
: DA LI NEKO MOZDA IMA KODOVE TASTERA .NA PRIMER ESC = Ox1b I TAKO DALJE.
Ima. Al' me mrzi da ih sve kucam, pa reci koji ti treba ( mozda neko
ima u file-u ? ).
Sasa
cccc.246slavisa,
> A kako si ti to pisao u file? Koje funkcije si koristio? Meni je zbog
> I/O operacija krahir'o program gogolj puta :) ali nikad ništa nisam
> sje*b'o. A baš sam pitao u nekoj conf, kako može SW da upropasti HW. Aj'
> bači source, please :)
> Vladimir
Pogreših pisalo je fopen(zika.exe,"a")
Program je ortakov a on je source izgubio :(
Reče da nije radio ništa neobično.
cccc.247postmast,
From: broker@setgate.setnet.co.yu (Predrag Supurovic)
Subject: LIB
Date: Wed, 13 Jul 1994 11:29:23
Trazi se dobra biblioteka za komunikacije. Mogu i one za
pisanje DOOR-ova.
broker
... Svuda muskarci i zene - a nigde ljudi.
* Origin: Oreska BBS, UZICE = SF BIBLIOTEKA = SETNet: (38:101/101)
cccc.248postmast,
From: Aleksandar.Markovic@p5.f114.n103.z38.setgate.setnet.co.yu (Aleksandar Markovic)
Subject: door lib
Date: Thu, 14 Jul 1994 01:35:02
* U poruci napisanoj za All, Predrag Supurovic je rekao:
PS>Trazi se dobra biblioteka za komunikacije. Mogu i one za
PS>pisanje DOOR-ova.
Za C postoji Open Doors. Cini mi se da je veoma jednostavan.
Imas takodje i TriDoor v3.00 ali se radi o biblioteci za Pascal.
Pozdrav,
Aca
* Origin: Venik BBS * Smed. Palanka * +381 26 40325 * SetNet: (38:103/114.5)
cccc.249postmast,
From: ak@Osmeh.FON.BG.AC.YU (Aleksandar Kircanski)
Subject: Broken pipe..?
Date: Wed, 20 Jul 1994 01:44:06 GMT
Moze li neko da mi kaze sta znaci kada dobijem gresku tipa
'Broken pipe'?
Hvala..
Aky
cccc.250ppekovic,
>> Moze li neko da mi kaze sta znaci kada dobijem gresku tipa
>> 'Broken pipe'?
Probaj malo konkretnije da opišeš problem jer se greška javlja
u mnogim slučajevima.
Paya
cccc.251sinfos,
> Probaj malo konkretnije da opises problem jer se greska javlja
>u mnogim slucajevima.
Pa ovako, imam nesto ovog tipa, radim sa socketima:
Ovo je f-ja za otvaranje socketa.
int openSock(name,port)
char *name;
int port;
{
int mysock,opt=1;
struct sockaddr_in sin;
struct hostent *he;
he = gethostbyname(name);
if (he == NULL) {
printf("No host found..\n");
exit(0);
}
memcpy((caddr_t)&sin.sin_addr,he->h_addr_list[0],he->h_length);
sin.sin_port = port;
sin.sin_family = AF_INET;
mysock = socket(AF_INET,SOCK_STREAM,0);
opt = connect(mysock,(struct sockaddr *)&sin,sizeof(sin));
return mysock;
}
Ona radi OK, i lepo otvori socket. onda sam hteo nesto da prosledim
tom socketu, sa fjom write().. ovako
int i; i=openSock("host.name",25); /* recimo da koristim smtp port */
i onda, sa write:
write(i,text,len(text)); gde bi text bio recimo string "QUIT"
e tu na write mi javlja Broken Pipe..
hvala
aky
cccc.252smarkov,
> write(i,text,len(text)); gde bi text bio recimo string "QUIT"
Ako ti se dešava samo na SNMP portu, iako ne znam protokol, vrlo
verovatno ti druga strana zatvori konekciju sa close (poslao si QUIT)
što je tipičan uzrok za "Broken Pipe".
cccc.253postmast,
From: smilic@breza (Sasa Milic)
Subject: Re: cccc
Date: Wed, 27 Jul 1994 10:52:55 GMT
Srdan Kosovac (sinfos@sezam.UUCP) je napisa-la/o:
: i onda, sa write:
: write(i,text,len(text)); gde bi text bio recimo string "QUIT"
: e tu na write mi javlja Broken Pipe..
Proveri da li je uspeo connect, da li ne vraca -1. A ako je ok, probaj
umesto write da koristis send(), pa ako ni to nece javi se opet.
Sasa
cccc.254ppekovic,
>> Ako ti se dešava samo na SNMP portu, iako ne znam protokol, vrlo
>> verovatno ti druga strana zatvori konekciju sa close (poslao si QUIT)
>> što je tipičan uzrok za "Broken Pipe".
S obzirom da je port 25, onda nije SNMP nego SMTP. :) Malo se
šalim i cepidlačim, ali da se vratim na konkretan problem. Na
socket-e možeš da gledaš kao na krajeve najobičnijeg pipe-a.
Dakle, iz nekog razloga je veza pukla, ili možda nije bila ni
uspostavljena kako treba? Iz funkcije za otvaranje socket-a sam
primetio da nigde ne proveravaš uspešnost operacija koje izvršavaš
(gethostname?, bind?, socket?,...). Valjalo bi i da ručno probaš
konekciju da vidiš da nije možda u nečem drugom problem. Dakle,
kažeš telnet host 25.
Paya
cccc.255driks,
Treba mi jedan info:
Da li neko ima instaliran BC++ 4.0 na ploci 386/40//128KB i sa 8MB ram-a?
Interesuje me da li se isplati install BC-a na 386-ci sto se tice brzine
startovanja, prevodjenja, itd.
P.S. u Racunarima 100 sam video prikaz paketa, pa me interesuju licna
zapazanja i iskustava.
P.S.2 moze i u mail.
cccc.256driks,
Zna li neko kako da transformisem apsolutni sektor(onako kako ga DOS
vidi) na disketi u head/track/sector (onako kako ga BIOS vidi), ako
je poznat broj glava,traka i sektora na disketi.
Ima valjda neka formula za to. (za obratnu transf. postoji formula, 'al
meni treba bas ova :> ).
'Aje
cccc.257djelovic,
> Da li neko ima instaliran BC++ 4.0 na ploci 386/40//128KB i sa 8MB ram-a?
> Interesuje me da li se isplati install BC-a na 386-ci sto se tice brzine
> startovanja, prevodjenja, itd.
Ja doduše imam malo jaču mašinu, al' svejedno mislim da će BC++ 4.0
sasvim lepo raditi i kod tebe. Miljan je nešto merio i kaže da je
kompilacija jedno dva puta sporija nego kod trojke :(, ali ja držim da su
nova poboljšanja jezika (ANSI stringovi i izuzeci), kao i drastično
olakšano Windows programiranje dovoljni argumenti za prelazak na novu
verziju.
cccc.258slavisa,
Skinuo sam snip9404.zip veliŔine 426989,
prvo sam ga podelio sa split a posle sastavio sa copy /b ... (***)
medjutim ne mogu da ga raspakujem,taŔnije raspakujem nekih 90k
preko NC ili Ŕak ni to preko pkunzip-a javljajuŠi za sve
file-ove koje ne mo×e da raspakuje "Dont know how to handle...".
Ne verujem da je greska kod (***) jer sam isti file preuzeo i sa
drugog BBS u komadu i ima iste simptome.
PRETPOSTAVLJAM da greÜke nema tj. da je problem u nepoznavanju
nekog switch-a ili sl. ali ja sam se predao.
HELP,HELP,HELP,...
cccc.259dejanr,
>> preko NC ili Ŕak ni to preko pkunzip-a javljajuŠi za sve
>> file-ove koje ne mo×e da raspakuje "Dont know how to handle...".
>> Ne verujem da je greska kod (***) jer sam isti file preuzeo i sa
>> drugog BBS u komadu i ima iste simptome.
Zvuči kao da koristiš stari PKZIP 1.10. Uzmi verziju 2.04g i radiće...
PS Postavio sam ti kod na 1250, imao si setovan 852, pa su oni koji
koriste druge rasporede videli u tvojoj poruci kuke i kvake.
cccc.260mjova,
> sasvim lepo raditi i kod tebe. Miljan je nešto merio i
> kaže da je kompilacija jedno dva puta sporija nego kod
> trojke :(, ali ja držim da su
uz malu ogradu: to se sve dešavalo na mašini 386/25/4.
pretpostavljam (mogu samod a nagađam) da je razlika manja za 8Mb
RAMa.
cccc.261driks,
Evo jedno pitanje sto mi stvara konfuziju:
Ako se nevaram far_heap raste od steka nagore ka granici od 1MB.'E sad
zasto ovo dole daje ovakve rezultate?
#include <stdio.h>
#include <alloc.h>
main()
{
/* prevedeno u COMPACT MODEL-u */
printf("near heap: %lu bytes far heap: %lu bytes\n", coreleft(),
farcoreleft() );
}
Rezultat:
near heap: 61504 ─────────┐_____ kako je ovo isto tj. kako je slobodni
far heap: 61504 ─────────┘ far heap tako mali????
^^^^^^^^
HHH
cccc.262driks,
Ha, 'ala sam se zeznuo. Kompajliraop sam u IDE-u, a u
OPTIONS|DEBUGER ima opcija Heap size: 64K (po default-u).
Naravno, startovanjem iz komandne linije dobiju se ocekivani
rezultati.
cccc.263slavisa,
> ZvuŔi kao da koristiÜ stari PKZIP 1.10. Uzmi verziju 2.04g i radiŠe...
1. Bio si u pravu u pitanju je bio bajati pkunzip.
> PS Postavio sam ti kod na 1250, imao si setovan 852, pa su oni koji
> koriste druge rasporede videli u tvojoj poruci kuke i kvake.
2. Greška je nastala jer sam pisao u notepad editoru, a to nisam uzeo
u obzir. Nadam se da je ovo sad razumljivo.
3. Hvala.
cccc.264postmast,
From: dragisha@hobbiton.CO.YU (Dragisa Duric)
Subject: Re: cccc
Date: Sat, 30 Jul 1994 13:18:30 GMT
Stevan Markovic (smarkov@sezam.UUCP) wrote:
: > write(i,text,len(text)); gde bi text bio recimo string "QUIT"
: Ako ti se desava samo na SNMP portu, iako ne znam protokol, vrlo
: verovatno ti druga strana zatvori konekciju sa close (poslao si QUIT)
: sto je tipican uzrok za "Broken Pipe".
Fakemail guru :) se javlja. Helem, SNMP <> SMTP.
cccc.265postmast,
From: Kiro.Velkovski@f108.n108.z38.setgate.setnet.co.yu (Kiro Velkovski)
Subject: Broken Pipe..?
Date: Thu, 28 Jul 1994 01:30:00
AK>From: ak@Osmeh.FON.BG.AC.YU (Aleksandar Kircanski)
AK>Newsgroups: yu.prog.c
AK>Organization: Fakultet Organizacionih Nauka, Beograd
AK>Moze li neko da mi kaze sta znaci kada dobijem gresku tipa
AK>'Broken pipe'?
Premalo prostora u TEMP dir-u?
Kupe
* Origin: Struga BBS +389 96 74074 * Macedonia * SETNet: (38:108/108)
cccc.266postmast,
From: vbjelic@Osmeh.FON.BG.AC.YU (Vladislav Bjelic)
Subject: cccc
Date: Tue, 2 Aug 1994 16:23:26 GMT
Odgovaram malo kasno, ali bolje ikad nego nikad :)))
"ak@Osmeh.FON.BG.AC.YU" jednom prilikom rece:
> Moze li neko da mi kaze sta znaci kada dobijem gresku tipa
> 'Broken pipe'?
Mislim da greska nastaje zato sto connect vraca gresku tipa
"connection refuse", a greska je nastala iz razloga sto si
zatrazio connect na pogresan port...
U sin.sin_port NE stavlja se direktno vrednost porta...
> sin.sin_port = port;
nego:
sin.sin_port = htons(port);
Koliko se secam (ako se dobro secam :) na PC-u funkcija htons(port)
obrne visi i nizi bajt u int-u. Tako da si bez te funkcije zatrazio
connect na port 25*0xFF.
[vb]
cccc.267postmast,
From: dragisha@hobbiton.CO.YU (Dragisa Duric)
Subject: Re: cccc
Date: Wed, 3 Aug 1994 21:05:00 GMT
Vladislav Bjelic (vbjelic@Osmeh.FON.BG.AC.YU) wrote:
: Koliko se secam (ako se dobro secam :) na PC-u funkcija htons(port)
: obrne visi i nizi bajt u int-u. Tako da si bez te funkcije zatrazio
: connect na port 25*0xFF.
Malo cu da cjepidlacim:), ali to je 25*0x100 :)
cccc.268postmast,
From: iznogud@Osmeh.FON.BG.AC.YU (Aleksandar Petrovic)
Subject: Re: cccc
Date: Fri, 5 Aug 1994 12:55:29 GMT
Miljan Jovanovic (mjova@sezam.UUCP) wrote:
: > sasvim lepo raditi i kod tebe. Miljan je nesto merio i
: > kaze da je kompilacija jedno dva puta sporija nego kod
: > trojke :(, ali ja drzim da su
: uz malu ogradu: to se sve desavalo na masini 386/25/4.
: pretpostavljam (mogu samod a nagadam) da je razlika manja za 8Mb
: RAMa.
Razlika je osetno manja sa 8MB RAM-a. Kod mene se programi prevode malo
sporije nego u BC 3.1, ali ne toliko da bi ometali rad. Teskoce nastupaju
sa druge stane, potrebno je nesto vremena da se ovlada alatkom (meniji
su skroz ispremestani, MNOGO vise stvari se podesava pritiskom na desni
taster misa i sl.)
Ja mislim da vredi probati, ako nista drugo zbog izuzetaka (bajna stvar),
a ni kvalitet okruzenja nije za baciti (naravno, svugde u svetu se
podrazumeva da je programerova masina DUPLO BRZA od ciljne masine.
Verovatno bi se u Borlandu zavratili od smeha kad bi culi da neko
radi sa BC++ 4.0 sa 4MB RAM-a. Ta stvar jednostavno nije pravljena
za takvu masinu)
P.S. Obavezno ostavite prekompajlirana zaglavlja. Ubrzanje je drasticno.
--
++
cccc.269driks,
Da li neko zna kako se fajl moze ucitati na far adresu, tj. treba
mi nesto sto ce ovako izgledati: ----------
char far *ptrbuff=(char far *)farmalloc(...)
.............................................
_read(handle, ptrbuff, length);
Pozdrav.
cccc.271cira,
>
> Da li neko zna kako se fajl moze ucitati na far adresu, tj.
> treba mi nesto sto ce ovako izgledati: ----------
>
>
> char far *ptrbuff=(char far *)farmalloc(...)
>
> .............................................
>
> _read(handle, ptrbuff, length);
Pa probaj nesto najprljavije sto sam do sada uradio.
Oko _read... stavi :
dstemp=_DS;
_DS=segment; /*FP_SEG(ptrbuff)*/
_read(handle,FP_OFF(ptrbuff),lenght);
_DS=dstemp;
A mnogo bolje je da koristis _dos_read jer ona vec ima far pointer za data,
za razliku od _read. _dos_read je u borlanda uvezena iz MSC-a.
cccc.272driks,
>> A mnogo bolje je da koristis _dos_read jer ona vec ima far pointer za data,
>> za razliku od _read. _dos_read je u borlanda uvezena iz MSC-a.
Pa... u BC++ 2.0 (koji koristim) nema naredbe _dos_read.
cccc.273postmast,
From: Branislav.Bubanja@f110.n103.z38.setgate.setnet.co.yu (Branislav Bubanja)
Subject: cccc
Date: Tue, 02 Aug 1994 12:52:02
"R>file-ove koje ne mo e da raspakuje "Dont know how to handle...".
"R>Ne verujem da je greska kod (***) jer sam isti file preuzeo i sa
"R>drugog BBS u komadu i ima iste simptome.
Da slucajno nemas PKUNZIP verziju 1.1? Meni se to desavalo kad sam
pokusao da raspakujem fajlove kompresovane sa novim zipom. Ako je to
slucaj kod tebe, sve sto treba da uradis je da uzmes novi ZIP (verzije
1.93 ili 2.04).
___
■ OLX 2.1 TD ■ ŰOÎV~O˝Ů N I├J E ° A!S C-I I▄§ýT@A&G
* Origin: [New Age BBS]*[Beograd]*[+38-11-404-639]*[23-06] (38:103/110)
cccc.274postmast,
From: ak@Osmeh.FON.BG.AC.YU (Aky )
Subject: Re: cccc
Date: Tue, 9 Aug 1994 10:59:30 GMT
Stevan Markovic (smarkov@sezam.UUCP) wrote:
: > write(i,text,len(text)); gde bi text bio recimo string "QUIT"
: Ako ti se desava samo na SNMP portu, iako ne znam protokol, vrlo
: verovatno ti druga strana zatvori konekciju sa close (poslao si QUIT)
: sto je tipican uzrok za "Broken Pipe".
Moguce, ali posle sam probao i sa zatvaranjem socketa na kraju, opet ista greskapozdrav, hvala.
cccc.275postmast,
From: ak@Osmeh.FON.BG.AC.YU (Aky )
Subject: Re: cccc
Date: Tue, 9 Aug 1994 11:02:51 GMT
Pavle Pekovic (ppekovic@sezam.UUCP) wrote:
: Dakle, iz nekog razloga je veza pukla, ili mozda nije bila ni
: uspostavljena kako treba? Iz funkcije za otvaranje socket-a sam
: primetio da nigde ne proveravas uspesnost operacija koje izvrsavas
: (gethostname?, bind?, socket?,...). Valjalo bi i da rucno probas
Da, moguce da nesto ne valja u samoj funkcije openSock(). Provericu
to, mada ne verujem da je tu problem :)
: konekciju da vidis da nije mozda u necem drugom problem. Dakle,
: kazes telnet host 25.
Ovo nije sigurno :)
hvala!
cccc.276postmast,
From: ak@Osmeh.FON.BG.AC.YU (Aky )
Subject: Re: cccc
Date: Tue, 9 Aug 1994 14:59:29 GMT
Sasa Milic (smilic@breza) wrote:
: Proveri da li je uspeo connect, da li ne vraca -1. A ako je ok, probaj
: umesto write da koristis send(), pa ako ni to nece javi se opet.
Uh, upravo otkrih da mi connect f-ja vraca -1. so, ne valja openSock().
Ako iko ima ideju u cemu je problem - thanks :) radim na Osmehu, a
telnet osmeh.fon.bg.ac.yu 25 radi kako treba, narano.
Evo jos jednom fje opensock
int openSock(name,port)
char *name;
int port;
{
int mysock,opt=1;
struct sockaddr_in sin;
struct hostent *he;
he = gethostbyname(name);
2 memcpy((caddr_t)&sin.sin_addr,he->h_addr_list[0],he->h_length);
sin.sin_port = port;
sin.sin_family = AF_INET;
mysock = socket(AF_INET,SOCK_STREAM,0);
opt = connect(mysock,(struct sockaddr *)&sin,sizeof(sin));
return mysock;
}
hvala svima na pomoci.
cccc.277postmast,
From: ak@Osmeh.FON.BG.AC.YU (Aky )
Subject: Re: cccc
Date: Tue, 9 Aug 1994 15:13:18 GMT
Hvala svima, resio sam problem thanks to Vbjelic :)
nadam se ga nisam zagusio sa ovim pitanjima, :)
cccc.278postmast,
From: smilic@breza (Sasa Milic)
Subject: Re: cccc
Date: Fri, 12 Aug 1994 11:36:45 GMT
Aky (ak@Osmeh.FON.BG.AC.YU) je napisao:
1)
: int mysock,opt=1;
^^ Ovo ti ne treba
2)
: memcpy((caddr_t)&sin.sin_addr,he->h_addr_list[0],he->h_length);
Umesto ovog slobodno mozes da pises i
sin.sin_addr.s_addr = *( ( long * ) he->h_addr_list[ 0 ] );
adrese su kod IP uvek 4 byte-a, i h_length je 4.
3)
: sin.sin_port = port;
Probaj
sin.sin_port = htons ( port );
( htons = host to network, short => 16 bita prebacuje iz masinskog u
mrezni format )
4)
: opt = connect(mysock,(struct sockaddr *)&sin,sizeof(sin));
Pre ovoga sin.sin_zero popuni sa '\0'.
Stavi posle connect
perror ( "Posle connect" );
pa javi sta prijavljuje.
Sasa
cccc.279dkrstic,
Molim dobre poznavaoce C-a da obrate pažnju na poruku 1.28 u ovoj konferenciji.
Hvala!
cccc.280postmast,
From: Aleksandar.Glumac@f119.n111.z38.setgate.setnet.co.yu (Aleksandar Glumac)
Subject: citanje grafickih fajlova
Date: Thu, 11 Aug 1994 21:27:02
hi :)
kako da procitam bilo koji graficki
falj (format nevazan) 320x200x256
u borlandovom turbo c++
...[ST] A short cut is the longest distance between two points.
* Origin: ECSTASY BBS * Indjija * 022 53 218 * SETNet: (38:111/119)
cccc.281.bata.,
ŔŔŔ DA LI NEKO MOZDA IMA KODOVE TASTERA .NA PRIMER ESC = Ox1b I
ŔŔŔ TAKO DALJE. A VAM NI
Pa mozes vrlo jednostavno da napises program koji ce da ti vraca kod
tastera koji pritisnes, ako te interesuje poslacu ti..
cccc.282zeljkoj,
Nedavno sam sa FON-a skinuo GNU C kompajler.
Međutim, još nisam uspeo da ga "nateram" da iskompajlira
neki program. Uvek prijavi nešto kao "unknown file type".
U čemu je problem?
cccc.283postmast,
From: Aleksandar.Glumac@f119.n111.z38.setgate.setnet.co.yu (Aleksandar Glumac)
Subject: Yoki me poslao
Date: Fri, 19 Aug 1994 00:17:06
hi:)
Yoki je rekao da mi mozes pomoci
radim u borlandovom turbo c++ i kada pozovem 31H interapt program
zavrsi proces i ostane rezidentan
cemu takav program sluzi i kako da mu posaljem neke promenjljive
kao npr naredbe koje kucam iz dosa ili nortona
hitno bye:)
...[ST] Gossip is when you hear something you like about someone you don't.
* Origin: ECSTASY BBS * Indjija * 022 53 218 * SETNet: (38:111/119)
cccc.285postmast,
From: ps26989d@buefhp.etf.bg.ac.yu (Pajic Srdjan)
Subject: predprocesor
Date: Thu, 25 Aug 1994 12:30:04 GMT
Braco po predprocesoru ;) pomagajte!
Dakle, problem je u sledecem: moze li iz jednog makroa definisati
drugi? Nesto ovako, otprilike:
#define PRVI(A) #define A DRUGI
sto bi kasnije, u programu, izgledalo ovako:
PRVI(nesto) <-- ovo bi predprocesor trebao da expanduje u
#define nesto DRUGI, pa da to i izvrsi...
Naravno, ovo ne radi. Ima li neko bilo kakvu ideju kako bi se ovo moglo
postici?
P.S. Trebalo bi onoj komisiji za razvoj C++-a predloziti da osim raznih
dodataka za sam jezik pogleda nekad i nas ubogi predprocesor... ;)))))
cccc.286postmast,
From: Aleksandar.Glumac@f119.n111.z38.setgate.setnet.co.yu (Aleksandar Glumac)
Subject: pomoc za drajver
Date: Tue, 23 Aug 1994 02:36:00
hi :)
ul-vao sam fajl u oblast programming pod imenom vgadrvr.zip.
hteo sam da posaljem net mail ali nisam zanao kako ??!! Tuzno !
nema veze, samo se nadam da ces ovo procitati i dl-vati moj fajl.do sledeceg
put bye:)
...[ST] Sometimes I sit and think, and sometimes I just sit.
* Origin: ECSTASY BBS * Indjija * 022 53 218 * SETNet: (38:111/119)
cccc.287postmast,
From: Aleksandar.Glumac@f119.n111.z38.setgate.setnet.co.yu (Aleksandar Glumac)
Subject: Lady poslao sam
Date: Wed, 24 Aug 1994 03:47:19
hi:)
poslao sam fajl insusrdr.zip u c-lang.
ti ako mozes cim stignes resi i posalji i kako si ti napravila fontove ako si
uopste?
Dobro, hvala ti i puno pozdrava :)
...[ST] There is more to life than increasing its speed.
* Origin: ECSTASY BBS * Indjija * 022 53 218 * SETNet: (38:111/119)
cccc.288postmast,
From: Aleksandar.Glumac@f119.n111.z38.setgate.setnet.co.yu (Aleksandar Glumac)
Subject: Opet problemi
Date: Thu, 25 Aug 1994 01:15:09
hi:)
opet sam poslao moj fajl jer sam tek sada video da je obrisan.Nalazi se u
oblasti programming i zove sa vgadrv.zip bye:)
...[ST] Warning: Do not reuse tagline. Discard safely after use.
* Origin: ECSTASY BBS * Indjija * 022 53 218 * SETNet: (38:111/119)
cccc.289postmast,
From: Aleksandar.Glumac@f119.n111.z38.setgate.setnet.co.yu (Aleksandar Glumac)
Subject: Greska
Date: Wed, 24 Aug 1994 12:30:22
hi lady:)
kada sam poslao poruku uneo sam pogresno ime fajla a ono glasi vgadrvr.zip.
Izvini ako je bila guzve bye:)
...[ST]
* Origin: ECSTASY BBS * Indjija * 022 53 218 * SETNet: (38:111/119)
cccc.290zeljkoj,
Pošto vidim da nema odgovora, moram da ponovim pitanje:
Zna li neko, zašto GNU C (koji sam skinuo sa FON-a), neće da kompajlira?
Jednostavno napiše nešto kao "Unknown file type". Instalirao sam ga
tačno onako kako piše u doc fajlu. Ja ga pozovem sa gcc moj_prog.c
a on ispiše poruku o grešci. Stvar je hitna!!! I zato molim nekog ko
koristi ovaj kompajler (a znam da takvih ima) da mi što pre odgovori.
Pozdrav, čeljko The Sorcerer
cccc.291postmast,
From: smilic@fon (Sasa Milic)
Subject: Re: cccc
Date: Sat, 27 Aug 1994 17:02:12 GMT
Zeljko Jovanovic (zeljkoj@sezam.UUCP) wrote:
: Nedavno sam sa FON-a skinuo GNU C kompajler.
: Medutim, jos nisam uspeo da ga "nateram" da iskompajlira
: neki program. Uvek prijavi nesto kao "unknown file type".
: U cemu je problem?
g++ program.cxx -o program
Ovo bi trebalo da upali.
Sasa
cccc.292postmast,
From: broker@setgate.setnet.co.yu (Predrag Supurovic)
Subject: Lady poslao sam
Date: Sun, 28 Aug 1994 18:09:00
>poslao sam fajl insusrdr.zip u c-lang.
Izgleda da nisi najbolje razumeo neke stvari oko rada mreze.
Kroz mrezu ne mozes slati datoteke na ovaj nacin, kako si pokusao.
* Origin: Oreska BBS, Uzice = SF BIBLIOTEKA = SETNet: (38:101/101)
cccc.293pyramid,
Da li je neko radio (ili ima source) za rutine za menjanje karakter seta na
VGA. Narocito me zanima (to mi je u stvari i cilj) rutina za misa, koja ce u
text modu dati umesto onog kvadratica lepu graficku strelicu.
cccc.294omega,
Ţ Da li je neko radio (ili ima source) za rutine za menjanje karakter seta na
Ţ VGA. Narocito me zanima (to mi je u stvari i cilj) rutina za misa, koja ce
Ţ u text modu dati umesto onog kvadratica lepu graficku strelicu.
const Font:array[1..4096] of byte=(......);
procedure MenjajFont;
begin
regs.ah:=$11;
regs.al:=0;
regs.bh:=16;
regs.cx:=256;
regs.es:=seg(Font);
regs.bp:=ofs(Font);
regs.dx:=0;
regs.bl:=0;
intr($10,regs);
end;
Nije C, ali shvatices :) Drugo, neces na taj nacin dobiti efekat "graficki"
mis u teskt modu (mislim na ono sto rade Central Point i Norton). Za to
postoji source ali u TP-u (mouselib na Sezamu)...
cccc.295zeljkoj,
> g++ program.cxx -o program
>
> Ovo bi trebalo da upali.
Ni ovo neće da radi! I dalje ispisuje "Unknown file type".
Šta da radim?
cccc.296pyramid,
>> postoji source ali u TP-u (mouselib na Sezamu)...
To je ono sto mi treba (source)! Odgovara i TP...
Hvala
cccc.297jovca.car,
/* Da li je neko radio (ili ima source) za rutine za menjanje karakter seta
/* na VGA. Narocito me zanima (to mi je u stvari i cilj) rutina za misa,
/* koja ce u text modu dati umesto onog kvadratica lepu graficku strelicu.
Pogledaj gtmous13.zip u pascal diru. To je to, ako je verovati opisu.
cccc.298zeljkoj,
> g++ program.cxx -o program
>
> Ovo bi trebalo da upali.
> Sasa
To nije htelo da radi, ali sam video da imam "bajatu" verziju kompajlera,
pa sam sa FON-a skinuo novu, i sada je sve OK. Ali sada imam jedan drugi
problem: nikako mi ne uspeva da datoteku A.OUT prebacim u .EXE.
cccc.299omega,
Ţ Pogledaj gtmous13.zip u pascal diru. To je to, ako je verovati opisu.
To na prvi pogleda savrseno, ali na kraju ispade da nista ne valja :((
Znaci to vredi upotrebljavati samo u 80x25 modu. Ukoliko se koriste
egzoticni modovi (koje npr. setuje cuveni :) VROW ematic-a) sa vise od
25 redova...Onda gtmous ni na sta ne lici :( Ako neko nema vec resenje,
da prionem na menjanje source-a onog mouselib-a?
cccc.300postmast,
From: panzer@orao.etf.bg.ac.yu (Veselin Mijuskovic)
Subject: Re: cccc
Date: Thu, 1 Sep 1994 11:50:57 GMT
In article <sezam$cccc:01.119.2491@sezam> "Zeljko Jovanovic" <zeljkoj@sezam.UUCP> writes:
> > g++ program.cxx -o program
> >
> > Ovo bi trebalo da upali.
> Ni ovo nece da radi! I dalje ispisuje "Unknown file type".
> Sta da radim?
Nisam radio sa GNU C/C++ na DOS-u, ali djgpp je varijanta standardnog
GNU C/C++ paketa za UNIX i VMS. Na tim platformama extenzije c++ source fajlova
su ".cc" odnosno ".C" (ovo zadnje samo na UNIX-ima). Header extenzije su
standardne, tj. ".h" sa sve jezike koje GNU C/C++ pokriva.
--
Panzer
In real life : Mijuskovic Veselin Internet : panzer@orao.etf.uni-bg.yu
/Meeyoushkowitch Veselyn/ DECnet : UBBG::EMIJUSKO
cccc.301postmast,
From: smilic@fon (Sasa Milic)
Subject: Re: cccc
Date: Thu, 1 Sep 1994 13:10:15 GMT
Zeljko Jovanovic (zeljkoj@sezam.UUCP) wrote:
: > g++ program.cxx -o program
: >
: > Ovo bi trebalo da upali.
: Ni ovo nece da radi! I dalje ispisuje "Unknown file type".
: Sta da radim?
Jel mozes program da kompajliras na fon-u ili osmehu ? Verovatno nisi
dobro instalirao gcc. Cini mi se da pri instalaciji nisi odredio
ekstenzije koje zelis da gcc podrzava, pa zato ne prepoznaje ni .cxx
ni .c .
Sasa
cccc.302ppekovic,
>> To nije htelo da radi, ali sam video da imam "bajatu" verziju kompajlera,
>> pa sam sa FON-a skinuo novu, i sada je sve OK. Ali sada imam jedan drugi
>> problem: nikako mi ne uspeva da datoteku A.OUT prebacim u .EXE.
Kad ništa ne pomaže, pročitaj uputstvo :) Izvršnu verziju
startuješ preko onog ekstendera. žini mi se da se zove go32. A
možeš i EXE da napraviš uz pomoć programa go32exe ili tako nešto.
Pogledaj u bin dir-u.
Paya
cccc.303zeljkoj,
> Kad ništa ne pomaže, pročitaj uputstvo :) Izvršnu verziju
> startuješ preko onog ekstendera. žini mi se da se zove
> go32. A možeš i EXE da napraviš uz pomoć programa go32exe ili
> tako nešto. Pogledaj u bin dir-u.
OK, sada radi. Hvala.
cccc.304.bdd.,
Zeza me paleta kada pucam .bmp na ekran.
Sa slikama koje nacrtam iz PaintBrush-a sve je u redu.
Međutim, sa slikama iz PhotoPainta ili konvertovanim
GIF-ovima i sl. nema blage veze sa životom.
Evo sorsa i par slika pa ako je neko voljan da pomogne...
Slike su 128 x 128 u 256 boja. Radi se o MSC 6.00, i
uzgred kako iz dotičnog postaviti 640 x 480 u 256 boje.
Bogi
pxx.arjcccc.305omega,
Ţ uzgred kako iz doticnog postaviti 640 x 480 u 256 boje.
Ako imas SVGA BGI drajvere, nema problema. Ako hoces peske to da radis,
moras da imas neko uputstvo za tvoju karticu, a i moras da znas kako
ces da radis sa tim modom, jer nije bas isto kao sa standardnim BIOS-ovim.
Preporucujem VGADOC i SVGABGI (mislim da oba imas na Sezamu).
cccc.306omega,
Zasto u BC++ ne moze
asm les si,[a]
vec mora direktno
_ES=FP_SEG(a);
_SI=FP_OFF(a);
gde vazi: char *a;
Verujem da ipak moze preko asm-a, samo kako?
cccc.307mmitrovic,
Ů█▀█Ţ Zeza me paleta kada pucam .bmp na ekran.
mislim da znam u čemu je problem, jer sam se i ja zezao sa tim.
Verovatno ti je slika mnogo svetlija i sa zaje*anim bojama. Fora je u
tome što neki programi pišu palete se RGB u opsegu od 0..255, dok kad
pucaš na ekran VGA kartica dopušta samo opseg do 0..63, dakle sledi ti
jedno konvertovanje tipa
novaboja=(staraboja*63)/255; naravno zaokruženo na bajt.
cccc.308.ken.,
Kako na COM portu mogu ici brzine preko 9600 (lap-link ide i do 115200)
Preko biosa koliko sam ja shvatio ne moze vise od 9600
Gde je caka?
cccc.309omega,
Ţ novaboja=(staraboja*63)/255; naravno zaokruzeno na bajt.
Novaboja=staraboja>>2 je ok.
cccc.310zeljkoj,
> Zeza me paleta kada pucam .bmp na ekran.
>
> Sa slikama koje nacrtam iz PaintBrush-a sve je u redu.
> Međutim, sa slikama iz PhotoPainta ili konvertovanim
> GIF-ovima i sl. nema blage veze sa životom.
Imam isti problem (samo što je moj program u MS QBX PDS 7.1). Pošto
ne znam kako da podesim paletu, ja lepo učitam sliku u Neo Paint (ima
ovde na Sezamu), učitam standardnu 256 color paletu i snimim sliku.
Slika naravno ispadne malo ružnija, (pošto se koristi samo osnovnih
256 boja), ali i dalje dovoljno dobro izgleda. Onda je lepo učitam iz
mog programa. Ovo sve važi za rezoluciju 320 x 200. 640 x 480 može
samo u 16 boja. Najbolje pređi na Borlandov C ;)). Onda ti samo treba
neki SVGA BGI drajver, a toga ima ovde :).
cccc.311omega,
Ţ Imam isti problem (samo sto je moj program u MS QBX PDS 7.1). Posto
Ja nemam nikakvih problema :) VPIC rules! Ako i sa njim imate problema,
javite i podrobnije opisite sta vas muci.
cccc.312smiloradovic,
)> Zeza me paleta kada pucam .bmp na ekran.
)>
)> Sa slikama koje nacrtam iz PaintBrush-a sve je u redu.
)> Međutim, sa slikama iz PhotoPainta ili konvertovanim
)> GIF-ovima i sl. nema blage veze sa životom.
)>
)> Evo sorsa i par slika pa ako je neko voljan da pomogne...
Greška je bila u postavljanju palete. Nemam dokumentaciju za MSC,
ali imam utisak da ono tvoje _remappalette menja samo prvih 16 boja (a
možda samo format tabele nije dobar). Zato sam imao nešto drugo -
direktan poziv BIOS funkcije za postavljanje palete, koja zahteva
tabelu dužine 768 bajta za postavljanje palete. Usput sam ubacio i
poziv za postavljanje tacke - nije neophodno, ali ne smeta :),
postavljanje video moda (jeste neophodno za režime preko 13h), kao i
čitanje dimenzija slike. Naravno, slika i dalje mora da bude u 256
boja.
)> Slike su 128 x 128 u 256 boja. Radi se o MSC 6.00, i
)> uzgred kako iz dotičnog postaviti 640 x 480 u 256 boje.
Zavisi koju graf. karticu imaš. Za Trajdenta, umesto _MRES256itd ubaci
0x5d, a za 800x600 0x5e.
Stojan
pxxx.arjcccc.313.bdd.,
>> novaboja=(staraboja*63)/255; naravno zaokruženo na bajt.
Svaka čast, majstore. Ovo me je zezalo jedno nedelju dana. Sada
radi ko švajcarski sat. Hvala.
Bogi
cccc.314evlad,
>> Preko biosa koliko sam ja shvatio ne moze vise od 9600
>> Gde je caka?
U 16450 i 16550 i 16550AF:
(onaj 16550 bez AF ima hardware gresku kod fifo registra)
(* THE ASYNCHRONOUS COMMUNICATION ADAPTER *)
(* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *)
(* The Registers of the 8250,16550 Asynchronous Communication Element *)
(* ================================================================== *)
(* *)
(* Recieve Buffer / Transmitter Holding Register port 0x3f8 0x2f8 *)
(* 0-7 8-bit data character *)
(* *)
(* Interrupt Enable Register port 0x3f9 0x2f9 *)
(* 0 Recieved data available *)
(* 1 Transmitter holding register empty *)
(* 2 Receiver line status *)
(* 3 Modem status *)
(* 4-7 (unused) *)
(* *)
(* Interrupt Identification Register port 0x3fa 0x2fa *)
(* 0 Interrupt pending (0 = true, 1 = false) *)
(* 1-2 Interrupt type *)
(* 11 = Receiver line status (OE, PE, FE, BI) *)
(* 10 = Received data available (DR) *)
(* 01 = Transmitter holding register empty (THRE) *)
(* 00 = Modem status (DCTS, DDSR, RI, DDCD) *)
(* 3-7 (unused) *)
(* *)
(* Line Control Register port 0x3fb 0x2fb *)
(* 0 WLS0 Word length select *)
(* 1 WLS1 Word length select *)
(* 00 == 5 bits *)
(* 01 == 6 bits *)
(* 10 == 7 bits *)
(* 11 == 8 bits *)
(* 2 STB Number of stop bits *)
(* 0 == 1 stop bit *)
(* 1 == 2 stop bit *)
(* 3 PEN Parity enable *)
(* 4 EPS Even parity select *)
(* 10 == Undefined *)
(* 00 == No parity *)
(* 01 == Odd parity *)
(* 11 == Even parity *)
(* 5 SP Stick parity *)
(* 6 BRK Set break *)
(* 7 DLAB Divisor latch access bit *)
(* *)
(* Modem Control Register port 0x3fc 0x2fc *)
(* 0 DTR Data terminal ready *)
(* 1 RTS Request to send *)
(* 2 OUT1 (not connected) *)
(* 3 OUT2 Enable interrupt buffer *)
(* 4 LOOP Loopback (CTS, DSR, DCD, RI = DTR, RTS, OUT1, OUT2) *)
(* 5-7 (unused) *)
(* *)
(* Line Status Register port 0x3fd 0x2fd *)
(* 0 DR Data ready *)
(* 1 OE Overrun error *)
(* 2 PE Parity error *)
(* 3 FE Framing error *)
(* 4 BI Break interrupt *)
(* 5 THRE Transmitter holding register empty *)
(* 6 TSRE Transmitter shift register empty *)
(* 7 (always zero) *)
(* *)
(* Modem Status Register port 0x3fe 0x2fe *)
(* 0 DCTS Delta clear to send *)
(* 1 DDSR Delta data set ready *)
(* 2 TERI Trailing edge ring indicator *)
(* 3 DDCD Delta data carrier detect *)
(* 4 CTS Clear to send *)
(* 5 DSR Data set ready *)
(* 6 RI Ring indicator *)
(* 7 DCD Data carrier detect *)
(* *)
(* Note : The port addresses are shown as COM1 first, then COM2 *)
(* *)
(* Divisor Latch Low Byte port 0x3f8 0x2f8 *)
(* Divisor Latch High Byte port 0x3f9 0x2f9 *)
(* *)
(* Example: *)
(* Divisor = 115200 / BaudRate *)
(* *)
(* Baud Rate DLHB DLLB *)
(* 50 0x09 0x00 *)
(* 75 0x06 0x00 *)
(* 110 0x04 0x17 *)
(* 134 0x03 0x59 *)
(* 150 0x03 0x00 *)
(* 300 0x01 0x80 *)
(* 600 0x00 0xC0 *)
(* 1200 0x00 0x60 *)
(* 1800 0x00 0x40 *)
(* 2000 0x00 0x3A *)
(* 2400 0x00 0x30 *)
(* 3600 0x00 0x20 *)
(* 4800 0x00 0x18 *)
(* 7200 0x00 0x10 *)
(* 9600 0x00 0x0C *)
(* 19200 0x00 0x06 *)
(* 38400 0x00 0x03 *)
(* 57600 0x00 0x02 *)
(* 115200 0x00 0x01 *)
(* *)
(*************************************************************************)
Jasno ?
cccc.315ognjen,
)-> novaboja=(staraboja*63)/255; naravno zaokruzeno na bajt.
Hmmm... 0..255 = 256, 0..63 = 64 boje, znaci krace je
novaboja = staraboja / 4
cccc.316pedjak,
> Preko biosa koliko sam ja shvatio ne moze vise od 9600
> Gde je caka?
Caka je u tome što se brzina postavlja direktno preko portova.
cccc.317mmitrovic,
Ů█▀█Ţ Novaboja=staraboja>>2 je ok.
Silly of me, :)
naravno da može. Neviđena glupost s moje strane. :)
cccc.318omega,
Da li se za alociranje preko huge pointera koristi farmalloc?
I da, kako da ucitam blok od recimo 150kb u tako alociran
prostor? Probah preko fread i nesto ne ide...
cccc.319vcalic,
>> Da li se za alociranje preko huge pointera koristi farmalloc?
>> I da, kako da ucitam blok od recimo 150kb u tako alociran
>> prostor? Probah preko fread i nesto ne ide...
žini mi se da farmalloc ne alocira memoriju u jednom kontinualnom
bloku. Probaj sa farcalloc, mislim da će raditi.
Vlada
cccc.320postmast,
From: ps26989d@buefhp.etf.bg.ac.yu (Pajic Srdjan)
Subject: Windows / memorija
Date: Tue, 13 Sep 1994 11:40:54 GMT
Ovih dana sam poceo da prtcham po Windowsima, pa mi ne zamerite na
neiskustvu...
Zanimaju me dve stvari:
1) Rad sa memorijom. Koliko sam uspeo da ukopcam, sve ide preko GlobalAlloc()
i LocalAlloc() funkcija, pa onda petljanje sa premestanjem blokova memorije,
itd. To valjda radi i u standardnom i u enhansed modu. E, mene zanima da li
se i u 386 Enhansed modu moram sa time da se davim? Imam li tamo flat
memoriju? Ako toga nema u Win 3.1, ima li u Win NT (tj. flat memorijski
model), ili u Win32s ?
2) Kako da iz Win aplikacije pokrenem drugu aplikaciju? Znam da je pitanje
trivijalno, al' za system() u helpu pise da ne moze da se koristi
pod Windowsima... :(
cccc.321postmast,
From: smilic@fon (Sasa Milic)
Subject: Re: Windows / memorija
Date: Tue, 13 Sep 1994 12:05:25 GMT
Pajic Srdjan (ps26989d@buefhp.etf.bg.ac.yu) wrote:
: Ovih dana sam poceo da prtcham po Windowsima, pa mi ne zamerite na
: neiskustvu...
: Zanimaju me dve stvari:
: 1) Rad sa memorijom. Koliko sam uspeo da ukopcam, sve ide preko GlobalAlloc()
: i LocalAlloc() funkcija, pa onda petljanje sa premestanjem blokova memorije,
: itd. To valjda radi i u standardnom i u enhansed modu. E, mene zanima da li
: se i u 386 Enhansed modu moram sa time da se davim? Imam li tamo flat
: memoriju? Ako toga nema u Win 3.1, ima li u Win NT (tj. flat memorijski
: model), ili u Win32s ?
Moras i u 386 enh. modu time da se bavis. U principu mozes da
koristis i malloc() i sl. iz C-a, ali ako koristis Windows
alokaciju sistem ce moci da radi relokaciju blokova koje si
alocirao (pod uslovom da nisi flegovima iskljucio). Ti nemas sta
da se brises oko relokacije ili kompakcije, ali svaki put kad
hoces da radis sa tim blokom moras da preko hendla zatrazis
adresu (pri cemu ga sistem fiksira u memoriji), a kad ti
privremeno netreba da ga odblokiras (pod uslovom da u bloku
nema pointera; u tom slucaju kod alokacije moras da kazes da
blok ne sme da se pomera).
U NT-u bi trebalo da bude flat m.m., ali bolje neka napise neko
ko je radio sa time.
: 2) Kako da iz Win aplikacije pokrenem drugu aplikaciju? Znam da je pitanje
: trivijalno, al' za system() u helpu pise da ne moze da se koristi
: pod Windowsima... :(
Imas nesto kao Exec(), ne mogu sad da se setim, al' ako ti niko
ne odgovori do sutra, smatraj da cu ti ja odgovoriti.
Sasa
cccc.322djelovic,
> 1) Rad sa memorijom. Koliko sam uspeo da ukopcam, sve ide preko GlobalAlloc()
> i LocalAlloc() funkcija, pa onda petljanje sa premestanjem blokova memorije,
> itd. To valjda radi i u standardnom i u enhansed modu. E, mene zanima da li
> se i u 386 Enhansed modu moram sa time da se davim? Imam li tamo flat
> memoriju? Ako toga nema u Win 3.1, ima li u Win NT (tj. flat memorijski
> model), ili u Win32s ?
U 386Enh modu ne moraš da razmišljaš o tome, već možeš da koristiš
standardno malloc () i free (), mada to zavisi i od kompajlera koji koristiš.
Flat memorijski model još uvek nemaš.
> 2) Kako da iz Win aplikacije pokrenem drugu aplikaciju? Znam da je pitanje
> trivijalno, al' za system() u helpu pise da ne moze da se koristi
> pod Windowsima... :(
WinExec.
cccc.323smarkov,
> Da li se za alociranje preko huge pointera koristi farmalloc?
> I da, kako da ucitam blok od recimo 150kb u tako alociran
> prostor? Probah preko fread i nesto ne ide...
Za prostor duzi od 64k mora se upotrebuti __halloc. Za ispravnu pointersku
aritmetiku ptr je sa __huge kvalifikatorom (inace bi se "vrteo" unutar 64k).
Dole je (nadam se :) ) working example :
/* Msc C */
#define OVER64K_BUFFLEN (150*1024L)
#define READ_AT_ONCE (4*1024)
char __huge *hPtr;
int remain;
hPtr = __halloc(OVER64K_BUFFLEN, 1);
for(remain=OVER64K_BUFFLEN; remain>0; ) {
n = fread(hPtr, 1, READ_AT_ONCE, fp);
hPtr+=n;
remain-=n;
}
pozdrav, smarkov
cccc.324omega,
Ţ Cini mi se da farmalloc ne alocira memoriju u jednom kontinualnom
Ţ bloku. Probaj sa farcalloc, mislim da ce raditi.
Ne, daje potpuno iste rezultate. U medjuvremenu sam otkrio u cemu
je stos :) Huge pointer MORA da se definise u okviru main(), i
takodje, MORA da se upotrebljava read, a ne fread. To su bar moja
zapazanja...
A da, ne rekoh zasto je huge pointer neverovatno zgodan za upravljanje
velikim blokovima - moze jednostavno da se ikrementira, bez ikakvog
razmisljanja o segmentima.
cccc.325omega,
Ţ Za prostor duzi od 64k mora se upotrebuti __halloc.
E sad, kad bih ja znao koji je ekvivalent u BC++ :( Pretpostavljam
farcalloc. Ja sam probao (ne tvoj primer) sa farmalloc i radilo je!?
Btw, za sta sluze jedna donja crta, odnosno dve donje crte pre imena
funkcija? Mislim, obicno sve funkcije postoje u tri oblika: __f. _f i f.
U cemu je stos?
P.S. U svakom slucaju, hvala.
cccc.326vcalic,
>> 1) Rad sa memorijom. Koliko sam uspeo da ukopcam, sve ide preko
>> GlobalAlloc() i LocalAlloc() funkcija, pa onda petljanje sa premestanjem
>> blokova memorije, itd. To valjda radi i u standardnom i u enhansed modu.
>> E, mene zanima da li se i u 386 Enhansed modu moram sa time da se davim?
>> Imam li tamo flat memoriju? Ako toga nema u Win 3.1, ima li u Win NT (tj.
>> flat memorijski model), ili u Win32s ?
GlobalAlloc ti služi za alokaciju memorije sa tzv. Global Heap-a. To
je dakle cela raspoloživa memorija uključujući i virtuelnu. LocalHeap se
odnosi na data segment (ako sam dobro shvatio, ispravite me) same aplikacije,
što znači da s njim može da se alocira do 64K. To je slučaj kod Win 3.1, dok
se kod Win NT i Chicago ove dve funkcije ponašaju isto. Za flat ne bih znao da
ti kažem, koliko sam shvatio Win32 API ga podržava (ne i Win32s), tj. NT i
Chicago. Pod Win 3.1 maksimalna količina memorije koju 386+ mogu da adresiraju
"u komadu" je 16M, dok je 286-ici raspoloživo 1M.
>> 2) Kako da iz Win aplikacije pokrenem drugu aplikaciju? Znam da je pitanje
>> trivijalno, al' za system() u helpu pise da ne moze da se koristi
>> pod Windowsima... :(
Vidi funkciju WinExec.
Vlada
cccc.327omega,
Da li na neki nacin mogu da deklarisem promenljivu, ali ne po Intelovom
formatu (prvo low byte, pa high) vec po obrnutom, Motorolinom - prvo
high byte, pa low byte. Ako ne, kako na najbrzi nacin transformisati
postojecu promenljivu (int ili long) u tako nesto?
cccc.328mjova,
> Ne, daje potpuno iste rezultate. U medjuvremenu sam otkrio
> u cemu je stos :) Huge pointer MORA da se definise u
> okviru main(), i takodje, MORA da se upotrebljava read, a
> ne fread. To su bar moja zapazanja...
mislim da grešiš. sad, ja koristim borland c, ali nikad nisam
MORAO da deklarišem huge pointer u okviru neke funkcije da bi
radio. naime, ti možeš da obaviš deklaraciju gde god hoćeš, i ne
sme biti problema.
drugo, read() uporno izbegavam jer mi se upotreba tog skupa
funkcija gadi ;). zezam se, read ima prednost samo ako ti se sviđa
skup parametara open() funkcije, inače mnogo su bolje f...() jer
su baferisane. ponavljam ti da nikad nisam imao ovakvih problema.
razlog zašto ne možeš da učitaš 150kb u jednom cugu leži u DOSu.
DOS ne dozovljava blokove veće od 0xFFF0! ako ti treba više
podataka, onda čitaj redom u više iteracija.
cccc.329mjova,
> E sad, kad bih ja znao koji je ekvivalent u BC++ :(
> Pretpostavljam farcalloc. Ja sam probao (ne tvoj primer)
> sa farmalloc i radilo je!?
farmaloc() može alocirati kontinualni blok dužine ograničene
slobodnim prostorim na "daljoj gomili" ;).
problem koji se tebi javljao možda je uzrokovan time da nisi
naglasio tip parametra funkcije farmalloc(). dakle, treba:
huge *kaća= (huge *)farmaloc(150*1024L);
u predloženom primeru (koji ti je radio) imaš baš to.
cccc.330omega,
Nesto sam bese pricao o ovome programu, kako ima NEVEROVATNU masku
(kao Windows!!!), a i sam program je vise nego odlican. Delo domacih autora.
Obavezno pogledajte.
FONT MAKER verzija 3.00
1994. godina
-----------------------
A sad evo nekoliko zivih reci na nasem jeziku, a u vezi sa Font Maker-om.
Font Maker je delo dvojice 17-godisnjaka iz Nisa - Ivana Jocica i Miodraga
Djordjevica. Treca, pred vama prisutna verzija ovog programa je posledica
polugodisnjeg rada i njen SOURCE iznosi oko 14000 linija. Program je pisan
u MICROSOFT C 6.00 jeziku.
fm30.zipcccc.331omega,
Ţ mislim da gresis. sad, ja koristim borland c, ali nikad nisam
Iskreno, i ja se nadam da gresim :) Ajde sve cu ja lepo to da proverim,
pa cu da javim :)
Ţ razlog zasto ne mozes da ucitas 150kb u jednom cugu lezi u DOSu.
Ţ DOS ne dozovljava blokove vece od 0xFFF0! ako ti treba vise
Ţ podataka, onda citaj redom u vise iteracija.
Ma ok, znao sam za to...
cccc.332omega,
Ţ problem koji se tebi javljao mozda je uzrokovan time da nisi
Ţ naglasio tip parametra funkcije farmalloc(). dakle, treba:
Ţ
Ţ huge *kaca= (huge *)farmaloc(150*1024L);
Jesam. A kada sam huge *kaca prebacio UNUTAR main(), sve je proradilo!
cccc.333dejanr,
>> Nesto sam bese pricao o ovome programu, kako ima NEVEROVATNU masku
>> (kao Windows!!!), a i sam program je vise nego odlican. Delo domacih autora.
>> Obavezno pogledajte.
Možeš li reći nekoliko reči o tome šta program radi? Edituje fontove?
Koje?
cccc.334postmast,
From: iznogud@Osmeh.FON.BG.AC.YU (Aleksandar Petrovic)
Subject: Re: Windows / memorija
Date: Wed, 14 Sep 1994 10:14:21 GMT
Sasa Milic (smilic@fon) wrote:
: Moras i u 386 enh. modu time da se bavis. U principu mozes da
Pa koja je onda razlika, sa stanovista programera, izmedju
286 i 386 moda?
--
++
cccc.335postmast,
From: smilic@fon (Sasa Milic)
Subject: Re: Windows / memorija
Date: Wed, 14 Sep 1994 12:19:13 GMT
Pajic Srdjan (ps26989d@buefhp.etf.bg.ac.yu) wrote:
: 2) Kako da iz Win aplikacije pokrenem drugu aplikaciju? Znam da je pitanje
Ovo je iz helpa iz BC++ 2.0:
WinExec
=======
Syntax WORD WinExec(lpCmdLine, nCmdShow)
This function executes the Windows or non-Windows application
identified by the lpCmdLine parameter. The nCmdShow parameter
specifies the initial state of the application's main window when it
is created.
Parameter Type/Description
lpCmdLine LPSTR Points to a null-terminated character string
that contains the command line (filename plus
optional parameters) for the application to be
executed. If the lpCmdLine string does not contain a
directory path, Windows will search for the
executable file in this order:
1. The current directory
2. The Windows directory (the directory containing
WIN.COM); the GetWindowsDirectory function obtains
the pathname of this directory
3. The Windows system directory (the directory
containing such system files as KERNEL.EXE); the
GetSystemDirectory function obtains the pathname of
this directory
4. The directories listed in the PATH environment
variable
5. The list of directories mapped in a network
If the application filename does not contain an
extension, then .EXE is assumed.
nCmdShow int Specifies how a Windows application window is to
be shown. See the description of the ShowWindow
function for a list of the
acceptable values for the nCmdShow parameter. For a
non-Windows application, the PIF file, if any, for
the application determines the window state.
Return Value
The return value specifies whether the function was
successful. If the function was successful, the return value is
greater than 32. Otherwise, it is a value less than 32 that
specifies the error. The following list describes the error values
returned by this function:
Value Meaning
0 Out of memory.
2 File not found.
3 Path not found.
5 Attempt to dynamically link to a task.
6 Library requires separate data segments for each
task.
10 Incorrect Windows version.
11 Invalid .EXE file (non-Windows .EXE or error in .EXE
image).
12 OS/2 application.
13 DOS 4.0 application.
14 Unknown .EXE type.
15 Attempt in protected (standard or 386 enhanced) mode
to load an .EXE created for an earlier version of
Windows.
16 Attempt to load a second instance of an .EXE
containing multiple, writeable data segments.
17 Attempt in large-frame EMS mode to load a second
instance of an application that links to certain
nonshareable DLLs already in use.
18 Attempt in real mode to load an application marked
for protected mode only.
Comments
The LoadModule function provides an alternative method for
executing a program.
-----
Usput, imam u ascii file-u ceo help o windows-ima 3.0 (izvadjeno iz BC++ 2.0),
pa ako ima zainteresovanih ...
Sasa
cccc.336djelovic,
> Usput, imam u ascii file-u ceo help o windows-ima 3.0 (izvadjeno iz BC++
> 2.0), pa ako ima zainteresovanih ...
Molio bih te da to ne ostavljaš ovde, jer se time krši zakon o kopirajtu.
BTW, kad smo kod vađenja stvari iz helpa, zna li ko dobar način da se neka
veoma velika slika izvadi iz helpa? Svi help dekompajleri za sada vade samo
tekst, a ja bih voleo da izvadim neke od dijargrama hijerarhije klasa, i da ga
zalepim na zid kao referencu.
cccc.337omega,
Ţ Mozes li reci nekoliko reci o tome sta program radi? Edituje fontove?
Ţ Koje?
To je zapravo biblioteka funkcija za manipulisanje svim i svacim - fontovima,
memorijom, stilovima pisanja i sl. Edituje sopstveni tip fontova. Ima i neke
lude efekte - ispisivanje slova u obliku sinusoida i sl.! Ko ne skine,
zazalice ;) Ovo sam cut&paste iz demo.c:
This is a demonstration of WRITE.LIB library and its wonderful possibilities.
There are many reasons why you should have to use this base of functions.
Easier using, different style of writing, excellent manipulating with memory,
and multi color editing are one of them. Font editor for this nice fonts is
Font Maker version 3.00 - it gaves the former possibilities and much more
(fonts for text mode, for example). Just amazing!!! If you want to do the
right thing and start to use that library, you can see the source of this
program (VGADEMO.C) and batch file that makes VGADEMO.EXE - MAKEDEMO.BAT.
It's so simple, you'll see! One of the greatest news is that it's enabled
to use color fonts. Until now, you could only dream beautiful multi - color
font from your favourite games, but now - it is real.
cccc.338omega,
Ţ 64k). Dole je (nadam se :) ) working example :
Malo sam preradio za BC, ali uglavnom je bas kao sto si naveo:
#define OVER64K_BUFFLEN (150*1024L)
#define READ_AT_ONCE (4*1024)
char huge *hPtr;
int remain;
hPtr = (huge *)farmalloc(OVER64K_BUFFLEN);
for(remain=OVER64K_BUFFLEN; remain>0; ) {
n = fread(hPtr, 1, READ_AT_ONCE, fp);
hPtr+=n;
remain-=n;
}
hPtr-=OVER64K_BUFFLEN;
//^^^^^^^^^^^^^^^^^^^^^
// ovaj deo obavezno, da bi pointer pokazivao na pocetak bafera
cccc.339vcalic,
>> Molio bih te da to ne ostavljaš ovde, jer se time krši zakon o kopirajtu.
>> BTW, kad smo kod vađenja stvari iz helpa, zna li ko dobar način da se neka
>> veoma velika slika izvadi iz helpa?
Jesi li probao da u samom WinHelp-u kopiraš sve u Clipboard?
Ili, beše, postoji neko ograničenje?
Vlada
cccc.342djelovic,
> Jesi li probao da u samom WinHelp-u kopiraš sve u Clipboard?
WinHelpov copy dijalog prihvata samo tekst - slike preskače.
cccc.343mjova,
> hPtr = (huge *)farmalloc(OVER64K_BUFFLEN);
> hPtr-=OVER64K_BUFFLEN;
> //^^^^^^^^^^^^^^^^^^^^^
> // ovaj deo obavezno, da bi pointer pokazivao na pocetak
> bafera
ono što mogu da primetim, to je da ova koncepcija može dovesti do
zbrlja. naime, ako se memorija alocira pomoću neke od ..maloc..()
funkcija, onda vektor na odovjenu memoriju:
hPtr = (huge *)farmalloc(OVER64K_BUFFLEN);
ne treba menjati! originalnu vrednost treba čuvati, a drugim
vektorom se šetati po memoriji.
cccc.344mjova,
> Da li na neki nacin mogu da deklarisem promenljivu, ali ne
> po Intelovom formatu (prvo low byte, pa high) vec po
> obrnutom, Motorolinom - prvo
direktno ne, ali ne vidim razlog da ne napraviš neki klasu u
C++-u. tamo je to tako lako izvodljivo.
cccc.345mjova,
> Usput, imam u ascii file-u ceo help o windows-ima 3.0
> (izvadjeno iz BC++ 2.0), pa ako ima zainteresovanih ...
iako je pitanje autorskih prava rešeno ;), treba naglasiti da
postoje određene stvari koje su u win 3.1 drugačije. preporučujem
ipak help iz bcc 3.x+.
cccc.346omega,
Ţ Da li na neki nacin mogu da deklarisem promenljivu, ali ne po Intelovom
Ţ formatu (prvo low byte, pa high) vec po obrnutom, Motorolinom - prvo
Ţ high byte, pa low byte. Ako ne, kako na najbrzi nacin transformisati
Ţ postojecu promenljivu (int ili long) u tako nesto?
Ja sam uradio na asm-u, pa, mozda neko ipak zna kako direktno na C-u
(mislim bez uvodjenja promenlivih). Mozda postoji neka funkcija?
void SwapUnsignedLong(unsigned long *number)
{
asm {
push es
les di, dword ptr number
mov ax, es:[di]
mov bl, ah
mov bh, al
mov ax, es:[di+2]
mov es:[di+2],bx
mov bl, ah
mov bh, al
mov es:[di],bx
pop es
}
}
cccc.347omega,
Hm, ovoga puta nisam ja kriv (valjda?) ;)
Zasto ne radi:
fseek(dat, -Unazad, SEEK_CUR);
nego mora
fseek(dat, ftell(dat)-Unazad, SEEK_SET);
cccc.348vitez.koja,
#=> There are many reasons why you should have to use this
#=> base of functions. Easier using, different style of
#=> writing, excellent manipulating with memory, and multi
#=> color editing are one of them. Font editor for this nice
Kakav engleski :)) (mada, ove rečenice ni na srpskom nisu primer
pismenosti;)). Vidi se da su momci iz Niš ;)
Da li je neko skinuo sam program ? Utisci ?
cccc.349omega,
Ţ> hPtr-=OVER64K_BUFFLEN;
Ţ
Ţ ono sto mogu da primetim, to je da ova koncepcija moze dovesti do
Zasto mislis?
Ţ ne treba menjati! originalnu vrednost treba cuvati, a drugim
Ţ vektorom se setati po memoriji.
Ok, onda nije problem.
cccc.350omega,
Ţ direktno ne, ali ne vidim razlog da ne napravis neki klasu u
Ţ C++-u. tamo je to tako lako izvodljivo.
E pa, tek sam poceo da radim na obicnom C-u, tako da tek sa objektima
nemam veze :)
cccc.351zeljkoj,
> WinHelpov copy dijalog prihvata samo tekst - slike preskače.
Pritisni Print Screen taster pa će ceo ekran biti prekopiran u Clipboard.
cccc.352mjova,
> Zasto mislis?
mislim, dakle postojim ;) (ili srpska varijanta: coitus erg sum ;).
za to što moraš paziti dokle si stigao, pa koliko treba da se
vratiš.. originalnu vrednost lepo upamtiš, pa te glava ne boli.
cccc.353djelovic,
> Pritisni Print Screen taster pa će ceo ekran biti prekopiran u Clipboard.
Nije dovoljno - neke od slika hijerarhija iz helpa su veće od raspoloživog
ekrana. Idemo dalje :).
cccc.354vcalic,
>> Nije dovoljno - neke od slika hijerarhija iz helpa su veće od raspoloživog
>> ekrana. Idemo dalje :).
Probaj da povećaš ekran ;)
Vlada
cccc.355mjova,
> Nije dovoljno - neke od slika hijerarhija iz helpa su veće
> od raspoloživog ekrana. Idemo dalje :).
baš zbog ovoga pokušavam doći do literature za pisanje win
drajvera. naime, svaki hlp topic se može pustiti na laser, a to
znači da ako napraviš dobar veznik, možeš lepo odvojiti slike
tekst itd...
ima li neko literaturu?
cccc.356vcalic,
>> baš zbog ovoga pokušavam doći do literature za pisanje win
>> drajvera. naime, svaki hlp topic se može pustiti na laser, a to
>> znači da ako napraviš dobar veznik, možeš lepo odvojiti slike
>> tekst itd...
>>
>> ima li neko literaturu?
Koliko se sećam, nije ti dovoljna literatura već ti treba Microsoft-ov
DDK što je otprilike kao SDK samo za drajvere. Koliko sam shvatio to su
biblioteke za MSC (tj. Visual C++) + knjige + HLP fajlovi, etc. Nisam čuo da
neko to ima ovde, a moglo bi jako lepo da se iskoristi.
Vlada
cccc.357smarkov,
> Da li na neki nacin mogu da deklarisem promenljivu, ali ne po Intelovom
> formatu (prvo low byte, pa high) vec po obrnutom, Motorolinom - prvo
> high byte, pa low byte. Ako ne, kako na najbrzi nacin transformisati
> postojecu promenljivu (int ili long) u tako nesto?
#define WORDCONV(w) (((unsigned short)(w))>>8) | ((unsigned short)(w))<<8))
Makro je "simetričan" - konvertuje u oba smera.
I slično, malo teže :
#define LONGWORDCONV(lng) /* Za vežbu :) */
Što se tiče efikasnosti evo kakav kod je generisao MSC 7.0 kod ekspanzije ovog
makroa (opcija -O za optimizaciju), promenljiva je u BP+4 izlaz je u DX:
mov ah,BYTE PTR [bp+5]
mov cl,BYTE PTR [bp+4] ;x
mov dl,ah
mov dh,cl
pozdrav, smarkov
cccc.358mmitrovic,
Ů█▀█Ţ mov ax, es:ŠdiĆ
Ů█▀█Ţ mov bl, ah
Ů█▀█Ţ mov bh, al
Ů█▀█Ţ mov ax, es:Šdi+2Ć
Ů█▀█Ţ mov es:Šdi+2Ć,bx
Ů█▀█Ţ mov bl, ah
Ů█▀█Ţ mov bh, al
Ů█▀█Ţ mov es:ŠdiĆ,bx
mov ax,es:ŠdiĆ
xchg ah,al
xchg ax,es:Šdi+2Ć
xchg ah,al
mov es:ŠdiĆ,ax
kraće i sa manje koda. ;) Nego, ne znam baš o asm blokovima u Cu, ali
zašto si bacao es na stek, zar neće C ubaciti kod za reinicijalizaciju
es registra ako je to poterbno. Pascal to radi, pa je es registar slobodan
za korišćenje bez ograničenja.
cccc.359omega,
Ţ# define WORDCONV(w) (((unsigned short)(w))>>8) | ((unsigned short)(w))<<8))
Svaka cast :)
Ţ# define LONGWORDCONV(lng) /* Za vezbu :) */
#define LONGWORDCONV(lng) (((unsigned long) WORDCNV(lng>>16))) |
((((unsigned long) WORDCNV(lng)))<<16)
Bas me zanima da li sam "ubo" :))
Ţ Sto se tice efikasnosti evo kakav kod je generisao MSC 7.0 kod ekspanzije
Ţ ovog makroa (opcija -O za optimizaciju), promenljiva je u BP+4 izlaz je u
Kako je fenomenalno optimizovao. Na kraju cu da predjem na MSC ako mi neko
ne kaze kako u BC-u to da izvedem ;) Sta znaci taj switch -O?
cccc.360omega,
Ţ mov ax,es:SdiC
Ţ xchg ah,al
Ţ xchg ax,es:Sdi+2C
Ţ xchg ah,al
Ţ mov es:SdiC,ax
Pa ovo je jos najbolje.
Ţ krace i sa manje koda. ;) Nego, ne znam bas o asm blokovima u Cu, ali
Ţ zasto si bacao es na stek, zar nece C ubaciti kod za reinicijalizaciju
Ţ es registra ako je to poterbno. Pascal to radi, pa je es registar slobodan
Ţ za koriscenje bez ogranicenja.
Jok, ja sam debagovao taj deo i videh da baca samo SI na stek, pa ko
veli, da se ne zezam, mada je radilo i bez toga :)
cccc.361postmast,
From: iznogud@Osmeh.FON.BG.AC.YU (Aleksandar Petrovic)
Subject: Re: cccc
Date: Mon, 19 Sep 1994 10:09:42 GMT
Dejan Jelovic (djelovic@sezam.UUCP) wrote:
: U 386Enh modu ne moras da razmisljas o tome, vec mozes da koristis
: standardno malloc () i free (), mada to zavisi i od kompajlera koji koristis.
: Flat memorijski model jos uvek nemas.
Ako mogu da koristim standardni malloc i free, u cemu je onda
razlika u odnosu na flat m.m.? Mogu li se koristiti operatori new i
delete (meni, inace, mnogo drazi)? BTW, ja radim u BC++ 4.0.
Je li taj kompajler ok?
--
++
cccc.362zeljkoj,
> ne kaze kako u BC-u to da izvedem ;) Sta znaci taj switch -O?
/O je switch za max optimizaciju u svim Microsoftovim jezicima.
cccc.363smarkov,
># define LONGWORDCONV(lng) (((unsigned long) WORDCNV(lng>>16))) |
> ((((unsigned long) WORDCNV(lng)))<<16)
> Bas me zanima da li sam "ubo" :))
To je to. Nedostaju ti spoljnje zagrade i zagrade oko argumenta 'lng' ( makro
može da bude u izrazu, argument može da bude izrazu ...)
Evo je ekspanzija za LONCNV makro. Arg je u bp+4 izlaz je u dx,cx
mov ax,WORD PTR [bp+6]
mov cx,ax
mov ah,al
mov dl,ch
mov dh,al
mov ax,WORD PTR [bp+4] ;ll
mov cl,BYTE PTR [bp+5]
mov ch,al
> Kako je fenomenalno optimizovao. Na kraju cu da predjem na MSC ako mi neko
> ne kaze kako u BC-u to da izvedem ;) Sta znaci taj switch -O?
Ovo je relativno jednostavna optimizacija, sigurno je provodi i BC. To
sigurno nije razlog zbog koga bi trebao da menjaš kompajler.
Naravoučenije iz ovih par poruka je da moderni kompajleri generišu
efikasan kod i da retko treba posezati za asemblerom. Uporedi kod koji
je dobijen ekspanzijom WORDCONV i LONGCONV makroa sa ručno napisanim
kodom. Vredi li to (i koliko često je potrebno insistiranje na
performansama ) truda. Dalje, makroi će ti (mnogo važnije od
performansi) fukcionisati na svakom ANSI C kompajleru i svakoj
platformi.
pozdrav, smarkov
cccc.364omega,
Ţ Ovo je relativno jednostavna optimizacija, sigurno je provodi i BC.
Ne bih bas rekao :(( Voleo bih kad bi me neko razuverio. Ukljucio sam
sve moguce optimizacije (mozda to i ne valja?) i evo rezultata:
#define WORDCONV(w) (((unsigned short)(w))>>8) | ((unsigned short)(w))<<8))
MSC: (ulaz BP+4, izlaz DX)
--------------------------
mov ah,BYTE PTR [bp+5]
mov cl,BYTE PTR [bp+4] ;x
mov dl,ah
mov dh,cl
BC: (ulaz DGROUP:_w, izlaz AX)
------------------------------
mov ax,word ptr DGROUP:_w
shr ax,8
mov dx,word ptr DGROUP:_w
shl dx,8
or ax,dx
#define LONGWORDCONV(lng) ((((unsigned long) WORDCNV((lng)>>16))) |
((((unsigned long) WORDCNV((lng))))<<16))
MSC: (ulaz BP+4, izlaz DX,CX)
-----------------------------
mov ax,WORD PTR [bp+6]
mov cx,ax
mov ah,al
mov dl,ch
mov dh,al
mov ax,WORD PTR [bp+4] ;ll
mov cl,BYTE PTR [bp+5]
mov ch,al
BC: (ulaz DGROUP:_lng, izlaz BX,AX)
-----------------------------------
mov ax,word ptr DGROUP:_lng+2
shr ax,8
mov dx,word ptr DGROUP:_lng+2
shl dx,8
xor bx,bx
mov si,word ptr DGROUP:_lng
shr si,8
xor cx,cx
mov di,word ptr DGROUP:_lng
shl di,8
or si,di
or cx,0
or ax,dx
or bx,si
Ţ To sigurno nije razlog zbog koga bi trebao da menjas kompajler.
Pa uporedi sam :((
Ţ performansama ) truda. Dalje, makroi ce ti (mnogo vaznije od
Ţ performansi) fukcionisati na svakom ANSI C kompajleru i svakoj
Ţ platformi.
Priznajem da je ovo ubedljivo najvaznija stvar...Medjutim, za neke stvari
covek mora sam da optimizuje...
cccc.365pyramid,
Da li postoji nacin da u toku izvrsavanja interapt rutine utvrdim koji je?
Tj:
postavim npr. sve hardverske interapte na odredjenu rutinu
i u toj rutini na *neki nacin* utvrdim broj int-a
cccc.366postmast,
From: mm18291d@buefhp.etf.bg.ac.yu (Marko Milivojevic)
Subject: Re: cccc
Date: Wed, 21 Sep 1994 18:57:13 GMT
Zeljko Jovanovic (zeljkoj@sezam.UUCP) wrote:
:: /O je switch za max optimizaciju u svim Microsoftovim jezicima.
Tesko da ce biti bas to... /Od znaci disable optimisation (MSC6)
cccc.367postmast,
From: glisin@fon (Ivan Glisin)
Subject: Re: Pipeline u DOS-u
Date: Thu, 22 Sep 1994 19:20:07 GMT
Aleksandar Petrovic (iznogud@Osmeh.FON.BG.AC.YU) pise:
>> Postoji li ikakav nacin da program sazna dali mu je ispis preusmeren
>> u neki fajl, kao i ime tog fajla? Naravno, radi se o DOS-u.
Koliko mi se cini, ti govoris o redirekciji ili preusmeravanju a ne
o pajplajnu?
Koliko je meni poznato, to je iz programa nemoguce saznati jer se
to programa i ne tice. Stvar je operativnog sistema gde ce preusmeriti
standardni izlaz. Program daje niz znakova na STDOUT a sta ce sistem
dalje sa tom uraditi on ne moze da zna.
Kazi koji te konkretan problem muci, mozda postoji i neko drugacije
resenje od saznavanja imena redirekcije?
cccc.368zeljkoj,
> Tesko da ce biti bas to... /Od znaci disable optimisation
> (MSC6)
U stvari, max optimizacija je /Ox (tako je u FORTRAN-u,
verovatno je isto u C-u.)
cccc.369pyramid,
GL> Aleksandar Petrovic (iznogud@Osmeh.FON.BG.AC.YU) pise:
GL> >> Postoji li ikakav nacin da program sazna dali mu je ispis
GL> >> u neki fajl, kao i ime tog fajla? Naravno, radi se o DOS-u
GL>
GL> Koliko mi se cini, ti govoris o redirekciji ili
GL> preusmeravanju a ne o pajplajnu?
GL>
GL> Koliko je meni poznato, to je iz programa nemoguce saznati
GL> jer se to programa i ne tice. Stvar je operativnog sistema
GL> gde ce preusmeriti standardni izlaz. Program daje niz
GL> znakova na STDOUT a sta ce sistem dalje sa tom uraditi on ne
GL> moze da zna.
STDOUT je definisan kao FILE *stdout
a gledajuci structuru FILE moze se videti jedan unsigned flags. Ako on ima
setovan IX bit onda je file vezan za terminal (_F_TERM), sto znaci:
stdout->flags&_F_TERM
ima vrednost !0 ako je izlazni file terminal. Mozda ti to moze pomoci...
Mislim, Aleksandru...
cccc.370dcolak,
│ U stvari, max optimizacija je /Ox (tako je u FORTRAN-u,
│ verovatno je isto u C-u.)
Još "žešća" /Oz ;)
Sledge DAMMIR!
cccc.371pedjak,
> Da li postoji nacin da u toku izvrsavanja interapt rutine utvrdim
> koji je?
> postavim npr. sve hardverske interapte na odredjenu rutinu
> i u toj rutini na *neki nacin* utvrdim broj int-a
Za hardverske nisam siguran, možda se može očitati sa nekih portova,
ali za softverske bi možda moglo ovako ( ovo mi je prvo palo na pamet ) :
po ulasku u tvoju interapt rutinu, skineš sa steka adresu povratka koja je
četvorobajtna ( seg:ofs ), pronadješ to mesto u memoriji i vratiš se
unazad jednu instrukciju i pronadješ opcode za INT <nn> i očitaš to <nn>.
cccc.372pyramid,
PY> Za hardverske nisam siguran, mozda se moze ocitati sa
PY> nekih portova,
Verovatno je to stvar koju trazim (port)...
PY> ali za softverske bi mozda moglo ovako ( ovo mi je prvo
PY> palo na pamet ) :
Za softverske bi se ja snasao... Mada ti ta ideja nije losa , ali ▀▀cim
promenim platformu to ima▀ da puuuucaaa (npr. ukljucim DOS emulaciju pod
lynux-om)...
cccc.373pyramid,
Da li ima neko spisak VGA portova sa objasnjenjima "sta i kako"?
Ili je mozda neko shvatio kako radi graficki pointer u tekst rezimu, pa da mi
objasni? (gledao sam onaj mouslib8, ali mi skoro nista nije jasno)...
cccc.374postmast,
From: glisin@fon (Ivan Glisin)
Subject: Re: cccc
Date: Sat, 24 Sep 1994 17:49:53 GMT
Nebojsa Mihovilovic (pyramid@sezam.UUCP) pise:
>> stdout->flags&_F_TERM
Ne znam za ovo, ali sam primetio da struct FILE na razlicitim sistemima
izgleda razlicito, pa je petljanje po samoj strukturi nepreporucljivo.
Naime, problem se mozda moze resiti, ali ce resenje biti verovatno
potpuno neportabilno. Imajte ovo na umu ukoliko baratate sa poljima
strukture FILE.
cccc.375postmast,
From: anubis@hobbiton.CO.YU (Igor Loncarevic)
Subject: Re: cccc
Date: Sat, 24 Sep 1994 22:51:45 GMT
Zoran Rapajic (.ken.@sezam.UUCP) wrote:
: Kako na COM portu mogu ici brzine preko 9600 (lap-link ide i do 115200)
: Preko biosa koliko sam ja shvatio ne moze vise od 9600
: Gde je caka?
Preko BIOS-a ne bi trebalo da ide preko 2400, caka je u preuzimanju
interapta.
---------------------------------------------------------------------------
anubis@hobbiton.co.yu - anubis@hobbiton.sin.com
---------------------------------------------------------------------------
cccc.376pedjak,
> Verovatno je to stvar koju trazim (port)...
Evo nešto sam našao u inter listi, ima toga još, prenosim
najosnovnije...
0020 r PIC interrupt request/in-service registers by OCW3
request register:
bit 7-0 = 0 no active request for the corresponding int. line
= 1 active request for corresponding interrupt line
in-service register:
bit 7-0 = 0 corresponding line not currently being serviced
= 1 corresponding int. line currently being serviced
0020 w PIC OCW3
bit 7 = 0 reserved
bit 6-5 = 0x no operation
= 10 reset special mask
= 11 set special mask
bit 4 = 0 reserved
bit 3 = 1 reserved
bit 2 = 0 no poll command
= 1 poll command
bit 1-0 = 0x no operation
= 10 read int.request register on next read at 0020
= 11 read int.in-service register on next read 0020
Evo šta sam ja uradio:
mov dx,20h
mov al,03h ; u sledećem čitanju porta 20h dobijaš informaciju
; koji je interapt u toku.
out dx,al
in al,dx ; sada je u al informacija.
Kod XT-a imaš osam hardverskih interapta, tako da svaki bit u al
govori koji je interapt u toku. Značenje bitova je sledeće:
bit 7 = parallel printer interrupt (int 0fh)
bit 6 = diskette interrupt (int 0eh)
bit 5 = fixed disk interrupt (int 0dh)
bit 4 = serial port 1/3 interrupt (int 0ch)
bit 3 = serial port 2/4 interrupt (int 0bh)
bit 2 = video interrupt (int 0ah)
bit 1 = keyboard, mouse, RTC interrupt (int 09h)
bit 0 = timer interrupt (int 08h)
> Za softverske bi se ja snasao... Mada ti ta ideja nije losa , ali
> ▀▀cim promenim platformu to ima▀ da puuuucaaa (npr. ukljucim DOS
> emulaciju pod lynux-om)...
Kakvu si ti ideju imao u vezi softverskih..?
Ne bi smeo da puca, ukoliko je emulator dobar. Program nije svestan
da je on samo jedan od procesa u sistemu, misli da je mašina samo njegova.
Ti ćeš raditi nešto kao
pop bx
pop es
.
.
mov ax,Šes:bxĆ
.
.
A to bi moralo da radi na svakom ozbiljnom emulatoru :)
p.s. izvinjavam se na juskiju :)
cccc.377postmast,
From: iznogud@Osmeh.FON.BG.AC.YU (Aleksandar Petrovic)
Subject: Re: cccc
Date: Mon, 26 Sep 1994 12:31:53 GMT
Nebojsa Mihovilovic (pyramid@sezam.UUCP) wrote:
: ima vrednost !0 ako je izlazni file terminal. Mozda ti to moze pomoci...
: Mislim, Aleksandru...
Hvala ne trudu, al' cela prica je pocela tako sto se meni javilo ;)
da sam nesto slicno daaaaavno procitao u nekim starim Racunarima.
Ocigledno sam se prevario.
10x anyway.
--
++
cccc.378postmast,
From: iznogud@Osmeh.FON.BG.AC.YU (Aleksandar Petrovic)
Subject: Re: Pipeline u DOS-u
Date: Mon, 26 Sep 1994 12:35:08 GMT
Ivan Glisin (glisin@fon) wrote:
: Koliko mi se cini, ti govoris o redirekciji ili preusmeravanju a ne
: o pajplajnu?
Pod DOS-om nema (sustinske) razlike, posto DOS jednostavno umesto
pipeline-a izvrsi dve redirekcije
: Kazi koji te konkretan problem muci, mozda postoji i neko drugacije
: resenje od saznavanja imena redirekcije?
Naaravno da postoji i drugo resenje, al' ovo je bilo najelegantnije ;)
--
++
cccc.379postmast,
From: mm18291d@buefhp.etf.bg.ac.yu (Marko Milivojevic)
Subject: Re: cccc
Date: Mon, 26 Sep 1994 12:08:16 GMT
Damir Colak (dcolak@sezam.UUCP) wrote:
:: Jos "zesca" /Oz ;)
No chance, provereno je bolja /Ox....
cccc.380smarkov,
Komentar na tekst ZZ (Moja škola C-a, Računari 102.) :
Osobina proširivanja float-a u double za argumente bez prototipa nisu
izbor Microsofta. Ta stvar je eksplicitno definisana ANSI C
standardom. Svaki ANSI C kompajler će pogrešno preneti argument u
funkciju
void f(float x) { ... }
ako za f u pozivajućem modulu ne postoji prototip.
Proširivanje float-a u double predvidjeno je takozvanim unarnim
konverzijama koje se, izmedju ostalog, izvode na svim argumentima u
pozivu funkcije. Ako postoji prototip, tada se po definisanim
pravilima, dalje izvodi konverzija u navedene tipove. Zahvaljujući
tome moguće je, recimo, pozvati funkciju sin sa int argumentom (i
korektnim rezultatom).
Kvalifikatori __far i __near nisu, naravno, deo ANSI specifikacije.
Microsoft je dakle pravila o unarnim konverzijama (prirodno) proširio
konverzijom pointera u __far za odgovarajuće modele.
pozdrav, smarkov
cccc.381smarkov,
> Da li postoji nacin da u toku izvrsavanja interapt rutine utvrdim koji je?
HINT : Mora da se upotrebi asembler. Napraviš (korišćenjem REPT i makro
direktiva) kod sledećeg oblika:
table PROC far
labela0:
pushf
labela1:
CALL irqDispatch
labela2:
pushf
CALL irqDispatch
...
labela255:
pushf
CALL irqDispatch
table ENDP
Na sve ulaze u IVT postaviš adresu labela#k (za k-ti ulaz).
U tabeli oldIrqs si zapamtio adrese svih starih handlera.
void (_interrupt _far *(oldirqs[256]))();
void _interrupt _far irqDispatch( unsigned _es, unsigned _ds,
unsigned _di, unsigned _si,
unsigned _bp, unsigned _sp,
unsigned _bx, unsigned _dx,
unsigned _cx, unsigned _ax,
unsigned _ip, unsigned _cs,
unsigned flags )
)
{
int irqNo;
char __huge *retAdr;
extern char __huge *_table;
FP_SEG(retadr) = _cs;
FP_OFF(retadr) = _ip;
/* Na osnovu povratne adrese odredi se irqNo */
irqNo = (retAdr - table)/SIMCALLSIZE;
/* SIMCALLSIZE je duzina instrukcija pushf+Call irqDispatch */
/* Na raspolaganju je broj interapta */
(*(oldirqs[irqNo]))(); /* Poziv starog handlera */
}
pozdrav, smarkov
cccc.382dcolak,
to: MarkoM
│ :: Jos "zesca" /Oz ;)
│
│ No chance, provereno je bolja /Ox....
Ajde čitaj ovo gore a posle ovo dole:
Enabling Aggressive Opimizations (/Oz)
---
The compiler can perform extremely aggressive optimizations. These
optimizations produce high code quality both in terms of speed and
size. Certain programs, however, cannot be optimized with the
technologies enabled by the /Oz option. For these programs, you
should not specify this option; you can still use all other
optimization options.
Because the optimization strategies enabled by the /Oz option are so
aggresive, they are not part of the maximum optimization (/Ox) option.
Extra Help:
Notice word "žešća..." Eh...
Sledge DAMMIR!
cccc.383mmitrovic,
Ů█▀█Ţ out dx,al
Ů█▀█Ţ in al,dx ; sada je u al informacija.
Da li ovo radi? Zar ne bi trebalo da bude jedno 5-6 praznih cycle-ova
između zahteva i prijema vrednosti? Jedno jmp na sledeći red ili dva NOPa.
Ů█▀█Ţ bit 2 = video interrupt (int 0ah)
Preko portova A0 i A1 se pristupa PIC 2 kolu (IRQ8-15) na 286+. Format
je isti kao za portove 20 i 21. PIC2 je valjda nakačen na IRQ2 (kaskadiran)
pa se prvo proveri da li je u obradi IRQ2 i ako jeste onda se konsultuje
PIC 2 za dobijanje prave vrednosti (IRQ8-15). Za ovo IRQ2 nisam 100%
siguran (recimo 90%), jer moram da konsultujem ref. koja nije kod mene, pa
kad stigne potvrdiću (ili ću opovrgnuti ;).
cccc.384ddobic,
Radim sa MICROSOFT C 6.0 i pokusao sam da povecam maksimalni broj datoteka
koje program moze da otvori.Promenio sam u
C600\SOURCE\STARTUP\DOS\CRT0DAT.ASM liniju
_NFILE_ 20 u _NFILE_ 40
i nista drugo nisam dirao. Posle toga sam startovao STARTUP koji poziva
NMAKE i posle toga MASM. MASM nisam imao pa sam od drugara dobio MASM 5.0
za koji nisam siguran da je kompletan.
Ponovo sam probao STARTUP ali je MASM 5.0 kod prve datoteke dao greske:
symbol not defined: @F
symbol is multidefined: @@
symbol not defined: @F
symbol is multidefined: @@
Da li je problem u nekompletnom asembleru ili u neodgovarajucoj verziji?
Kako mogu da dodjem do novijeg MASM?
cccc.385janko,
Neko je relativno skoro pitao kako da sazna da li je stdin ili
stdout bio preusmeren ili je konzola (ako sam zapamtio pitanje?)
Imao sam utisak da znam rešenje, ali nisam znao odakle.;) Kopajući po
rođenim sorsovima nađoh da sam takvu stvar napisao januara ove godine,
i čudo radi ovako (Borland C, MS DOS):
#include <stdio.h>
int redir( FILE* f )
<%
return ( (ioctl( fileno( f ), 0 ) & 0x80) == 0 );
%>
main()
<%
if (redir( stdin )) fprintf(stderr," stdin redirected. ");
if (redir( stdout )) fprintf(stderr," stdout redirected. ");
return 0;
%>
(znaci umesto vitičastih zagrada su ANSI/ISO rešenje za predstavljanje
znakova zauzetih nekim nacionalnim karakter setovima u C++ i C jezicima)
cccc.386pedjak,
> HINT : Mora da se upotrebi asembler. Napraviš (korišćenjem REPT i
> makro direktiva) kod sledećeg oblika:
> table PROC far
> labela0:
> pushf
Ha ! Vrlo interesantno i elegantno rešenje, čak šta više, svidja mi se.
cccc.387pedjak,
> out dx,al
> in al,dx ; sada je u al informacija.
> Da li ovo radi? Zar ne bi trebalo da bude jedno 5-6 praznih
> cycle-ova između zahteva i prijema vrednosti? Jedno jmp na sledeći
> red ili dva NOPa.
Pa vidi, kod mene radi, mada ne bi bilo zgoreg, kao što kažeš da se
ubaci par NOP-ova ili jmp.
> je isti kao za portove 20 i 21. PIC2 je valjda nakačen na IRQ2
> (kaskadiran) pa se prvo proveri da li je u obradi IRQ2 i ako jeste
> onda se konsultuje PIC 2 za dobijanje prave vrednosti (IRQ8-15). Za
> ovo IRQ2 nisam 100% siguran (recimo 90%), jer moram da konsultujem
> ref. koja nije kod mene, pa
Budi siguran 100%, proverio sam ja u dokumentaciji, jeste IRQ2.
Inače, ti prekidi ovog drugog kontrolera su vezani za sledeće
interapte:
timer - 70h (IRQ8)
video - 71h (IRQ9)
rezervisano - 72h, 73h (IRQ10,11)
miš - 74h (IRQ12)
koprocesor - 75h (IRQ13)
hard disk - 76h (IRQ14)
rezervisano - 77h (IRQ15)
p.s. inače, dejstvo ovog drugog PIC-a se može isključiti, ali ponekad
može biti vrlo koristan.. recimo, VCS ga koristi i to vrlo uspešno :)
p.p.s. rešenje koje je poslao smarkov je po meni najbolje, jer se
izbegava petljanje sa kontrolerom, a ujedno važi za sve vrste
interapta.
cccc.388driks,
Ovo dole bi trebalo da proverava da li su vrata na floppy-ju zatvorena ili
nisu, ali bas nesto nece da radi, naime i pri otvorenim i zatvorenim vratima
stalno setuje CF i stampa 6 (vrata otvorena).
main()
{ union REGS inregs,outregs;
int status;
inregs.h.ah=0x16;
inregs.h.dl=0x00; // A:
status=int86(0x13,&inregs,&outregs);
if (outregs.x.cflag==0)
printf("\nVrata zatvorena");
else
printf("\nStanje floppy-a: %X",status>>8);
}
'ajd pomozite.
cccc.389postmast,
From: buba@setgate.setnet.co.yu (Branislav Bubanja)
Subject: dva ekrana
Date: Mon, 26 Sep 1994 01:14:06
Da li neko zna nacin na koji bi se mogli prikazati razliciti
ekrani na dva monitora istovremeno?. U pitanju su razliciti podaci
i trebalo bi da oba ekrana budu u grafickom modu, mada moze pomoci i
nacin prikaza jednog grafickog i jednog tekst ekrana. Da li mozda neko
poseduje drajver ili proceduru koja bi ovo omogucila?
___
■ OLX 2.1 TD ■ Jeftino prodajem tagove. Popust na vece kolicine.
* Origin: [New Age BBS]*[Beograd]*[+38-11-404-639]*[23-06] (38:103/110)
cccc.390postmast,
From: anubis@hobbiton.CO.YU (Igor Loncarevic)
Subject: Re: dva ekrana
Date: Wed, 28 Sep 1994 11:39:04 GMT
Branislav Bubanja (buba@setgate.setnet.co.yu) wrote:
: Da li neko zna nacin na koji bi se mogli prikazati razliciti
: ekrani na dva monitora istovremeno?. U pitanju su razliciti podaci
: i trebalo bi da oba ekrana budu u grafickom modu, mada moze pomoci i
: nacin prikaza jednog grafickog i jednog tekst ekrana. Da li mozda neko
: poseduje drajver ili proceduru koja bi ovo omogucila?
Programce se zove CTRALT, tu imas sve sto ti je potrebno za rad pod
dual monitorima :). Btw, malo teze ces prikazati grafiku na oba monitora.
---------------------------------------------------------------------------
anubis@hobbiton.co.yu - anubis@hobbiton.sin.com
cccc.391pyramid,
Izvin'te na kasnjenju (ispiti itd.)
Tvoje resenje je zanimljivo, ali umesto petljanja sa povratnom adresom
(to bas i nije uputno jer radim sa 286 extenderom) moze se primeniti
int01:
mov ax,01
jmp IntHandler
int02:
jmp IntHandler
mov ax,02
...
intFF:
mov ax,0ffh
jmp IntHandler
void far _loadds _saveregs IntHandler(void) {
unsigned IntNo=_AX;
...
(oldInts[IntNo])();
}
Meni ipak vise odgovara hardverska provera (ne znam zasto)...
>> A to bi moralo raditi na svakom ozbiljnom emulatoru
Problem je sto mrzim da se petljam sa xS registrima. A, druga stvar je
sto se tice emulatora, ako se neko seti da napravi emulator koji bi prvo
preveo kod, pa tek onda izvrsio (sto je znatno vece ubrzanje) to nikako
ne bi radilo... Moja provera da li je program portabilno napisan je da odem
kod nekoga ko ima Amigu i PC emulator 286 i tu ga probam (istovremeno
izmerim brzinu - praktican profiler :)
cccc.392kcurcic,
> Ovo dole bi trebalo da proverava da li su vrata na floppy-ju
> zatvorena ili
To se i meni dogadjalo mada nemam pojma zasto. To sto ima
ili nema diska u drajvu nema nikakvog uticaja na CF. Postoji i
funkcija 15h interapta 13 koja bi trebalo da proveri moze li se
vrsiti provera :)) pomocu funkcije 16h istog interapta, ali sve to
izgleda kao da nema veze sa zivotom. Na kraju sam za to koristio nesto
ovako:
main()
{
int a;
char *buf;
buf=malloc(512);
biosdisk (0,0,0,0,0,0,buf); //ovo je za reset
a=biosdisk (2,0,0,0,1,1,buf); // a ovo ucitava sektor sa A:
a=biosdisk (2,0,0,0,1,1,buf);
if (a==128)
printf ("Nema diska\n");
free (buf);
}
Jedino ovako (uz reset i DVA poziva za ucitavanje) radi pouzdano
inace nije sigurno. Ako je sve ok, f-ja biosdisk vrati 0. Malo je kabasto
ali radi. :) Stvarno bih voleo da mi neko objasni u cemu je stvar.
Kosta
cccc.393miljko,
>> > Ovo dole bi trebalo da proverava da li su vrata na floppy-ju
>> > zatvorena ili
>> Jedino ovako (uz reset i DVA poziva za ucitavanje) radi pouzdano
>> inace nije sigurno. Ako je sve ok, f-ja biosdisk vrati 0. Malo je
>> kabasto ali radi. :) Stvarno bih voleo da mi neko objasni u cemu
>> je stvar.
INT 13H, F-JA 16H vraća status drajva (ima/nema diskete) u
odnosu na zadnju U/I operaciju. Ukoliko je bilo diskete, sve dok je
ona unutra vraćaće OK rezultat. Kad se izvadi disketa, to se beleži i
nadalje sve do sledeće U/I operacije, status je _nema diska_ bez
obzira na stvarno stanje. Mislim da za ovo ne treba kriviti BIOS,
već kontroler floppy-ja. Stvarno su mogli da urade da neki bit
status registra bude ima/nema diskete.
Dakle za očitavanje spremnosti drajva može da posluži sledeća
procedura:
main ()
{
int status;
char buffer [512];
status = biosdisk (4, 0, 0, 0, 0, 1, buffer);
status = biosdisk (0x16, 0, 0, 0, 0, 0, buffer);
(!status) ? (printf ("Disketa u A:\n")) :
(printf ("Disketa nije u A:\n"));
return 0;
}
Sličan primer dat je u Borlandovom help-u ali on radi samo za
prvi poziv. Ovo radi uvek. Inače umesto f-je 0x16, može da se očitava
adresa 0x0490, odakle se mogu dobiti malo precizniji podaci o disketi.
cccc.394pedjak,
> Ovo dole bi trebalo da proverava da li su vrata na floppy-ju
> zatvorena ili nisu, ali bas nesto nece da radi, naime i pri
> otvorenim i zatvorenim vratima stalno setuje CF i stampa 6 (vrata
> otvorena).
> 'ajd pomozite.
Da li koristiš neki program za keširanje ? Probaj da ga isključiš.
cccc.395pedjak,
> Tvoje resenje je zanimljivo, ali umesto petljanja sa povratnom
> adresom (to bas i nije uputno jer radim sa 286 extenderom) moze se
> primeniti
> int01:
> mov ax,01
Au, ovo ne bi smeo da radiš, ukoliko pozivaš posle i stari
interapt, jer se upravo ax reg koristi najviše kao identifikator
neki funkcije bios/dos sistema.
> Meni ipak vise odgovara hardverska provera (ne znam zasto)...
Ali tu hardversku proveru ne bi smeo da ti omogući nijedan ozbiljan
operativni sistem, jer samo bi on trebao da ima prava da direktno
petlja sa hardverom.
cccc.396pedjak,
> Da li neko zna nacin na koji bi se mogli prikazati razliciti
> ekrani na dva monitora istovremeno?. U pitanju su razliciti podaci
> i trebalo bi da oba ekrana budu u grafickom modu, mada moze pomoci i
> nacin prikaza jednog grafickog i jednog tekst ekrana. Da li mozda
> neko
jedina kombinacija koja može da radi je herkules i vga.
cccc.397pyramid,
>> > int01:
>> > mov ax,01
>>
>> Au, ovo ne bi smeo da radis, ukoliko pozivas posle i stari
B! Stvarno greska... Trebalo je da pise:
int01:
push 1
jmp IntHandler
a onda
void interrupt IntHandler( ...registri..., IntNum );
cccc.398mmitrovic,
Ů█▀█Ţ p.p.s. rešenje koje je poslao smarkov je po meni najbolje, jer se
Ů█▀█Ţ izbegava petljanje sa kontrolerom, a ujedno važi za sve vrste
Ů█▀█Ţ interapta.
Sad si me zbunio. Pa i ono što si ti poslao je petljanje sa kontrolerom
ali ne sa PIC2 već sa PIC1. I PIC2 se može maskirati veoma jednostavno
maskiranjem IRQ2 na PIC1 čipu (samim tim je blokiran ulaz sa PIC2 čipa)
žovek je tražio kako da dođe do IRQ broja koji obrađuje u handleru.
Ipak mu je bolje da podrži AT standard sa 15 IRQa nego samo XT sa 8.
cccc.399moebius,
Dal' je neko negde video ili cuo nesto o TWAIN-u?
Potreban mi je detaljan opis da nesto isprogramiram.
Ajde budite dobri pa javnite sta znate..
P.S.
Ako neko naidje na opis MIDI formata ..znate vec sta
cccc.400pedjak,
> Sad si me zbunio. Pa i ono što si ti poslao je petljanje sa
> kontrolerom
> žovek je tražio kako da dođe do IRQ broja koji obrađuje u handleru.
> Ipak mu je bolje da podrži AT standard sa 15 IRQa nego samo XT sa 8.
žovek je tražio kako može da detektuje hardverski interapt, posle se
to izrodilo u bilo koji interapt.. :) E pa, ponuđeno je više
rešenja, od kojih je po meni, najbolje dao smarkov, jer nema
petljanja sa hardverom, sve se radi preko tablice interapta.
cccc.401redakcija,
Da li neko poseduje BC++ v3.1? Glavi mi se pri instalaciji na sestoj
disketi, pa ako moze pomoc...
cccc.402postmast,
From: broker@setgate.setnet.co.yu (Predrag Supurovic)
Subject: dva ekrana
Date: Tue, 04 Oct 1994 11:31:08
IL>Programce se zove CTRALT, tu imas sve sto ti je potrebno za rad pod
IL>dual monitorima :). Btw, malo teze ces prikazati grafiku na oba monitora.
BB> Za taj program znam, ali nije to to. Potrebna mi je ideja, ili
BB> jos bolje, izvorni kod koji ce to da omoguci.
Dva monitora na jednom racunaru rade zahvaljujuci tome sto je adresiranje
razlicito za tekst i graficki rezim. To znaci da na jednom mozes dobiti
tekst a na drugom grafiku. Grafika na oba - sumnjam...
... BR> Dve zene i guska - Vasar!!!
* Origin: Oreska BBS, UZICE = SF BIBLIOTEKA = SETNet: (38:101/101)
cccc.403postmast,
From: smilic@fon (Sasa Milic)
Subject: Re: cccc
Date: Wed, 5 Oct 1994 13:30:18 GMT
Stevan Markovic (smarkov@sezam.UUCP) wrote:
: Komentar na tekst ZZ (Moja skola C-a, Racunari 102.) :
: Osobina prosirivanja float-a u double za argumente bez prototipa nisu
: izbor Microsofta. Ta stvar je eksplicitno definisana ANSI C
: standardom. Svaki ANSI C kompajler ce pogresno preneti argument u
: funkciju
: void f(float x) { ... }
: ako za f u pozivajucem modulu ne postoji prototip.
Ne samo sto se float prosiruje na double, nego se i char i short
prosiruju na int.
Prosirivanje se vrsi kad god se ne zna tip argumenta, na primer
kod funkcija sa promenljivim brojem argumenata (kod printf:
%f stoji za broj u pokretnom zarezu; bez obzira da li se pri
pozivu preda float ili double, bice konvertovan u double !). So,
oprez kod koriscenja 'va_arg'.
Sasa
cccc.404postmast,
From: smilic@fon (Sasa Milic)
Subject: Re: cccc
Date: Wed, 5 Oct 1994 13:44:41 GMT
Janko Stamenovic (janko@sezam.UUCP) wrote:
: Neko je relativno skoro pitao kako da sazna da li je stdin ili
: stdout bio preusmeren ili je konzola (ako sam zapamtio pitanje?)
: Imao sam utisak da znam resenje, ali nisam znao odakle.;) Kopajuci po
: rodenim sorsovima nadoh da sam takvu stvar napisao januara ove godine,
: i cudo radi ovako (Borland C, MS DOS)
Evo jos jedno resenje koje radi na unix-u:
#include <stdio.h>
#include <termio.h>
int redir ( FILE *pf )
{
struct termio savetty;
if ( ioctl ( fileno ( pf ), TCGETA, &savetty ) == -1 )
return 1;
else
return 0;
}
main ()
{
if ( redir ( stdin ) )
fprintf ( stderr, "Redirekcija stdin \n" );
if ( redir ( stdout ) )
fprintf ( stderr, "Redirekcija stdout \n" );
}
cccc.405dejanr,
>> Dva monitora na jednom racunaru rade zahvaljujuci tome sto je adresiranje
>> razlicito za tekst i graficki rezim. To znaci da na jednom mozes dobiti
>> tekst a na drugom grafiku. Grafika na oba - sumnjam...
Meni je ok radilo kada se u računar stavi jedna VGA i jedna Hercules kartica,
moglo je na obe da bude šta treba. Jedino sam morao VGA da prebacim da radi
u osmobitnom modu, što joj značajno degradira performanse.
Otakada su VGA kartice postale VESA kompatibilne, žali Bože je vraćati ih
na osam bita, dakle dva monitora se retko koriste.
cccc.406jkpbvk,
Evo ga jedan demo koji je potpuno radjen u C++ 3.1
dfcdemo.zipcccc.407djelovic,
> Evo ga jedan demo koji je potpuno radjen u C++ 3.1
Ne bi da zakeram :), ali demo *čega*, da li je pod Windowsima ili pod
DOS-om, ...
cccc.408jkpbvk,
* Ne bi da zakeram :), ali demo *cega*, da li je pod Windowsima ili pod
* DOS-om, ...
Lakse je bilo da skines 40-ak Kb i da se sam uveris sta je no dobro.
Demo radi pod dos-om i pokazuje uglavnom neke graficke mogucnosti.
Evo ga txt fajl koji ide uz demo.
This demo was written in Borland C++ 3.1 with some inline assembly,
more to demonstrate what a high-level language can do on a PC than to
show what a PC can do. It requires VGA and at least a 386, but a 486 is
recommended. The demo should work on any standard VGA configuration.
If it fails to run on your system, you have a pretty strange machine!
There is no music in this demo. Press any key to skip parts, and
Ctrl-C to quit to DOS.
Date released: 8/29/93
Author: Icefox/DFC
Author's address (Internet): mjakubow@drunivac.drew.edu
cccc.409misham,
Potrebna mi je pomoć oko funkcije fillpoly iz BC 3.1. Naime zbog
prirode programa potrebna mi je funkcija koja bi korektno osenčila
poligon čije su dve stranice podudarne. Na primer poligon ograničen
sldećim tačkama:
(0,0) , (10,10) , (20,10) , (10,20) , (10,10) , (0,0) ,
(0,50) , (50,0) i (0,0)
Kada upotrebim funkciju fillpoly ona osenči unutrašnji trougao umesto
da osenči ceo trougao i da postoji rupa unutar trougla. Da li je ovaj
bag otklonjen u BC 4.0. Probao sam istu stvar sa odgovarajućom funkcijom
_polygon iz Watcom kompajlera i tamo to odlično funkcioniše. Ne znam
kako se ponaša Microsoft-ov kompajler.
Da li neko možda zna neku grafičku biblioteku u kojoj postoji neka
funkcija koja bi rešila ovaj problem ?
cccc.410dgrbic,
>> (0,0) , (10,10) , (20,10) , (10,20) , (10,10) , (0,0) ,
>> (0,50) , (50,0) i (0,0)
Probaj da zamenis redosled tackama (0,50) i (50,0), pa da vidis da ce da radi.
Onda isto probaj kod Watcoma pa prijavi da li kod njega radi i tako :)
cccc.411lucas,
Imam malih problema sa Borland C-om naime kada koristim naredbu
SYSTEM (za rad sa dosovim naredbama), u okviru njegovog okruženja ne
radi a kada source izkompajliram i startujem .exe fajl radi.
Ima li ko odgovor, zašto?
cccc.412moebius,
Yo!
Jel neko pokusao da izbaci neku slicicu na dugme
u TButton klasi 3.1 OWL, a sve to u cilju postizanja
efekta poznatog kao toolbar?
Ajde pomozite:)
Dragan
cccc.413omega,
Ţ Imam malih problema sa Borland C-om naime kada koristim naredbu
Ţ SYSTEM (za rad sa dosovim naredbama), u okviru njegovog okruzenja ne
Ţ radi a kada source izkompajliram i startujem .exe fajl radi.
Pretpostavljam da je IDE pojeo memoriju potrebnu za dos shell...
Postojala je neka direktiva koja je za to zaduzena, ali ne mogu da se
setim trenutno...
cccc.414postmast,
From: iznogud@Osmeh.FON.BG.AC.YU (Aleksandar Petrovic)
Subject: Re: cccc
Date: Mon, 17 Oct 1994 09:37:06 GMT
David Kalinic (moebius@sezam.UUCP) wrote:
: Jel neko pokusao da izbaci neku slicicu na dugme
: u TButton klasi 3.1 OWL, a sve to u cilju postizanja
: efekta poznatog kao toolbar?
Koliko se secam, DJelovic je nesto o tome pisao u Racunarima.
BTW u OWL 2.0 imas vec napravljenu klasu toolbar (tamo se ona
zove TSpeedBar, ako se dobro secam), a vrlo je lako napraviti
i efekad iz Worda - da se dvostrukim klikom na toolbar on
pretvori u 'plivajucu paletu'. Pokusaj!
--
++
cccc.415moebius,
> Koliko se secam, DJelovic je nesto o tome pisao u Racunarima.
> BTW u OWL 2.0 imas vec napravljenu klasu toolbar (tamo se ona
> zove TSpeedBar, ako se dobro secam), a vrlo je lako napraviti
Hvala, a u kojim racunarima :)?
Dragan
cccc.416lucas,
>> Pretpostavljam da je IDE pojeo memoriju potrebnu za dos shell...
>> Postojala je neka direktiva koja je za to zaduzena, ali ne mogu da
>> se setim trenutno...
Šta znam u dosu imam 633 od 640 kb osnovne memorije slobodno ....
Ajd',ako možeš seti se kako bi to išlo.
cccc.417omega,
Ţ Ajd',ako mozes seti se kako bi to islo.
Makro je $MEM. Ja sam ranije sa tim pokusavao u BP-u, ali nije islo :(
Probaj u BC-u, pa ako uspes, javi.
cccc.418jovca.car,
/* Hvala, a u kojim racunarima :)?
101
cccc.419moebius,
> /* Hvala, a u kojim racunarima :)?
>
> 101
Hvala :)
cccc.420omega,
Da li moze (i kako) iz Borland IDE-a da se kompajlira sa eksternim LIB-om?
cccc.421maksa,
>> Da li moze (i kako) iz Borland IDE-a da se kompajlira sa
>> eksternim LIB-om?
Može, uključiš taj lib u svoj project. Il' nisam shvatio pitanje ?
cccc.422omega,
Ţ>> Da li moze (i kako) iz Borland IDE-a da se kompajlira sa
Ţ>> eksternim LIB-om?
Ţ
Ţ Moze, ukljucis taj lib u svoj project. Il' nisam shvatio pitanje ?
Nece moci, ili ja nisam nesto dobro uradio :)) Pazi 'vamo: imam samo
recimo proba.lib i proba.h. E sada, u test.c se inkludise proba.h.
Kako test.c->test.exe iz ide-a?
cccc.423mitcho,
> Nece moci, ili ja nisam nesto dobro uradio :)) Pazi 'vamo: imam
> samo recimo proba.lib i proba.h. E sada, u test.c se inkludise
> proba.h. Kako test.c->test.exe iz ide-a?
Napraviš fajl proba.prj u kome imaš dva reda: u jednom piše test.c (sve
sa putem) a drugom proba.lib (takodje sa putem). U oba slučaja treba
koristiti PUNI put. Naravno, u test.c treba deklarisati funkcije koje
koristiš iz proba.lib. I onda iz IDE-a učitaš projekat proba.prj i
kompajliraš. Ovo radi kod TC 2.0, trebalo bi i kod drugih Borlandovih.
cccc.424dgrbic,
>> Da li moze (i kako) iz Borland IDE-a da se kompajlira sa eksternim
>> LIB-om?
Moze, dodaj LIB u projekt.
cccc.425omega,
Da li neko ima source za ZMODEM ftp u C-u za DOS?
cccc.426pedjak,
> Da li neko ima source za ZMODEM ftp u C-u za DOS?
Pogledaj u r:/com
cccc.427omega,
Ţ> Da li neko ima source za ZMODEM ftp u C-u za DOS?
Ţ Pogledaj u r:/com
Ja sam gledao i gledao i tamo ništa za DOS ne nađoh :(
>>> Otvorite mu oči, ništa ne vidi <<<
cccc.428misham,
>> Probaj da zamenis redosled tackama (0,50) i (50,0), pa da vidis da ce da
radi.
>> Onda isto probaj kod Watcoma pa prijavi da li kod njega radi i tako :)
Probao sam razne kombinacije i Watcom uvek dobro osenči a Borland uvek nešto
zabrlja. Ustvari kada je samo jedna rupa može i BC da se podesi da šrafira
dobro ako se vodi računa o redosledu šrafiranja. Međutim kada sam probao
sa više rupa opet ne radi dobro. Na kraju sam morao da napišem svoju funkciju
fillpoly koja radi nešto malo sporije ali zato radi dobro.
cccc.429postmast,
From: markom@exodus.fon.bg.ac.yu (Marko Milivojevic)
Subject: Re: cccc
Date: Sat, 22 Oct 1994 09:10:39 GMT
Ivan Petrovic (omega@sezam.UUCP) wrote:
:: Da li moze (i kako) iz Borland IDE-a da se kompajlira sa eksternim LIB-om?
.PRJ fajlovi sluze upravo za to... Vidi meni projects :)
--
Marko Milivojevic markom@exodus.fon.bg.ac.yu
Home phone: 137-477 (09-22) Exodus phone: +381 11 137-477 (22-09)#! rnews 1013
cccc.430djelovic,
> Ţ> Da li neko ima source za ZMODEM ftp u C-u za DOS?
> Ţ Pogledaj u r:/com
>
> Ja sam gledao i gledao i tamo ništa za DOS ne nađoh :(
R:\>dir /s zm*
R:\COM\zm*.*
----------------------
zmodemc zip 53143 C source ZModem protokola
> >>> Otvorite mu oči, ništa ne vidi <<<
Što jes - jes. Trebaju ti naočari.
cccc.431omega,
Ţ> Ţ> Da li neko ima source za ZMODEM ftp u C-u za DOS?
Ţ
Ţ zmodemc zip 53143 C source ZModem protokola
Ţ
Ţ Sto jes - jes. Trebaju ti naocari.
Meni ili tebi? ;>
To je source u C-u za UNIX...Ja trazih u C-u za DOS...
cccc.432omega,
Ţ srafira dobro ako se vodi racuna o redosledu srafiranja. Medutim kada sam
Ţ probao sa vise rupa opet ne radi dobro. Na kraju sam morao da napisem svoju
Ţ funkciju fillpoly koja radi nesto malo sporije ali zato radi dobro.
A da sortiras koordinate tacaka?
cccc.433djelovic,
> To je source u C-u za UNIX...Ja trazih u C-u za DOS...
To je nešto kao univerzalni sors, mislim da na Sezamu i ne postoji
specifična DOS verzija. Razlika u odnosu na ono na šta smo navikli jeste da je
ovaj ZMODEM navikao da bude host, pa se uopšte ne obraća komunikacionim
portovima već radi I/O na STDIO, tj. na ekran i tastaturu.
Ukoliko ti treba da radi sa kom. portovima, onda svaki I/O poziv treba
izmeniti.
cccc.434danko,
JUGODATA nudi stalno radno mesto
C PROGRAMERA
Uslovi:
Za programera aktivno znanje programskog jezika "C" i iskustvo u
programiranju baza podataka.
Procedura:
1) Javite se u JUGODATU da se raspitate o dodatnim informacijama koje vas
eventualno interesuju
2) Odlucite da li zelite da se prijavite na konkurs
3) Napisete prijavu koja sadrzi
3.1) Biografske podatke
3.2) Podatke o skolovanju
3.3) Podatke o poslovima koje ste obavljali
3.4) Podatke o znanjima kojima raspolazete a mogu biti interesantan
3.5) Zasto smatate da ste bas vi prava osoba za taj posao!
4) Donesete licno prijavu u Jugodatu do 31.10.1994
5) Jugodata pravi selekciju i obavestava vas
6) Jugodata organizuje pismeno testiranje na koje dolazite po pozivu
7) Jugodata pravi najuzi izbor kandidata
8) Po pozivu dolazite na razgovor
9) Srecni kandidat stupa na probni rad (po dogovoru)
10) Izabranik radi kao stalno zaposleni u Jugodati!
Javite nam se na telefone (011) 418-326, 419-768 ili 423-506
JUGODATA-beograd, Bulevar revolucije 326, 11050 Beograd
cccc.435maksa,
>> Nece moci, ili ja nisam nesto dobro uradio :)) Pazi 'vamo:
>> imam samo recimo proba.lib i proba.h. E sada, u test.c se
>> inkludise proba.h. Kako test.c->test.exe iz ide-a?
Koncept :) je sledeći: Otvoriš tzv. projekat (Project meni,
stavka Open). U projekat (listu) ubacuješ imena svih CPP-ova
i LIB-ova koji u programu treba da se nađu.
Dakle, kucaš:
Alt-P, O, OMEGA.PRJ.
Sad imaš OMEGA.PRJ. Kad ti je aktivan taj (Project) prozor,
nagaziš Ins (taster), i ubaciš ime LIB-a (sa ekstenzijom i
celom putanjom, i sve CPP-ove koji ti trebaju (test.c u tvom
pitanju). Sve to kompajliraš sa Build All, odn. Make (Compile
meni). Fajl koji dobiješ zvaće se OMEGA.EXE, a ako baš mooora
da se zove TEST.EXE, onda tako nazovi tvoj PRJ.
PS Fora sa ručnim pravljenjem PRJ-a iz poruke 8.423 ne pali
(bar ne u 3.1), pošto je PRJ binarni fajl. Iz PRJ-a možeš
da napraviš makefile pomoću programčeta PRJ2MAK (u BC-ovom
BIN dir-u), al' ovo ti nije neophodno, osim ako ti baš
nije stalo da koristiš svoj editor.
PPS Ako ikako možeš, skoči o'ma na CPP, i uči C kroz CPP.
cccc.436omega,
Ţ Koncept :) je sledeci: Otvoris tzv. projekat (Project meni,
Hvala svima, radi :)
Ţ PPS Ako ikako mozes, skoci o'ma na CPP, i uci C kroz CPP.
Jel ima neka dobra knjizica o c++?
cccc.437omega,
Da li nekako moze da se ubrza startovanje BC.EXE? Mislim, dok on pozove
DPMIRES i slicno, uspavam se ;) Primetio sam da uopste ne saradjuje
sa QDPMI (citaj: neverovatno ga usporava)...Mozda ipak ima neki nacin
da se neki od tih DPMI delova stavi rezidentan i time skrati vreme?
cccc.438cubra,
ĐŠč█ Ţ PPS Ako ikako mozes, skoci o'ma na CPP, i uci C kroz CPP.
ĐŠč█
ĐŠč█ Jel ima neka dobra knjizica o c++?
Pridružujem se pitanju o knjižici. Koji C++? Borland?
cccc.439misham,
>> A da sortiras koordinate tacaka?
Ova ideja nije loša ali imam mnogo komplikovan problem. Imam proizvoljnu
površinu koja se sastoji iz pravih segmenata i lukova i unutra ima proizvoljan
broj rupa isto proizvoljnog oblika. Moja prvobitna ideja je bila da razvijem
algoritam sa jednom rupom pa da ga iskoristim u iteraciji. Pošto mi ova
funkcija treba samo za 'redraw' na ekranu ona treba da bude brza. Zbog toga
sam na kraju odustao od f-je fillpoly već sam razvio f-ju koja šrafira površinu
horizontalnim linijama. Ta f-ja je nešto malo sporija ali radi dovoljno brzo.
cccc.440omega,
Ţ Pridruzujem se pitanju o knjizici. Koji C++? Borland?
Naravno (sem ako neko misli da je neki drugi bolji - Watcom?)
cccc.441postmast,
From: broker@setgate.setnet.co.yu (Predrag Supurovic)
Subject: cccc
Date: Tue, 25 Oct 1994 11:58:22
To: "Ivan Petrovic" <omega@sezam.UUCP>
"P> To je source u C-u za UNIX...Ja trazih u C-u za DOS...
Na Oreski ima datoteka ZMODEM-C.ZIP, 48K. To je izvorni kod
zmodem-a u C-u. Ne znam kako mogu da proverim da li je za DOS ili
UNIX, posto ne radim u C-u.
■ MegaMail 2.10 #0:Uvek su u pravu oni koji su - u pravu.
* Origin: Oreska BBS, Uzice = SF BIBLIOTEKA = SETNet: (38:101/101)
cccc.442dpredovic,
> Ţ Pridruzujem se pitanju o knjizici. Koji C++? Borland?
>
> Naravno (sem ako neko misli da je neki drugi bolji - Watcom?)
Moje skromno mišljenje:
BC ima svoje dobre strane, zbog njih sam dvaputa napuštao MSC, prvi put
sa MSC6 na BC2, jer MSC nije imao C++, drugi put sa MSC7 na BC3.1, jer
sam se nadao da će TurboVision da mi reši neke probleme.
Oba puta sam se (vrlo brzo) vratio MSC-u u zagrljaj razočaran BC-om.
Ajde što je kod sporiji, što je .obj format nekompatibilan, što mu je
extender nestabilan, TurboVision krpež...
Ono što ne mogu da oprostim je da prosto pravi kod koji NE RADI.
Više puta mi se dešavalo da propuštam kod kroz debuger da bi ukapirao
šta se dešava, i ustanovim da asm prosto ne odgovara c-u. Kod proradi
tek kada se skinu ama baš sve optimizacije, koje ionako retko kada bilo
šta pametno urade. Možda su nešto popravili u BC4, ali više nemam nameru
da proveravam...
MSC ima svojih loših strana, pre svega IDE, ali to može da bude i plus.
Radiš u _svom_ editoru, i _uvek_ i _tačno_ znaš koje svičeve si dao
kompajleru i linkeru. Kompajliranje iz editora ionako više i nije neki
problem, a zahtevnije programe ionako nemožeš da startuješ/debaguješ iz IDE.
Moj favorit? Za sada MSC8 (alias Visual C++). Watcom 9.5, ako te
neinteresuju Windowsi, ali i nije nešto za početnike zbog vrlo skromnog
i čudnog help sistema. Uskoro stiže i 10.0 pa će i tu nešto valjda nešto
da se promeni. Symantec još nije stigao naše krajeve, ali mnogo obećava.
DISCLAIMER
Author of this notice takes no responsability whatsoever, etc,etc...
cccc.443spantic,
> Pridružujem se pitanju o knjižici. Koji C++? Borland?
Za učenje C++ je najbolje knjiga (kod nas svakako) "C++" od Lasla
Krausa u izdanju Mikro Knjige.
cccc.444djelovic,
> Ono što ne mogu da oprostim je da prosto pravi kod koji NE RADI.
> Više puta mi se dešavalo da propuštam kod kroz debuger da bi ukapirao
> šta se dešava, i ustanovim da asm prosto ne odgovara c-u. Kod proradi
> tek kada se skinu ama baš sve optimizacije
Smešno, ja sam isti problem imao sa MSC-om :). Uključim sve optimizacije
i program mi se pretvori u bundevu iako još nije dvanest sati.
Šalu na stranu, BC++ 4.0 nudi relativno pristojnu optimizaciju, IDE mu
je komforniji i manje memorijski zahtevan (DOS programeri lako mogu i bez
IDE-a, ali je razvoj Windows programa i te kako brži iz njega), i, što je meni
najbitnije, Borland je u zadnjih par godina uvek ispred Microsofta što se
tiče mogućnosti jezika. Borland je imao C++, Microsoft ga je uveo tek kasnije,
onda je Borland uveo šablone, pa izuzetke i RTTI, kao i ANSI stringove, što
MS tek treba da da u Visual C++-u 2.0.
cccc.445mmitrovic,
Ů█▀█Ţ Makro je $MEM. Ja sam ranije sa tim pokusavao u BP-u, ali nije islo :(
Ů█▀█Ţ Probaj u BC-u, pa ako uspes, javi.
Taj makro (tačnije direktiva) se ne koristi u programima.
Koristi se pri definisanju stavki iz Tools menija, npr. TASM-a.
Uzmeš lepo pa edituješ neku od već postojećih alatki i videćeš kako
se koriste.
cccc.446vcalic,
>> Ono što ne mogu da oprostim je da prosto pravi kod koji NE RADI.
>> Više puta mi se dešavalo da propuštam kod kroz debuger da bi ukapirao
>> šta se dešava, i ustanovim da asm prosto ne odgovara c-u. Kod proradi
>> tek kada se skinu ama baš sve optimizacije, koje ionako retko kada bilo
>> šta pametno urade. Možda su nešto popravili u BC4, ali više nemam nameru
>> da proveravam...
Stani malo. Zar to sa optimizacijama zbog kojih program ne radi nije
baš specijalitet Microsoftovog kompajlera ???
Ja baš imam dobra iskustva sa BC3.1. (Što nije slučaj sa MSC-om, mada
da ne grešim dušu, nisam sa njim mnogo radio, baš zbog onog iz prvog pasusa ;)
Doduše, desilo mi se par puta da sam ga okrivio, ali je ispalo da sam ja kriv
;)) Mada, čini mi se da pod Windows-om nešto negde škripi (ništa naročito
bitno, koliko sam primetio) samo još ne znam šta :))
Vlada
cccc.447postmast,
From: markom@exodus.fon.bg.ac.yu (Marko Milivojevic)
Subject: Re: cccc
Date: Sat, 29 Oct 1994 09:54:22 GMT
Dejan Jelovic (djelovic@sezam.UUCP) wrote:
:: IDE-a, ali je razvoj Windows programa i te kako brzi iz njega), i, sto je meni
:: najbitnije, Borland je u zadnjih par godina uvek ispred Microsofta sto se
:: tice mogucnosti jezika. Borland je imao C++, Microsoft ga je uveo tek kasnije,
Aha, jos malo pa ce se pojaviti:
#define Begin {
#define End }
:((( Problem sa Borlandom je sto u nije kompatibilan sa ANSI
standardom, u stvari moze da se namesti da bude, ali onda nece
raditi pola biblioteka... :((
--
Marko Milivojevic markom@exodus.fon.bg.ac.yu
Home phone: 137-477 (09-22) Exodus phone: +381 11 137-477 (22-09)#! rnews 928
cccc.448djelovic,
> :((( Problem sa Borlandom je sto u nije kompatibilan sa ANSI
> standardom, u stvari moze da se namesti da bude, alinda nece
> raditi pola biblioteka... :((
Šta to nije kompatibilno sa ANSI standardom? Ako me sećanje ne vara Borland
je "postao" ANSI-compliant pre Microsofta.
cccc.449maksa,
>> Naravno (sem ako neko misli da je neki drugi bolji - Watcom?)
Protrči malo kroz zadnjih par brojeva Računara, ima testova
najsvežijih kompajlera. Dalje, skini i pročitaj C i CPP faq-ove,
tamo se, između ostalog, nalaze i spiskovi preporučene literature.
cccc.450bagins,
Nisam bas neki programer u C-u pa mi treba savet ili
mozda gotova rutinica koja ocitava tastaturu i ASCII
kod pritisnutog tastera smesta u neku promenjivu. Ako
je od znacaja Radim u Turbo C-u a i u C-u koji je pod
Windowsima, mislim da je Borlandov. Da jos pojasnim:
ne bih hteo da upotrebljavam ENTER posle pritisnutog
tastera.
cccc.451dpredovic,
> Stani malo. Zar to sa optimizacijama zbog kojih program ne radi
> nije baš specijalitet Microsoftovog kompajlera ???
>
Odgovor je i na djelovicev reply
Kod MSCa postoje "nesigurne" optimizacije, to je dokumentovano, i ko ih
koristi nemože posle da kuka... Maximum optimizacije postize se za
/Ozax, gde su /Oz i /Oa "nesigurni"... Samo /Ox me nikada nije za***bao.
A što se tiče BC, ne mogu sada tačno da se setim kako me je tačno zezao
sa optimizacijama, ali se sećam da mi nije radio _niti jedan_ program
kompajliran po fastcall konvenciji, koja u stvari i jeste neka vrsta
optimizacije... Koliko se sećam BC je lepo prenosio parametre u
registrima, a funkcija ih tražila na steku(?!?). To još i pomoz bože,
dobiješ krive vrednosti paarametara, ali što pre povratka dealocira stek
koji nikada nije alociran, pa posle toga RET, naravno, zvekne ko zna gde...
cccc.452moebius,
Zdravo,
Jel neko pokusao da prevede source za OWL na nekom
drugom C++ compileru? Sta mislite o tome, a?
cccc.453djelovic,
> A što se tiče BC, ne mogu sada tačno da se setim kako me je tačno zezao
> sa optimizacijama, ali se sećam da mi nije radio _niti jedan_ program
> kompajliran po fastcall konvenciji, koja u stvari i jeste neka vrsta
> optimizacije... Koliko se sećam BC je lepo prenosio parametre u
> registrima, a funkcija ih tražila na steku(?!?). To još i pomoz bože,
> dobiješ krive vrednosti paarametara, ali što pre povratka dealocira stek
> koji nikada nije alociran, pa posle toga RET, naravno, zvekne ko zna gde...
Uf!
Biće da si čekirao fastcall u Options meniju, a da posle toga nisi uradio
build nego make, pa su onda samo određeni moduli bili prevedeni po fastcall
konvenciji. Osim prastarog TC 1.0 koji je zaista bio pun bagova, Borlandovi
C/C++ kompajleri su se pokazali kao veoma pouzdani.
cccc.454djelovic,
> Jel neko pokusao da prevede source za OWL na nekom
> drugom C++ compileru? Sta mislite o tome, a?
Ne bi trebalo da bude problema, OWL se oslanja na Windows API koji je
sasvim standardan (jerbo ga pravi samo Microsoft :)). Jedino što bi morao da
nađeš kompajler koji podržava izuzetke (VC++ ih nema) ili da ih izbaciš iz
koda, a i postavlja se pitanje *zašto*? Bez App/Class Experta OWL gubi pola
svoje vrednosti.
cccc.455djelovic,
> ne bih hteo da upotrebljavam ENTER posle pritisnutog tastera.
Funkcija getch () iz zaglavlja conio.h. Sve to, naradno, pod uslovom da
radiš DOS a ne Windows program.
cccc.456omega,
Ţ konvenciji. Osim prastarog TC 1.0 koji je zaista bio pun bagova, Borlandovi
Ţ C/C++ kompajleri su se pokazali kao veoma pouzdani.
Znaci mogu bez mnogo razmisljanja da ukljucim FAST OPTIMIZATION iz IDE-a?
cccc.457djelovic,
> Znaci mogu bez mnogo razmisljanja da ukljucim FAST OPTIMIZATION iz IDE-a?
Kod mene je optimizacija na stalno uključena i nemam nikakavih problema.
Doduše meni je primarna Size, a ne Speed optimizacija.
cccc.458zormi,
* Znaci mogu bez mnogo razmisljanja da ukljucim FAST OPTIMIZATION iz IDE-a?
Može bez problema, samo što onda više vremena troši kod prevodjenja.
Zato ja za razvoj optimizujem brzinu kompajliranja, tj. isključim
sve osim debug informacija ;), a kad dovršim uključim sve optimizacije.
cccc.459moebius,
Pretpostavljam da ovo svi vec znaju, sem mene..
Kako izgleda .DBF na disku?
Hteo bih da napisem C rutine za otvaranje .DBF
pa mi treba opis formata.
Ajde budite dobri, pomozite..
Dragan
cccc.460vitez.koja,
#=> Nisam bas neki programer u C-u pa mi treba savet ili
#=> mozda gotova rutinica koja ocitava tastaturu i ASCII
#=> kod pritisnutog tastera smesta u neku promenjivu. Ako
Probaj getch, getche, ili bioskey, zavisi šta ti treba.
cccc.461eotek,
># => mozda gotova rutinica koja ocitava tastaturu i ASCII
># => kod pritisnutog tastera smesta u neku promenjivu. Ako
u prilogu, sa "primerom", zajedno sa 'key.h' definicijama,
za sve (??) tastere i tasterske kombinacije, to je neko ovde takodje
trazio ili ...
keyget.zipcccc.462dpredovic,
> Biće da si čekirao fastcall u Options meniju, a da posle toga
> nisi uradio build nego make, pa su onda samo određeni moduli
> bili prevedeni po fastcall
Može biti i da sam nešto krivo uradio, ali sigurno ne nešto u tom stilu,
pošto nisam navikao na IDE, pa se oslanjam na make i slična čuda...
Osim toga sećam se da sam - kada sam to primetio - probao i nekoliko
trivijalnih primera, od samo par funkcija, pa da ni to nije radilo.
cccc.463mdimitrijevic,
Ne mogu da kazem sta je u pitanju kod tebe, ali me stvarno cudi. Imam i
Borland i Microsoft C, koristim Borland C redovno a MSC samo ako bas imam neki
primer koji moram samo da prevedem.
Ali poenta je da mi se na prilicno prostim primerima MSC kod blokirao vrlo
cesto dok mi se to kod Borland C-a nije desilo nijednom, osim mojom krivicom.
Pozdrav,
Marjan
P.S. Naravno uvek postoji mogucnost da se u svemu krije bug. Ja na srecu jos
nisam naleteo ni na jedan u BC-u.
cccc.464zormi,
Jel' postoji u nekom izdanju BC++ 4.0 ugradjen IDE za DOS?
Ovaj koji koristim ima samo IDE za Windows iz koga DOS programi
ne mogu da se debug-uju.
cccc.465djelovic,
> Jel' postoji u nekom izdanju BC++ 4.0 ugradjen IDE za DOS?
> Ovaj koji koristim ima samo IDE za Windows iz koga DOS programi
> ne mogu da se debug-uju.
BC++ 4.0 nema IDE za DOS, ni u jednoj verziji. Eventualno mi Borland
PowerPack for DOS mogao da ima, ali posto nista slicno nije navedeno u
reklamama za njega, tesko.
BTW, a sta fali Turbo Trebilici za DOS? :)
cccc.466moebius,
Zdravo!
Moj sponzor je spreman da pukne lovu za WatcomC/C++ 10.0.
Pretpostavljam da ovo moze da se uzme u Madjarskoj,
ali ne znam adresu, telefon, rok isporuke...
Moze li neko da pomogne...
Pozdrav Dragan
cccc.467pbojan,
>> Jel' postoji u nekom izdanju BC++ 4.0 ugradjen IDE za DOS?
>> Ovaj koji koristim ima samo IDE za Windows iz koga DOS
>> programi ne mogu da se debug-uju.
Ne, BC4 dolazi sa Turbo Debuggerom za DOS, ali se programi razvijaju
iz Windows IDE okoline. Ja licno nemam nista protiv, posto u DOS
ulazim samo kada ne znam sta bih drugo ;).
cccc.468zormi,
* Ne, BC4 dolazi sa Turbo Debuggerom za DOS, ali se programi razvijaju
* iz Windows IDE okoline. Ja licno nemam nista protiv, posto u DOS
* ulazim samo kada ne znam sta bih drugo ;).
Takodje, ali kad radim program za DOS, debugger mora posebno da se pokrene
u DOS prozoru, a onda ne saradjuje sa IDE-om nego mora ručno, pa još
jedan drugom zaključaju file i ne mogu istovremeno... itd.
cccc.469postmast,
From: grebov@fon (Gordan Grebovic)
Subject: Re: cccc
Date: Mon, 7 Nov 1994 12:12:39 GMT
Zoran Milosavljevic (zormi@sezam.UUCP) wrote:
: Jel' postoji u nekom izdanju BC++ 4.0 ugradjen IDE za DOS?
: Ovaj koji koristim ima samo IDE za Windows iz koga DOS programi
: ne mogu da se debug-uju.
Ne.
cccc.470postmast,
From: Aleksandar.Glumac@f119.n111.z38.setgate.setnet.co.yu (Aleksandar Glumac)
Subject: cccc
Date: Fri, 04 Nov 1994 18:45:49
Pa to je nesto sasvim ultra-mega-prosto.
naredba je :
getch();
pritom cela f-ja ide ovako :
c=getch();
gde c je char tipa, ali se moze tretirati i kao int tipa.
Ako bi ti nesto koristilo poslacu ti moj primer gde pretvara svaki ASCII kod
sa tastature u broj znaka (ima i poredjenje) i posebno broj znaka u kod.
Znaci samo treba da kazes "carobnu rec" i eto primera :)))
* Origin: ECSTASY BBS * Indjija * 022 53 218 * SETNet: (38:111/119)
cccc.471driks,
RE: "EasyVision" lib.
Da li neko koristi "EasyVision" lib. sa Sezama za korisnicki interfejs,
i kakvi su vam utisci, sta je bolje/jednostavnije EasyVision ili Appl.
Framework ili neka druga biblioteka za user interf.?
cccc.472omega,
Kako da projekat iskompajliram u COM? Tamo postoje local options,
ali ne i global za project :(
cccc.473pyramid,
>> Kako da projekat iskompajliram u COM? Tamo postoje local
>> options, ali ne i global za project :(
Nisi mi bas jasan gde "tamo", ali evo za BC++... Iskompajliras program u tiny
modelu i zatim ga linkujes sa iz dos prompta (IDE ne moze da pravi COM) sa
dodatnom opcijom /t (ili /Tc)...
cccc.474postmast,
From: iznogud@Osmeh.FON.BG.AC.YU (Aleksandar Petrovic)
Subject: Re: cccc
Date: Tue, 8 Nov 1994 19:46:08 GMT
Dejan Jelovic (djelovic@sezam.UUCP) wrote:
: BTW, a sta fali Turbo Trebilici za DOS? :)
Turbo Debugger = Vrtlozna Bistalica ;)
--
++
cccc.475postmast,
From: iznogud@Osmeh.FON.BG.AC.YU (Aleksandar Petrovic)
Subject: Re: cccc
Date: Tue, 8 Nov 1994 20:00:15 GMT
Dejan Predovic (dpredovic@sezam.UUCP) wrote:
: A sto se tice BC, ne mogu sada tacno da se setim kako me je tacno zezao
: sa optimizacijama, ali se secam da mi nije radio _niti jedan_ program
: kompajliran po fastcall konvenciji, koja u stvari i jeste neka vrsta
: optimizacije... Koliko se secam BC je lepo prenosio parametre u
: registrima, a funkcija ih trazila na steku(?!?). To jos i pomoz boze,
: dobijes krive vrednosti paarametara, ali sto pre povratka dealocira stek
: koji nikada nije alociran, pa posle toga RET, naravno, zvekne ko zna gde...
Pored svega sto je do sad receno, da dodam i svoj prilog: pre neki
dan mi je pod ruke dosla neka dokumentacija o BC++ 3.1 (verovatno se
odnosi i na 4.0) u kojoj jasno pise da se fastcall nacin prenosenja
parametara u funkcije *ne preporucuje*, da je uveden samo zbog
kompatibilnosti sa MSC, i da je kod kompajjliran sa ovom opcijom
SPORIJI(!!!). Ocigledno da Borlandov kompajler registre koristi drugcije
od Majkrosoftovog.
Uopste, razlika izmedju BC++ i MSC C/C++, razlika se vidi vec u
imenu: dok je Borland sve adute bacio na C++, izbacujuci uvek
kompajler koji podrzava najnoviju specifikaciju jezika, dotle
je Microsoft, imam utisak, napravio C kompajler uglacan do
maksimuma, a pluseve je dodao tek onako, da se bolje proda...
Mozda ja i nisam u pravu. Medjutim, na sablone (templates) sam
presao pre godinu i nesto. Vec sam se navikao na izuzetke. Ni zbog
kakve optimizacije ne bih pristao na (evolucioni) skok unazad.
Jedina stvar koja me (mozda) moze naterati da promenim firmu je onaj
MFC koji (cini mi se) polako postaje standard...
--
++
cccc.476djelovic,
> Da li neko koristi "EasyVision" lib. sa Sezama za korisnicki interfejs,
> i kakvi su vam utisci, sta je bolje/jednostavnije EasyVision ili Appl.
> Framework ili neka druga biblioteka za user interf.?
Easy Vision po meni nije nista laksi nego Turbo Vision, a iza TV-a ipak
stoji Borland. Ako ne bezis od Windowsa, OWL je laksi od oba.
cccc.477djelovic,
Pre neki dan smo ovde pisali o tome kako BC++ 4.0 nema DOS IDE. Juce mi
je jedan od ljudi na kursu koji drzim rekao da u cetvorci DOS IDE *postoji*,
ali da se mora specificno navesti da vam treba u Custom instalaciji, i da se
preporucuje onima koji imaju nedovoljno brzu masinu.
S obzirom da mi moje instalacione diskete nisu tu, ima li ko da moze da
proveri da li je gorenavedana tvrdnja trac ili istina? :)
cccc.478omega,
Ţ Nisi mi bas jasan gde "tamo", ali evo za BC++...
Tamo == BC++ IDE
Ţ Iskompajliras program u tiny modelu i zatim ga linkujes sa iz
Ţ dos prompta (IDE ne moze da pravi COM) sa dodatnom opcijom /t (ili /Tc)
^^^^^^^^^^^^^^^^^^^^^^^^^^
Na to sam mislio :(
cccc.479vitez.koja,
#=> Kako da projekat iskompajliram u COM? Tamo postoje local
#=> options, ali ne i global za project :(
Kompajliraš iz dosa:
bcc -mt -lt program.c
pri čemu je -mt instrukcija kompajleru - tiny model, a -lt
instrukcija linkeru - opet tiny model.
cccc.480bulaja,
│ Pre neki dan smo ovde pisali o tome kako BC++ 4.0 nema DOS IDE. Juce mi
│je jedan od ljudi na kursu koji drzim rekao da u cetvorci DOS IDE *postoji*,
│ali da se mora specificno navesti da vam treba u Custom instalaciji, i da se
│preporucuje onima koji imaju nedovoljno brzu masinu.
└───
Ma nema on pojma :) - malopre sam kopao po BC++ 4.01 instalaciji (CD-ROM
verzija) i nigde se ne spominje opcija za instalaciju DOS IDE-a. Takodje
ni u spisku fajlova na disketama (odnosno CD-u) nigde nema pomena o tome.
cccc.481omega,
Ţ Kompajliras iz dosa:
Izvinjavam se na (sopstvenoj) nepreciznosti, ali pitao sam za IDE
cccc.482pbojan,
>> S obzirom da mi moje instalacione diskete nisu tu, ima li ko
>> da moze da proveri da li je gorenavedana tvrdnja trac ili
>> istina? :)
Po stopedesetsesti put kazem: NEMA DOS IDEa UZ BC 4.0!!! Mozda su, eventulano
dali uz BC 4.01 ili BC 4.02, ali se ne bih kladio u to ;).
ps. Gorenavedena tvrdnja je trac ;)
cccc.483postmast,
From: Brankica.Kranjac@f110.n103.z38.setgate.setnet.co.yu (Brankica Kranjac)
Subject: Far heap
Date: Tue, 08 Nov 1994 01:10:08
Pitanje, vrlo hitno, vazno i strucno:
< Hvala svim prisutnim genijima koji odgovore - ostali ce
propustiti priliku da to budu :)))) >
U pitanju je programcuga koja se prevodi (kao da ne bi bilo
problema sa memorijom) u huge modelu, sto bi trebalo da
rezultuje da svi pointeri budu far (tj. huge). Da li je
potrebno vrsiti onda i far alokacije? Npr. farcalloc,
farfree i sl?
Drugi deo pitanja bih poslala ako dobijem odgovor na ovo.
Hvala svima unapred!
Lady Linet
___
■ PQ-Under-Trial 2.14 ■ Nasilje je poslednji izlaz za nesposobnog.
* Origin: [New Age BBS]*[Beograd]*[+38-11-404-639]*[23-06] (38:103/110)
cccc.484postmast,
From: Riste.Panovski@f108.n108.z38.setgate.setnet.co.yu (Riste Panovski)
Subject: DBF
Date: Sun, 06 Nov 1994 20:54:00
-=> Quoting "David Kalinic" to All <=-
"K> From: "David Kalinic" <moebius@sezam.UUCP>
"K> Kako izgleda .DBF na disku?
"K> Hteo bih da napisem C rutine za otvaranje .DBF
Eve ti gotovi strukturi:
struct Bas_Header // e zaglavje i se naogga na pcetokot na datotekata.
{
char tip; // Tip na .DBF fajlot
char data[3]; // Data na poslednata promena 0xGGMMDD
long brslg; // Broj na slogovi vo bazata
int dataoffset; // Pozicija na prviot slog so podatoci
int dlzslg; // Dolzina na slogot (redot) so se markoer za brishenje
char dummy[20]; // Rezervirani bajtovi
};
struct Pole_Opis // e opis na seko pole (field) se naggaatt sekvencijalno
{ // posle zaglavjeto.
char ime[11]; // Ime na poleto
char tip; // Tip na poleto C, N, L, D, M, F, P, G
long offset; // Pozicija na poleto vo slogot
char dolzina; // Dolzina na poleto
char decimali; // Broj na decimalni mesta
char dummy[14]; // Rezerva
};
struct Bas_header basheader;
struct Pole_opis poleopis[BROJ_NA_POLINA];
int Broj_na_polinja;
void base_open( char* fname )
{
FILE *fp;
fpos_t pos;
fp=fopen( fname, "rb+" );
fread( &bas_header, 1, sizeof(Bas_Header), fp ); // Zagl. vo basheader
fgetpos( fp, &pos );
for( int i=0; basheader.dataoffset>pos+32; i++ )
{
fread( &poleopis[i], 1, sizeof(Pole_Opis), fp ); // Niz so opisi na
fgetpos( fp, &pos ); // polinjata
}
Broj_na_polinja=i;
}
Ovaa funkcija bi trebalo da raborti ja kratev od edna moja C++ aplikacija.
sistemskite funkcii se standarndite od "STDIO.H".
┌─────┐
│ Pan │
└─────┘
P.S.
Ima li nekoj nekoa rutina ili opis na formatot
za indexite na DBase. <*.NTX> <*.NDX> ne sum siguren
kako besse extenzijat.
... DOS never says "EXCELLENT command or filename"...
* Origin: Struga BBS +389 96 74074 * Macedonia * SETNet: (38:108/108)
cccc.485postmast,
From: Riste.Panovski@f108.n108.z38.setgate.setnet.co.yu (Riste Panovski)
Subject: Re: cccc
Date: Sun, 06 Nov 1994 20:54:01
-=> Quoting "Zoran Milosavljevic" to All <=-
"M> Zato ja za razvoj optimizujem brzinu kompajliranja, tj. iskljucim
"M> sve osim debug informacija ;), a kad dovrsim ukljucim sve
"M> optimizacije.
Mozze ... ama ne radi uvek.
Ponekad se dessava da optimizacija tako zaglupi stvar
i izkubiss mnogo visse vremena u lov na gluposte nego
kompajler u optimiziranju.
Ako ti treba optimizacija bolje je odmah ukljucci.
Ne znam kako je na MC-u ali BC++3.1 zna da pgubu i ccitave
linije tokom optimizacije.
┌─────┐
│ Pan │
└─────┘
... Not tonight, dear. I have a modem.
* Origin: Struga BBS +389 96 74074 * Macedonia * SETNet: (38:108/108)
cccc.486postmast,
From: iznogud@Osmeh.FON.BG.AC.YU (Aleksandar Petrovic)
Subject: Re: cccc
Date: Thu, 10 Nov 1994 14:08:22 GMT
Dragan Radojicic (driks@sezam.UUCP) wrote:
: Da li neko koristi "EasyVision" lib. sa Sezama za korisnicki interfejs,
: i kakvi su vam utisci, sta je bolje/jednostavnije EasyVision ili Appl.
: Framework ili neka druga biblioteka za user interf.?
EasyVision je prilicno jednostavna biblioteka, koja obezbedjuje
prilicno skucen set objekata za rad. Nije 'event-driven', pa
nije potrebno mnogo vremena da se ovlada njome, al', na zalost,
koliko para - toliko i muzike.
Dobra je ako hoces da za 5 minuta sklepas nesto sto radi
sa prozorima. Za bilo sta ozbiljnije pogledaj DFlat biblioteku.
(naravno, za C++).
--
++
cccc.487postmast,
From: iznogud@Osmeh.FON.BG.AC.YU (Aleksandar Petrovic)
Subject: Re: cccc
Date: Thu, 10 Nov 1994 14:11:18 GMT
Dejan Jelovic (djelovic@sezam.UUCP) wrote:
: Pre neki dan smo ovde pisali o tome kako BC++ 4.0 nema DOS IDE. Juce mi
: je jedan od ljudi na kursu koji drzim rekao da u cetvorci DOS IDE *postoji*,
: ali da se mora specificno navesti da vam treba u Custom instalaciji, i da se
: preporucuje onima koji imaju nedovoljno brzu masinu.
Moja instalacija je 'custom', i ja nisam primetio ni rec o DOS IDE.
Jesi li siguran da ste pricali o BC++ 4.0?
--
++
cccc.488postmast,
From: iznogud@Osmeh.FON.BG.AC.YU (Aleksandar Petrovic)
Subject: Re: Far heap
Date: Thu, 10 Nov 1994 14:13:27 GMT
Brankica Kranjac (Brankica.Kranjac@f110.n103.z38.setgate.setnet.co.yu) wrote:
: U pitanju je programcuga koja se prevodi (kao da ne bi bilo
: problema sa memorijom) u huge modelu, sto bi trebalo da
: rezultuje da svi pointeri budu far (tj. huge). Da li je
: potrebno vrsiti onda i far alokacije? Npr. farcalloc,
: farfree i sl?
Potpuno je svejedno. Naime, u far i huge modelu calloc i farcalloc
su sinonimi.
--
++
cccc.489zormi,
* Ma nema on pojma :) - malopre sam kopao po BC++ 4.01 instalaciji (CD-ROM
* verzija) i nigde se ne spominje opcija za instalaciju DOS IDE-a. Takodje
Saglasan. Pominju se samo neki DOS IDE semplovi, tj. primeri za DOS
programe radjene iz IDE (za Win), koji se opciono mogu instalirati.
cccc.490pbojan,
>>* Ma nema on pojma :) - malopre sam kopao po BC++ 4.01
>>* instalaciji (CD-ROM
U decembru izlazi BC++ 4.5, provereno direktno kod tvorca, faksom ;).
cccc.491pyramid,
>> U decembru izlazi BC++ 4.5, provereno direktno kod tvorca, faksom ;).
A posto ce biti upgrade?
cccc.492postmast,
From: Riste.Panovski@f108.n108.z38.setgate.setnet.co.yu (Riste Panovski)
Subject: CodeBase++
Date: Mon, 07 Nov 1994 21:29:00
Ima li nekoj iskustvo so paketot:
┌─────────────────────────────────┐
│ CodeBase 5.1 ili CodeBase++ 5.1 │
└─────────────────────────────────┘
Video sam reklame iz ccasopise BYTE ili PC Magazine.
Pozdrav
Pan.
... Ja sum TAGLINE da se znae.!
* Origin: Struga BBS +389 96 74074 * Macedonia * SETNet: (38:108/108)
cccc.493postmast,
From: broker@setnet.co.yu (Predrag Supurovic)
Subject: WIndows problem
Date: Thu, 10 Nov 1994 11:32:27
Imam jedan zanimljiv problem koji je za one koji pisu programe za
windows okruzenje, verujem trivijalan. Posto ja ne radim takve
programe, nadam se da ce se naci neko ko radi. Poruku ostavljam u
C konferenciju posto verujem da ce tu najbrze biti resen. :)
Evo o cemu se radi. Imam hardverski printer bafer, koji se
prikljucuje izmedju racunara i stampaca. Ovaj koji ja imam ima dva
ulaza i dva izlaza. Podesavanje se vrsi hardverski, DIP
prekidacima i tasterima na samom uredjaju, ili softverski slanjem
komandi preko paralelnog porta. Ovo drugo mi je trenutno
interesanto.
Potrebno mi je da odredjene komande saljem baferu pre samog
stampanja. Sada to radim tako sto sam napravio par BAT datoteka i
pokrecem ih pod windows ikonama. Slozicete se da je to prilican
krpez, ali bar radi. Trenutno imam BAT koji prebacuju stampanje sa
jednog na drugi stampac (imam dva stampaca i vrlo cesto je
potrebno da stampam i na jednom i na drugom. Startujem BAT koji
uredjaju posalje komandu za prebacivanje na zeljeni stampac i
posle toga pustim stampanje.
Nezgodacija u svemu ovome je sto se koriste BAT, i ne mogu se
koristiti kao minimzed, vec moraju da otvore pun ekran (ne znam
zasto, ali drugacije ono sto posaljem sa ECHO > LPT1:\ ne stize do
stampaca), sto je prilicno ruzno i sporo.
Druga stvar koja mi nedostaje je sto ne mogu da prosledim
parametre BAT datoteci. Mislim na to da ne mogu da dobijem prompt,
ukucam zeljeni podatak i da on bude prosledjen kao parametar. Ovo
mi treba, jer izmedju ostalog, baferu mogu poslati i komandu kojom
odredjujem broj kopija dokumenta koji stampam. Ovo mi mnogo znaci
jer je stampanje obicno dugotrajno, pogotovo ako se stampa veliki
broj kopija.
Evo otprilike kako izgledaju komande koje saljem baferu:
@$$$$$TS#Cxx^ - broj kopija, gde se xx zamenjuje brojem 1-99
@$$$$$TS#Px^ - koji stampac je izlaz (x=1 ili 2)
Ima jos ovakvih komandi i one se mogu i kombinovati, tj. slati
vise komand odjednom. Zbog toga je zgodno da se i to moze
podesavati. Istovremeno to ce omoguciti da se program moze
koristiti eventualno i za neku drugu namenu. Zgodno je cak
ostaviti mogucnost da se znak % i & koji oznacavaju makroe, mogu
zameniti nekim drugim znacima.
Dakle, ono sto mi treba je mali program koji na zadati paralelni
port salje podatke:
- niz karaktera koji je zadat kao prvi parametar
- drugi parametar oznacava na koji port se podaci salju
- ukoliko prvi parametar sadrzi makroe %n (gde je n=3..9),
zamenjuje ih odgovarajucim parametrima prosledjenim programu
- ukoliko se umesto makroa %n nalazi &"opcija"n tada
korisnika pita za podatak koji treba staviti umesto makroa.
String "opcija" se koristi za opis podatka koji treba uneti.
Ukoliko je programu prosledjen n-ti parametar, ta vrednost
se u upitu nudi kao default
Ovo bi mi bilo sasvim dovoljno. U Windows-u bih napravio nekoliko
ikona koje pozivaju ovaj program sa razlicitim parametrima i kad
bi mi nesto od tih funkcija zatrebalo, sa AltTab bih presao u
Program Manager i pokrenuo odgovarajucu ikonu.
Jos bolje bi bilo ako bi se mogao presresti drajver za stampac,
tako da se vec pri samom postupku pokretanja stampanja, pojavi
i prozor sa opcijama za odabir stampaca, broja kopija i ostale
komande koje bafer prepoznaje. Ovo bi vec trazilo da program
ima svoj INI u kome bi se definisale opcije.
Eto to je moj problem, ako se neko zainteresuje i napravi ovako
nesto bas bi mi dobrodoslo. Dotad, majem se sa BAT-ovima.
Broker
... We are all deaths on vacation.
* Origin: Oreska BBS, UZICE = SF BIBLIOTEKA = SETNet: (38:101/101)
cccc.494vitez.koja,
#=> Nezgodacija u svemu ovome je sto se koriste BAT, i ne
#=> mogu se koristiti kao minimzed, vec moraju da otvore pun
#=> ekran (ne znam
Problem je u prioritetima. Umesto da pozivaš BAT direktno,
napravi PIF datoteku u kojoj ćeš da definišeš prioritete,
backround izvršavanje itd.
#=> Druga stvar koja mi nedostaje je sto ne mogu da
#=> prosledim parametre BAT datoteci. Mislim na to da ne
#=> mogu da dobijem prompt,
Ako sam dobro razumeo, pozivaš te BATove iz Windowsa. U dijalogu
'Properties' postaviš 'Optional parameters' na '?' i eto...
cccc.495pbojan,
>> A posto ce biti upgrade?
To mi niko nije rekao :(.
cccc.496pyramid,
>> Imam jedan zanimljiv problem koji je za one koji pisu
>> programe za windows okruzenje, verujem trivijalan. Posto ja
>> ne radim takve
Mozda da pokusas sa CMM for windows (C minus minus, interpreter C-a). Tako
mozes veoma lako otvoriti i dijalog preko koga ces odrediti sta treba slati,
parametre itd... Ako koristis pctools for windows moze ti mnogo pomoci i script
jezik...
Inace postoji i resenje za .BAT, ali trebas napraviti .PIF sa kojim ga
pozivas...
cccc.498omega,
U pitanju je BC i evo par pitanja:
1) Zar za svaki label moram ovako da radim:
ja:
asm {
...
loop ja
}
umesto
asm {
ja:
...
loop ja
}
2) Zasto ovo dole nije moguce? :(
ja:
asm {
...
}
ti:
asm {
...
call ja
}
cccc.499pyramid,
>> 1) Zar za svaki label moram ovako da radim:
Da.
Mozes i ovako:
asm mov ...
lab1: asm mov ...
asm ...
asm jmp lab1
lepse izgleda, a i portabilnije je...
>> 2) Zasto ovo dole nije moguce? :(
A zasto bi ti to trebalo???
Ono sto si napisao drukcije se pise:
register static ja() {
}
void ti() {
}
A ako bas zelis call da koristis, pisi ga kao .asm file, a ne kao c...
cccc.500batman,
Da li neko zna da li postoji program koji prevodi Pascal programe u
C, i ako postoji da li ga netko poseduje. Ako postoji nek mi ga baci
na mail. Molim vas!
Brat Bat
cccc.501pyramid,
>> Da li neko zna da li postoji program koji prevodi Pascal
>> programe u C, i ako postoji da li ga netko poseduje. Ako
>> postoji nek mi ga baci
Postoji i zove se unwirth... Momentalno mi nije tu ali imas ga na skoro svakom
BBS-u (mozda cak i na sezamu). Shareware je...
cccc.502djelovic,
> Da li neko zna da li postoji program koji prevodi Pascal programe u
> C, i ako postoji da li ga netko poseduje.
Taj SW program sam video na mnogo BBS-ova, ali na zalost nije nesto mnogo
upotrebljiv :(.
cccc.503djelovic,
> Koristim BC 4.0 ali nisam nasao neki odgovarajuci primer.Da li znas koje su
> to klase ili naziv primera ako ga ima kod BC 4.0.
#include <classlib\dlistimp.h>
Klasa TDoubleListImp, i njen iterator, TDoubleListImpIterator.
cccc.504postmast,
From: studam@setnet.co.yu (Damjan Stulic)
Subject: char-int
Date: Sat, 19 Nov 1994 23:14:00
Hvala za pomoc oko atoi funkcije !!!
Srecno
* Origin: SETNet:INFOSYS*informacije*BG*011-1768-526*od 23-07* (38:103/114)
cccc.505vision,
Kako mogu da promenim datum file-a - bez fopen, ...
P.S. Sorry, fali dokumentacija :)
cccc.506dsisic,
> Kako mogu da promenim datum file-a - bez fopen, ...
Int 21h, Function 57h (87) Get or Set a File's Date and Time
Gets or sets a file's date and time.
To get a file's date and time:
On entry: AH 57h
AL 00h
BX File handle
Returns: AX Error code if CF is set
CX Time
DX Date
To set a file's date and time:
On entry: AH 57h
AL 01h
BX File handle
CX Time
DX Date
Returns: AX Error code if CF is set
Error codes: 1 Invalid function number in AL
6 Invalid handle
cccc.507postmast,
From: glisin@fon (Ivan Glisin)
Subject: Re: char-int
Date: Mon, 21 Nov 1994 20:59:35 GMT
Mala napomena: 'atoi' funkcija ne detektuje gresku. Tako, 'atio("abc")'
je nula (0) jer se ne moze prokonvertovati. Potrebno je uraditi mali
sintaksni ceker koji ce da vidi da se prosledjeni string zaista sastoji
samo od cifara.
Ukoliko brzina nije bitna, stvar se moze obaviti i ovako:
if (sscanf(str_var, "%d", &int_var) == 0)
... greska ...
else
... sve ok ...
Ovde ce 'sscanf' (String SCAN Function) da cita iz stringa umesto sa
'stdin'. Funkcije 'scanf', 'sscanf' i 'fscanf' vracaju broj uspesno
ucitanih vrednosti u skladu sa % format listom. Ovo je korisno kod
'float' tipa jer nije udobno pisati skener za njega (nije tesko ali
zahteva desetak-petnaest linija koda pre poziva funkcije 'atof'). Za
prvu pomoc ce
num_ok = sscanf (float_string, "%f", &float_var);
sasvim lepo odraditi posao. Ukoliko je 'num_ok' nula, 'float_string'
nije sadrzao ispravan zapisa 'float' broja a 'float_var' ne sadrzi
ispravnu vrednost. Ukoliko je 'num_ok' jedinica, sve je u redu. Kratko
i zgodno a primenljivo na sve (int, long, float, double) :-)
cccc.508postmast,
From: glisin@fon (Ivan Glisin)
Subject: Re: cccc
Date: Tue, 22 Nov 1994 20:53:53 GMT
Matija Gutman (batman@sezam.UUCP) pise:
>> Da li neko zna da li postoji program koji prevodi Pascal programe u
>> C, i ako postoji da li ga netko poseduje. Ako postoji nek mi ga baci
Postoji, ali jedno upozorenje: Pascal se ne moze prevesti u C kao
1-1 preslikavanje! Semantika nekih stvari se razlikuje i P2C translator
koji sam ja imao prilike da vidim nije obavio neke stvari kako treba.
To se posebno odnosi na zamrsene strukture podataka i izraze. Kod izraza
povedi racuna: u pascalu x := y/2 je u C-u x = y/2 Da li je ovo ok?
Nije! Ukoliko su x i y float (real) ispravno je x = y/2.0; da bi C
racunao kao i Pascal. To P2C translator ne zna da uradi jer ne zna
semantiku izraza. Da li smo hteli Integer deljenje ili ne? Dakle, sintaksno
ce se dobiti ispravan C kod koji semanticki ne mora da odgovara izvornom
Pascal programu, a to moze da izazove niz problema. Prosto, sve radi
a rezultati nisu isti kao rezultati Pascal programa! Pazi na ovo!
cccc.510postmast,
From: Aleksandar.Glumac@f119.n111.z38.setgate.setnet.co.yu (Aleksandar Glumac)
Subject: 1Ch
Date: Tue, 22 Nov 1994 11:15:23
Nisam se izgledao dobro izjasnio. Moj program ostaje rezidentan u memoriji
tako da ono sto sam rekao (cls, dir...) su ustvari iz komandne linije.Samo u
rezidentnosti imam jedan poooblem. Moj programcic zauzima 6000 byta ali u
memoriji 71kb ! Da umres od tuge! dali se to moze skratiti i kako ? Thanx &
cu , Ace .
* Origin: ECSTASY BBS * Indjija * 022 53 218 * SETNet: (38:111/119)
cccc.511postmast,
From: Brankica.Kranjac@f110.n103.z38.setgate.setnet.co.yu (Brankica Kranjac)
Subject: Far heap
Date: Sat, 26 Nov 1994 20:15:46
APĆ From: iznogud@Osmeh.FON.BG.AC.YU (Aleksandar Petrovic)
Ć Brankica Kranjac (Brankica.Kranjac@f110.n103.z38.setgate.setnet.co.yu) wrote:
Ć : U pitanju je programcuga koja se prevodi (kao da ne bi bilo
Ć : problema sa memorijom) u huge modelu, sto bi trebalo da
Ć : rezultuje da svi pointeri budu far (tj. huge). Da li je
Ć : potrebno vrsiti onda i far alokacije? Npr. farcalloc,
Ć : farfree i sl?
Ć Potpuno je svejedno. Naime, u far i huge modelu calloc i farcalloc
Ć su sinonimi.
Hvala kalife :) Reci mi, molim te, ako znas, cula sam da postoje
neki problem kod koriscenja far pointera, u smislu da je bolje
koristiti huge pointere. Znas li u cemu je stos?
Lady Linet
___
■ PQ-Under-Trial 2.14 ■ Hej, ne dizi tu slu#)@()!_*$&#(& NO CARRIER
* Origin: [New Age BBS]*[Beograd]*[+38-11-404-639]*[23-06] (38:103/110)
cccc.512postmast,
From: dragisha@hobbiton.CO.YU (Dragisa Duric)
Subject: Re: fastcall BC++
Date: Fri, 25 Nov 1994 16:27:22 GMT
-> Posle pregrednje svi moji programi su lepo radili. A za dobitke u brzini
-> nemam poima, nikad nisam merio, jer sam naivno verovao da je brzze sa
-> fastcall.
'fastcall', iliti pasiranje parametara u registrima JESTE bréi naüin.
Lako dokazivo 'by hand'.
-> Ovo se uvek dogagga kod BC a dogagga se verovatno i kod sve druge C
-> komp. kada su modul sa pozivom f-je i modul u kome je funkcija prevedeni
-> racliccno jedan sa ukluccenom a drugi sa isklucenom fastcall opcijom.
-> Da se ovo izbegne potrebno je posle svaku promenu ovog prekidacca
-> prekompajlirati ceo projekat (Bild All).
Koliko znam, prvi prevodilac sa 'fastcall' je bila neka verzija JPI M2. U
toj verziji je uvedeno i jedno COMMENT polje u .obj koje je za svaki obj
sadréavalo i razlike od default parametara pri kompilaciji. Ako se pri
mejku ustanovi da su parametri pri tekućoj kompilaciji razliüiti od
parametara pri prethodnoj kompilaciji, .obj se rimejkuje.
Osim toga, svaka procedura ima svoj tip i taj tip sadréi i podatak o
calling konvenciji s kojom je ta procedura kompajlirana tako da linker
nalazi type mismatch ako je doälo do promjene, a nije puäten mejk sa
kompilacijom.
Znaüi, provjera pri kompilaciji, provjera pri linkovanju. Sve
zahvaljujući potpuno automatizovanom mejk sistemu koji omogućava minimalan
broj kompilacija. Kljuüno je: strong typing.
JPI 'fastcall' i mejk sistem o kome govorim su iz 88-89 godine.
Micro,Soft i Borland su baä uranili, nema äta :).
--
[Need a hat and thigh-high BOOTS for that one!]
cccc.513postmast,
From: buba@setnet.co.yu (Branislav Bubanja)
Subject: cccc
Date: Fri, 25 Nov 1994 19:53:06
"G>Da li neko zna da li postoji program koji prevodi Pascal programe u
"G>C, i ako postoji da li ga netko poseduje. Ako postoji nek mi ga baci
"G>na mail. Molim vas!
Na FFS-u postoje cetiri datoteke TPTC.<ZIP ili ARJ> koje sluze tome.
Probao sam ih, i dosta dobro rade. Cak su i pointeri prebaceni kako
treba. Naravno, posle njih je potrebno jos doterivanja, ali mogu dosta
da ubrzaju posao. Program je inteligentan, za razliku od unwirth-a koji
samo promeni imena naredbama (begin -> {, end - }, itd).
P.S.
Sve se ovo vazi, ako program nije pisan "prljavo". Ako je taj slucaj,
bolje pocni sve iz pocetka na C-u. Brze ces zavrsiti.
___
■ OLX 2.1 TD ■ Sve je relativno, samo je relativnost apsolutna.
* Origin: [New Age BBS]*[Beograd]*[+38-11-404-639]*[23-06] (38:103/110)
cccc.514mjova,
> Nisam se izgledao dobro izjasnio. Moj program ostaje
> rezidentan u memoriji tako da ono sto sam rekao (cls,
> dir...) su ustvari iz komandne linije.Samo u rezidentnosti
> imam jedan poooblem. Moj programcic zauzima 6000 byta ali
> u memoriji 71kb ! Da umres od tuge! dali se to moze
> skratiti i kako ? Thanx &
moraš zaviriti u startup kod i malo ga promeniti. alokacije raznih
stvari koje nisu potrebne treba skresati na minimalnu veličinu.
pogledaj i direktive _stklen i _heaplen. računica je prosta (i
zapisana u startup kodu). računaj na 64kb za S i T modele.
pošto je tvoj prg dugačak oko 6k, a u memoriji zauzima 71,
pretpostavljam da si radio u S modelu.
treba da smanjiš _heaplen na nešto normalno (globalne promenljive
+ malo, da ima) i da _stklen odvališ na, recimo, 1k ;). ne znam
šta radiš.
cccc.515szeman,
>> Na FFS-u postoje cetiri datoteke TPTC.<ZIP ili ARJ> koje sluze tome.
>> Probao sam ih, i dosta dobro rade. Cak su i pointeri prebaceni kako
...itd.
Bilo bi dobro da se ovo nadje u nekom od Sezamovih direktorijuma.
Pozdrav
cccc.516pedjak,
> To se posebno odnosi na zamrsene strukture podataka i izraze. Kod
> izraza povedi racuna: u pascalu x := y/2 je u C-u x = y/2 Da li je
> ovo ok? Nije! Ukoliko su x i y float (real) ispravno je x = y/2.0;
> da bi C racunao kao i Pascal. To P2C translator ne zna da uradi jer
> ne zna semantiku izraza. Da li smo hteli Integer deljenje ili ne?
> Dakle, sintaksno
Koliko je meni poznato integer deljenje u Pascalu se piše kao
X div Y, a real je X / Y. Primer ti nije dobar, ali se u principu
slažem sa tvojom konstataticijom.
cccc.517vitez.koja,
UNIX Programming - Second Edition
Brian W. Kernighan
Dennis M. Ritchie
ABSTRACT
This paper is an introduction to programming
on the UNIX- system. The emphasis is on how to
write programs that interface to the operating
system, either directly or through the standard
I/O library. The topics discussed include
+ handling command arguments
+ rudimentary I/O; the standard input and out-
put
+ the standard I/O library; file system access
+ low-level I/O: open, read, write, close, seek
+ processes: exec, fork, pipes
+ signals - interrupts, etc.
There is also an appendix which describes the
standard I/O library in detail.
unixprog.zipcccc.518djelovic,
> UNIX Programming - Second Edition
Hvala na zanimljivom prilogu!
cccc.519cira,
Za one koje interesuje matematika evo malog programa koji prikazuje
funkcije razvijene u Fourier-ov red. Primer je za sgn(x) ali se lako
prepravlja za bilo koju razvijenu f-ju. Ako vas je tema zainteresovala
mogu i da objasnim kako se f-je razvijaju u F. red ... No sada sledi
primer :
#include <conio.h>
#include <math.h>
#include <graphics.h>
main()
{
int gd=DETECT,gm,n,sum;
double x,suma;
initgraph(&gd,&gm,"c:\\borlandc\\bgi\\");
for (sum=1;sum<50;sum++,getch(),cleardevice()) /*broj clanova sume, sto vise*/
for (x=-M_PI;x<=M_PI;x+=0.01) /* sto manji korak to lepsi crtez */
{
suma=0; /*a0/2=... u ovom slucaju je 0*/
for (n=1;n<=sum;n++)
suma=suma+(4/M_PI)*(sin((2*n-1)*x)/(2*n-1)); /* razvijena f-ja*/
putpixel(360+50*x,174-40*suma,WHITE);
}
closegraph();
}
Umesto da prikazujete sumu od 1 do 50 clanova mozete izbaciti tu for petlju
i odmah staviti sum=50 (ili vise, sto vise to bolja aproksimacija).
cccc.520vitez.koja,
4.2BSD System Manual
Revised July, 1983
William Joy, Eric Cooper, Robert Fabry,
Samuel Leffler, Kirk McKusick and David Mosher
Computer Systems Research Group
Computer Science Division
Department of Electrical Engineering and Computer Science
University of California, Berkeley
Berkeley, CA 94720
(415) 642-7780
ABSTRACT
This document summarizes the facilities pro-
vided by the 4.2BSD version of the UNIX operating
system. It does not attempt to act as a tutorial
for use of the system nor does it attempt to
explain or justify the design of the system facil-
ities. It gives neither motivation nor implemen-
tation details, in favor of brevity.
The first section describes the basic kernel
functions provided to a UNIX process: process nam-
ing and protection, memory management, software
interrupts, object references (descriptors), time
and statistics functions, and resource controls.
These facilities, as well as facilities for
bootstrap, shutdown and process accounting, are
provided solely by the kernel.
The second section describes the standard
system abstractions for files and file systems,
communication, terminal handling, and process con-
trol and debugging. These facilities are imple-
mented by the operating system or by network
server processes.
sysman.zipcccc.521sikima,
Poceo sam da se bavim sa C jezikom pa u startu naleteh na minu. Zelim da u
graf. modu ucitam sa tastature neki broj i da ga pridruzim nekom char, a
posle cu lako da ga prebacim u broj. Da li postoji neka naredba u C jeziku
slicna naredbi CONCAT iz Pascala, tj. ova naredba "lepi" 2 karaktera
(a,b = ab)
Puno pozdrava od
Sikime
cccc.522driks,
>> posle cu lako da ga prebacim u broj. Da li postoji neka
>> naredba u C jeziku slicna naredbi CONCAT iz Pascala, tj. ova
>> naredba "lepi" 2 karaktera (a,b = ab)
Nadam se da si ovo trazio (iz help-a):
Token pasting with ##
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
When using macros with argument lists, you can merge (or paste) two tokens
by separating them with ## (plus optional whitespace on either side).
For example, given the definition
#define VAR(i,j) (i##j)
the call VAR(x,6) would expand to (x6).
cccc.523postmast,
From: bebek@setnet.co.yu (Zeljko Stevanovic)
Subject: cccc
Date: Thu, 24 Nov 1994 07:18:17
To: "Matija Gutman" <batman@sezam.UUCP>
"G> Da li neko zna da li postoji program koji prevodi Pascal programe u
"G> C, i ako postoji da li ga netko poseduje. Ako postoji nek mi ga baci
"G> na mail. Molim vas!
Postoje i to vise ...
Ali za suprutno tj. iz C-a u PAS ja sam video samo jedan...
Pozdrav,
bebek@setnet.co.yu
... BR> Da li je Internet interna ili internacionalna mreza?
* Origin: Venik BBS * Smed. Palanka * +381 26 34808 SetNet: (38:103/126)
cccc.524postmast,
From: iznogud@Osmeh.FON.BG.AC.YU (Aleksandar Petrovic)
Subject: Re: Far heap
Date: Thu, 1 Dec 1994 20:13:33 GMT
: Hvala kalife :)
Dace Bog (Alah :))) bice i toga ;)
: Reci mi, molim te, ako znas, cula sam da postoje
: neki problem kod koriscenja far pointera, u smislu da je bolje
: koristiti huge pointere. Znas li u cemu je stos?
Elem, malo pojasnjenje: u osnovi su i huge i far pointeri
ista stvar, tj. 32-bitni pointeri koi se sastoje od segmenta i ofseta,
i sa kojima mozes dohvatiti bilo sta u cuvenih 640Kb. Jedina razlika
je u tome sto su huge pointeri stalno normalizovani. Sta to znaci?
Kod obicnih, far pointera povecavanje pointera za jedan povecava njegov
ofsetni deo. Ukoliko ofsetni deo predje FFFF, vraca se na nulu (sto
je i normalno), ali nije normalno to sto se segmentni deo ne menja,
sto znaci da ne mozes da alociras 200Kb memorije i da se setas
po njoj bez komplikacija. Ova stvar je ispravljena kod huge pointera,
i kod njih kompajler umece kod koji obezbedjuje da se segmentna
adresa korektno ponasa. Naravno, ovo oduzima vreme, tako da se
ne preporucuje (sem kod pomenutog primera sa nizom). Specijalitet
huge pointera je i to sto je velicina segmenta 16 bajtova, pa se
vrlo lako izracunava realna adresa (jednostavno napises segmentnu
adresu i na kraju napises poslednu cifru ofseta (ostale cifre su 0)).
Ako nije jasno, javi se na mail, da ne gnjavimo ljude.
--
++
cccc.525janko,
>> To se posebno odnosi na zamrsene strukture podataka i
>> izraze. Kod izraza povedi racuna: u pascalu x := y/2 je u
>> C-u x = y/2 Da li je ovo ok? Nije! Ukoliko su x i y float
>> (real) ispravno je x = y/2.0; da bi C racunao kao i
>> Pascal. To P2C translator ne zna da uradi jer ne zna
>> semantiku izraza. Da li smo hteli Integer deljenje ili
>> ne? Dakle, sintaksno
>
> Koliko je meni poznato integer deljenje u Pascalu se piše
> kao X div Y, a real je X / Y. Primer ti nije dobar, ali se
> u principu slažem sa tvojom konstataticijom.
Nisi ukapirao. Ivan zna šta govori -- idući put razmisli triput, pa
pročitaj / probaj nešto itd.
cccc.526bulaja,
│UNIX Programming - Second Edition
│ Brian W. Kernighan
│ Dennis M. Ritchie
└───
Prebačeno u U:\UNIX direktorijum, hvala na prilogu.
cccc.527pedjak,
> Nisi ukapirao. Ivan zna šta govori -- idući put razmisli triput, pa
> pročitaj / probaj nešto itd.
Ok, možda i nisam. Hoćeš li pojasniti problem..?
pedja
cccc.528postmast,
From: Vladimir.Stojic@f107.n111.z38.setgate.setnet.co.yu (Vladimir Stojic)
Subject: BC 2.0 or author?
Date: Fri, 02 Dec 1994 10:44:57
Pogledajte ovaj program i ustanovite u cemu je greska: sudaraju se funkcije
open i initgraph. Kada se remuju, program ispise liniju u grafickom modu
(zbog provere da li ce raditi), ali kada se aktiviraju, onda pri pokusaju
da se iscrta linija ispisuje se greska jer uopste nije aktiviran graficki mod.
#include <graphics.h>
#include <stdio.h>
#include <conio.h>
#include <alloc.h>
#include <process.h>
#include <io.h>
#include <fcntl.h>
#include <svga256.h>
#include <stdlib.h>
int huge Always() // potrebno za SVGA BGI driver
{
return 0;
}
int main(void)
{
char far *buf;
int handle,l;
int GraphDrv = DETECT, GraphMode;
buf=farmalloc(60000); // rezervise prostor za sliku
handle=open("pic",O_BINARY); // otvara datoteku
/*
Ove dve funkcije iznad (ili samo druga) se sudaraju sa initgraph, tj.
ne moze se uci u graficki mod (ni sa standardnim
BGI drajverima)
*/
if(handle == NULL) // proverava da li je otvorena
{
printf("Ne radi.");
exit(0);
}
l=_read(handle,buf,60000); // cita iz nje
if(l==NULL) // proverava ispravnost citanja
{
printf("Opet ne radi.");
exit(0);
}
printf("Loading done.\n");
getch();
close(handle);
clrscr();
installuserdriver("SVGA256",Always); // aktivira SVGA BGI driver
initgraph(&GraphDrv,&GraphMode,"");
setcolor(12); // crta nesto zbog provere
line(0, 0, 320, 200);
// putimage(0,0,buf,XOR_PUT); // za prikazivanje slike
getch();
closegraph();
farfree(buf);
return(0);
}
... Crack the Blue Wave!
* Origin: Prometheus BBS - The Northern Frontier - SETNET (38:111/107)
cccc.529postmast,
From: Mikan.Radojevic@f102.n103.z38.setgate.setnet.co.yu (Mikan Radojevic)
Subject: cccc
Date: Fri, 25 Nov 1994 04:04:00
Da li je neko i kako uspeo da pod Windowsima (Visual C) radi sa
BTRIEVE record manaagerom. Postoji WBTRCALL.DLL sa kojom odlicno
radi VisualBasic ali ne posedujem nikakvo uputstvo. Svaki savet o
upotrebi Btrieve-a pod Windowsima bi mi dobrodosao.
* Origin: ### Huter BBS, Beograd, 788-189 ### (38:103/102)
cccc.530duzle,
Text View: C:ĐbpĐtutorĐflythruĐfly.c Col 0 14,494 Bytes 0%
/*
TurboC code for realtime fractal fly-through's, given suitably
quick hardware! Based on fractal article by Richard Bartual in
Program Now Oct 88, this implementation by Neil Newell Dec 88.
Compile using a 'large data' model if you want to use size 5.
*/
Pozdrav.
Ogi
fly.arjcccc.531duzle,
Announcing the
SOUNDBLASTER FREEDOM PROJECT
The aim of the Soundblaster Freedom Project is to provide a cheap
source of programming information for the Soundblaster and other
sound cards. Previously, programming a sound card has required a
not inconsiderable investment in a developer's kit for each sound
card. These developer's kits have been known to be terse and not
well written. Our aim is to provide enough information to the
general programmer to allow them to add sound card support to their
software at minimal cost.
Currently I am collecting information on the Soundblaster and the
Soundblaster Pro. Anybody who can supply sample code or hardware
programming information is welcome to send mail to
jeffčwench.jcu.edu.au
or cejjbčmarlin.jcu.edu.au
Any other suggestions or comments can also be sent to the above address.
Pozdrav.
Ogi
sbf.zipcccc.532duzle,
Kolekcija C/ASM rutina za rad sa .PCX slikama, sa sve dokumentacijom.
Enjoy. :)
Ogi
cccc.533eotek,
> Kolekcija C/ASM rutina za rad sa .PCX slikama, sa sve
> dokumentacijom.
nema fajla :(.
bas me interesuje, ako ti nije muka, salji ...
cccc.534duzle,
Sorry, ali poslednjih dana imam uzasno los CPS. Obecana datoteka dolazi uz
poruku....
pcxutils.zipcccc.535cira,
*#:) int handle,l;
*#:) int GraphDrv = DETECT, GraphMode;
*#:)
*#:)
*#:) buf=farmalloc(60000); <<<--- // rezervise
*#:) prostor za sliku handle=open("pic",O_BINARY); //
*#:) /* otvara datoteku
*#:) /*
*#:) Ove dve funkcije iznad (ili samo druga) se sudaraju sa
*#:) initgraph, tj. ne moze se uci u graficki mod (ni sa
*#:) standardnim BGI drajverima)
*#:) */
Ako radis u modelu koji podrzava samo 64k data memorije u onda mozda nemas
dovoljno za graficki drajver (on trazi dosta, zbog toga ne mozes da radis sa
grafikom u TINY modelu). Ti alociras nekih 60k za sliku... Probaj sa large
modelom.
cccc.536postmast,
From: zak@setnet.co.yu (Vladimir Jovanovic)
Subject: Re: 1Ch
Date: Sun, 04 Dec 1994 15:52:42
-=> Aleksandar Glumac je lupio/la :)))))) -=>
AG> Nisam se izgledao dobro izjasnio. Moj program ostaje rezidentan u
AG> memoriji tako da ono sto sam rekao (cls, dir...) su ustvari iz komandne
AG> linije.Samo u rezidentnosti imam jedan poooblem. Moj programcic zauzima
AG> 6000 byta ali u memoriji 71kb ! Da umres od tuge! dali se to moze
AG> skratiti i kako ? Thanx & cu , Ace .
OPet pitanje : jesi li iskljucio proveru steka?
Postoje nacini da se program sam ucita u visoku memoriju,
ali ne znam zasto ti program zauzima toliko... Tu nesto ne
stima....
Zak McKracken 38:101/101@SetNet.Oreska
... Kada tvoje pivo splasne, sve brige su ti prosle.
* Origin: Oreska BBS, UZICE = SF BIBLIOTEKA = SETNet: (38:101/101)
cccc.537postmast,
From: Marko.Milivojevic@p1.f1.n103.z38.setgate.setnet.co.yu (Marko Milivojevic)
Subject: Re: BC 2.0 or author?
Date: Sun, 04 Dec 1994 05:16:26
:: U poruci za All, Vladimir Stojic je rekao:
VS> buf=farmalloc(60000); // rezervise prostor za
Zar ti ovde ne prijavljuje nikakav warning?! Po meni ovo
treba da izgleda 'vako:
buf=(char*)farmalloc(60000);
I jo{ ne{to, koliko me znanje slu`i read() ili ovde _read()
vra}a -1 kad ne mo`e da ~ita iz fajla, ispravite me ako
la`em :)
-=> MM <=-
* Origin: SETNet - Belgrade HUB1 (38:103/1.1)
cccc.538postmast,
From: Zoran.Rilak@f125.n103.z38.setgate.setnet.co.yu (Zoran Rilak)
Subject: Re: 1Ch
Date: Mon, 05 Dec 1994 15:42:00
AG> ...tako da ono sto sam rekao (cls, dir...) su ustvari iz komandne
AG> linije....
Aaa, pa sto ne kazes tako nego komplikujes stvari. Jesi li siguran da
je ta tvoja procedura za ispis imena BAS PRAVA interrupt procedura? To jest,
da li cuva registre pre i restaurira posle poziva i da li se zavrsava sa IRET?
Ovo u TP resava keyword INTERRUPT + malo bavljenja oko parametara procedure,
u TS M2 tri-cetiri pragme rade posao, a za TC ne mogu da ti kazem sigurno
(odavno sam ga "batalio" ;) ). I da znas da ni CLS ne koristi DOS funkcije
vec podfunkciju interapta 10H (u stvari, postoje dve koje brisu ekran).
AG> ...zauzima 6000 byta ali u memoriji 71kb ...
A da probas da mu ogranicis memoriju direktivom? ;) Proveri koliko
memorije dinamicki alocira memoriju u toku izvrsavanja.
See ya! 3OPAH
... Aaaaargh! I hate stupid taglines!
* Origin: SetNet:Birostroj BBS,NON-STOP,14400bps,011/609945 (38:103/125)
cccc.539postmast,
From: glisin@fon (Ivan Glisin)
Subject: Re: cccc
Date: Tue, 6 Dec 1994 21:20:51 GMT
Predrag Knezevic (pedjak@sezam.UUCP) pise:
>> > Nisi ukapirao. Ivan zna sta govori -- iduci put razmisli triput, pa
>> > procitaj / probaj nesto itd.
>> Ok, mozda i nisam. Hoces li pojasniti problem..?
Ok, a sada malo ja: naime da bi se programski jezici prevodili jedan
u drugi potrebno je da se zadovolje barem tri stvari. To su leksika,
sintaksa i semantika jezika. Dve prve stvari nisu narocit problem
ali je treci, semantika jezika, vrlo zamrsen. Da nije tako, postojali
bi translatori sa jezika na jezik i nikoga ne bi bolela glava zasto
nema kompajler na nekoj masini za neki jezik. Naravno, translatori se
napisati, ali priliko njihove realizacije se mora imati na umu semantika
oba jezika da bi translator bio validan. Naime, sintaksno preslikavanje
tipa 1-1 ne mora da rezultuje korektnim programima u ciljnom jeziku.
Toliko u uvodu, sada malo prakse: P2C sa kojim sam ja imao prilike da
radim je 1-1 translator gde god je to moguce, dakle relativno neinteli-
gentan. Evo kako on priblicno radi (na primeru koji sam pominjao):
program deljenje (output);
var
x, y: real;
begin
x := 3;
y := x/2;
writeln (y)
end.
primena P2C daje recimo (sa 1-1 sintaksnom translacijom):
main ()
{
float x, y;
x = 3;
y = x/2;
printf ("%f\n", y);
}
Rezultat rada Pascal programa je 1.5 a rezultat rada C programa?
Kod valjda svih C kompajlera 1.0. Zasto? Zato sto je C osetljiv na
operande i prema njima odredjuje tip rezultata, nesto poput Fortrana,
ako se dobro secam. Da bi primer dobro radio u C kodu treba da pise
y = x/2.0 ili y = x/(float)2. E, to vec nije 1-1 sintaksna translacija
vec se mora voditi racuna i o semantici. Gore smo hteli REAL deljenje
ali prostim prepisom u C to nismo dobili. Da bi translator bio dobar
treba da se "seti" da napise 2.0 ili (float)2 jer je "/" a ne "div",
sto ovaj cije sam rezultate gledao jednostavno nije radio. Na to sam
i skrenuo paznju.
cccc.540postmast,
From: zak@setnet.co.yu (Vladimir Jovanovic)
Subject: Re: cccc
Date: Wed, 07 Dec 1994 11:27:16
"C> From: "Nebojsa Ciric" <cira@sezam.UUCP>
"C> Newsgroups: yu.prog.c
"C> Organization: SEZAM Beograd, 011 648-422
"C> Za one koje interesuje matematika evo malog programa koji prikazuje
"C> funkcije razvijene u Fourier-ov red. Primer je za sgn(x) ali se lako
"C> prepravlja za bilo koju razvijenu f-ju. Ako vas je tema zainteresovala
"C> mogu i da objasnim kako se f-je razvijaju u F. red ...
Ajde, napisi malo vise o razvijanju f-ova (ali korak po
korak :))
Zak McKracken 38:101/101@SetNet.Oreska
... Nothing found on any drive . . . (R)etry (C)ry (D)rink
* Origin: Oreska BBS, UZICE = SF BIBLIOTEKA = SETNet: (38:101/101)
cccc.541djelovic,
> main ()
> {
> float x, y;
>
> x = 3;
> y = x/2;
> printf ("%f\n", y);
> }
>
> Rezultat rada Pascal programa je 1.5 a rezultat rada C programa?
> Kod valjda svih C kompajlera 1.0.
To te je neko prevario :). I u ovom slucaju ce rezultat biti jednostavno
1.5, jer pri operaciji izmedju floata i inta int automatski biva unapredjen u
float, ili cak oba argumenta odu u double (ne secam se vise).
C i Pascal su veoma slicni jezici, razlike su manje-vise sintaksne.
cccc.542zzivotic,
>> AG> ...zauzima 6000 byta ali u memoriji 71kb ...
>> A da probas da mu ogranicis memoriju direktivom? ;) Proveri koliko
>> memorije dinamicki alocira memoriju u toku izvrsavanja.
Nema to u C-u ;) C kompajleri inicijalni DATA segment alociraju na 64K, čak i
ako program ne zahteva toliko (verovatno zbog near alloc koji bi, da nije
ovoga postao besmislen).
Dva su načina da se ovo ukine - jedan je na gotovom EXE programu uz pomoć
EXEHDR utility-a (probaj exehdr /? i pogledaj parametar MAX). Drugi je u link
fazi parametrom /CP:n pri čemu je n broj 16-bajtnih paragrafa koje maksimalno
želiš da daš programu. Kod rezidentnih programa kod koji i ovako ne može da
se koristi dinamička alokacija, dovoljno je /CP:1.
Pozdrav, zz
cccc.543janko,
>> main ()
>> {
>> float x, y;
>>
>> x = 3;
>> y = x/2;
>> printf ("%f\n", y);
>> }
>>
>> Rezultat rada Pascal programa je 1.5 a rezultat rada C
>> programa? Kod valjda svih C kompajlera 1.0.
>
> To te je neko prevario :). I u ovom slucaju ce rezultat
> biti jednostavno 1.5, jer pri operaciji izmedju floata i
> inta int automatski biva unapredjen u float, ili cak oba
> argumenta odu u double (ne secam se vise). C i Pascal su
> veoma slicni jezici, razlike su manje-vise sintaksne.
Uffff. Mislio sam da smo ovo raščistili pre nedelju-dve. :(((
Ivan je znao o čemu govori, ali je napravio mali previd. Pošto vidim ga
niko nije shvatio :( osim mene, da probam ja:
Evo vam Paskal programa, koji daje rezultat 1.500000
var x : integer;
var y : real;
begin
x := 3;
y := x / 2;
writeln( y );
end.
"Glupim" preslikavanjem u C dobija se program
int x;
float y;
main()
{
x=3;
y=x/2;
printf( "%f\n", y );
}
Koji daje tačno i okruglo 1.000000
Da opet kažem, kada Ivan nešto kaže, razmislite dvaput, znao je šta hoće
da kaže (samo je pogrešio pišući primer).
Da ne objašnjavam ponovo zašto je 1.5 iz Paskala u C-u ispalo 1,
pročitajte sada još jednom Ivanovu poruku. ;>
cccc.544bojt,
>> Ivan je znao o čemu govori, ali je napravio mali previd.
pa, ako je stavio
>> float x, y;
nije ni čudo što ga niko nije razumeo. C bi utom slučaju davao
rezultat 1.5. Ukoliko je x int, za x=3 izraz x/2 mora da bude 1 (ne
bi valjalo da je drugačije). Pascal očigledno prvo prevodi sve sa
desne strane znaka jednakosti u tip varijable kojoj se dodeljuje
rezultat.
cccc.545postmast,
From: Brankica.Kranjac@f110.n103.z38.setgate.setnet.co.yu (Brankica Kranjac)
Subject: pointeri :(
Date: Fri, 09 Dec 1994 21:54:22
Pozdrav svima :) Eto mene opet sa nekim egzoticnim pitanjem :) Imam 2 pointera, 1 globalni za ceo program - Fec.Head (inace, deo je strukture i pokazuje na pocetak liste) i drugi, lokalni za funkciju,koji prenosim u unutrasnju funkciju preko ad
rese :)- evo ovako:
struct trans * Tr;
....
Fec_get(&Tr) - Tr je pointer, istog tipa kao Fec.Head.
U listi se nalazi samo 1 cvor, na koji u pocetku pokazuje Fec.Head. Poenta je u sledecem - u toj Fec_get proceduri treba da ovom Fec.Head dodelim drugi pointer, deo Tr, ((*Tr)->Flink), koji JE NULL. ( ne zelim da dealociram prostor, samo da preki
nem tu ezu, jer ce (*Tr) da ostane na tom cvoru) - ja zapravo vadim taj cvor iz liste gde je Fec.Head glava,a ostavljam Tr da se ne zagubi cvor.
(*Tr) = Fec.Head;
Fec.Head = (*Tr)->Flink;
^^^^^^^^^^^^^^^^^^^^^^^^^^
if ( Fec.Head == NULL)
{
}
else
{
ode ovde, a ne bi trebalo
}
Ovo ne radi posao, iako je desni izraz NULL, (provereno preko watch),levi ne postaje NULL. ZASTO?
Napominjem: ceo program se prevodi u huge modelu, pointeri su istog tipa, sve izgleda ok. Ima li iko pojma? HVALA SVIMA!!!
Pozdrav Lady Linet
* Origin: [New Age BBS]*[Beograd]*[+38-11-404-639]*[23-06] (38:103/110)
cccc.546postmast,
From: nenadr@sunset.fon.bg.ac.yu (Nenad Radosavljevic)
Subject: Re: ints&fopen
Date: Sat, 10 Dec 94 23:12:48 GMT
In article <787037026.AA01375@setgate.setnet.co.yu> Aleksandar.Glumac@f119.n111
>
>Dali neko ,ko je radio sa intertaptovima, zna dali se treba snimiti status
>registara ili to nije potrebno ? Ako jeste ,gde da snimim ?
Iskreno - radio sam u pascalu sa interruptima i do sada nisam
imao potrebu da snimam registre pre poziva interupt f-ja.
>Preusmerio sa int 1c(h) na moj program gde radim sa far podacima i gde
>jedan zauzima 64000 byte-a (binarnog formata),a njega hocu da "bacim" u fajl
>,medjutim racunar mi se zablokira. Radim sa fopen,fwrite i fclose.Dali
>gresim ili je nesto drugo u pitanju ?
1c(h) int je ako se ne varam interupt kojeg poziva timer 64.xx
puta u sec. Kada iz takve int procedure otvoris file ili uopste pokusas
da pristupis nekom od DOS servisa ( a navedene procedure koriste DOS
sevise za svoj rad ) dolazi do pada sistema zato sto DOS f-je nisu
"reentrant" sto bi trebalo da znaci da jednu DOS f-ju u toku rada ne sme
da prekine druga DOS f-ja. Ti si ako sam dobro shvatio nakacio rutinu
koja radi sa fajlovima na timer-om kontrolisan int koji se dosta cesto
"dogadja" (64 puta u sec), pa ti se desava, kako mi se cini, bas ovo sto
sam gore napisao.
Pozdrav,
--
=======================================================================
Nenad Radosavljevic E-mail: nenadr@sunset.fon.bg.ac.yu
=======================================================================
cccc.547postmast,
From: markom@setnet.co.yu (Marko Milivojevic)
Subject: Re: cccc
Date: Wed, 07 Dec 1994 15:19:16
:: U poruci za All, "Dragan Radojicic" je rekao:
"R> the call VAR(x,6) would expand to (x6).
Hmm, ovo nisam znao, ali mislim da je ono sto njemu trba
funkcija strcat() :)
-=> MM <=-
* Origin: SETNet - Belgrade HUB1 (38:103/1.1)
cccc.548postmast,
From: Aleksandar.Glumac@f119.n111.z38.setgate.setnet.co.yu (Aleksandar Glumac)
Subject: 1Ch
Date: Tue, 06 Dec 1994 08:32:00
Provara stack-a ! Cini mi se da je to to ! Samo jedno imtimno pitanje
....hmm..... kako da se to podesava ?Postoji li gotova f-ja ili moram sam da
je pravim ? Ipak hFala & cu, Ace
* Origin: ECSTASY BBS * Indjija * 022 53 218 * SETNet: (38:111/119)
cccc.549postmast,
From: Aleksandar.Glumac@f119.n111.z38.setgate.setnet.co.yu (Aleksandar Glumac)
Subject: ints&fopen
Date: Tue, 06 Dec 1994 08:42:01
Dali neko ,ko je radio sa intertaptovima, zna dali se treba snimiti status
registara ili to nije potrebno ? Ako jeste ,gde da snimim ?
Preusmerio sa int 1c(h) na moj program gde radim sa far podacima i gde
jedan zauzima 64000 byte-a (binarnog formata),a njega hocu da "bacim" u fajl
,medjutim racunar mi se zablokira. Radim sa fopen,fwrite i fclose.Dali
gresim ili je nesto drugo u pitanju ?
* Origin: ECSTASY BBS * Indjija * 022 53 218 * SETNet: (38:111/119)
cccc.550postmast,
From: Aleksandar.Glumac@f119.n111.z38.setgate.setnet.co.yu (Aleksandar Glumac)
Subject: cccc
Date: Wed, 07 Dec 1994 08:19:31
Paz' vamo . String u C je sku karakteera koji zavrsavaju sa null charactertom
tj \0 .
sada ti bi to uradio ovako ako su a i b karakteri :
char c[10];
c[0]=a , c[1]=b , c[2]='\0';
a da bi pridruzi string stringu koristi strcat() .Za karakter stringu isto
gore samo :
char a='p',b="kobac";
int c;
c=strlen(b);
b[c]=a , b[c+1]='\0';
cu ,Ace :0
* Origin: ECSTASY BBS * Indjija * 022 53 218 * SETNet: (38:111/119)
cccc.551janko,
> bi valjalo da je drugačije). Pascal očigledno prvo prevodi
> sve sa desne strane znaka jednakosti u tip varijable kojoj
> se dodeljuje rezultat.
Opet pogrešno! (nisi čitao Ivanovu poruku, izgleda :(( )
Jednostavno je reč o tome da Paskal ima dva operatora deljenja, DIV i /.
Jedan daje kao rezultat integer a drugi real, float ili double. C ima
jedan jedini operator deljenja čiji rezultujući tip zavisi od tipa
operanada. Zato u Paskalu int / int daje "tačan" real, a u C-u ne.
cccc.552postmast,
From: Aleksandar.Glumac@f106.n103.z38.setgate.setnet.co.yu (Aleksandar Glumac)
Subject: cccc
Date: Sat, 10 Dec 1994 18:28:00
* U originalnoj poruci za All, "Miljan Jovanovic" kaze:
> From: "Miljan Jovanovic" <mjova@sezam.UUCP>
> Newsgroups: yu.prog.c
> Organization: SEZAM Beograd, 011 648-422
> > Nisam se izgledao dobro izjasnio. Moj program ostaje
> > rezidentan u memoriji tako da ono sto sam rekao (cls,
> > dir...) su ustvari iz komandne linije.Samo u rezidentnosti
> > imam jedan poooblem. Moj programcic zauzima 6000 byta ali
> > u memoriji 71kb ! Da umres od tuge! dali se to moze
> > skratiti i kako ? Thanx &
> moras zaviriti u startup kod i malo ga promeniti. alokacije
> raznih
> stvari koje nisu potrebne treba skresati na minimalnu
> velicinu.
> pogledaj i direktive _stklen i _heaplen. racunica je prosta (i
> zapisana u startup kodu). racunaj na 64kb za S i T modele.
> posto je tvoj prg dugacak oko 6k, a u memoriji zauzima 71,
> pretpostavljam da si radio u S modelu.
> treba da smanjis _heaplen na nesto normalno (globalne
> promenljive
> + malo, da ima) i da _stklen odvalis na, recimo, 1k ;). ne
> znam
> sta radis.
> ---
> * Origin: SetNet - BeoInternet most ->...<- (38:103/120.0)
Ja bas nikakve veze nemam sa heapom , dobro samo malloc ;) A
kompajliram u Large i Compact modelu. Ali probacu se _heaplen :)
10x&cul8r,Ace
* Origin: PC Plus BBS, Beograd;+381-11-340-227;SETNet: (38:103/106)
cccc.553driks,
>> From: markom@setnet.co.yu (Marko Milivojevic)
>> :: U poruci za All, "Dragan Radojicic" je rekao:
>>
>> "R> the call VAR(x,6) would expand to (x6).
>>
>> Hmm, ovo nisam znao, ali mislim da je ono sto njemu trba
>> funkcija strcat() :)
strcat() lepi dva stringa, a covek je pitao za lepljenje dva
karaktera :)
cccc.554postmast,
From: Miodrag.Vincic@f122.n103.z38.setgate.setnet.co.yu (Miodrag Vincic)
Subject: C_EPROM
Date: Sat, 10 Dec 1994 13:45:11
Da li neko ima iskustva sa smestanjem C koda u Eprom
tacnije, zanima me da li je neko menjao start-up kod da bi to
realizovao...
Hvala!!!
---FidoPCB v1.0 [NR]
* Origin: * Fenix BBS, Beograd 011 414-312;404-679 * SetNet:(38:103/122) *
cccc.555postmast,
From: Amir.Zolic@f115.n103.z38.setgate.setnet.co.yu (Amir Zolic)
Subject: ints&fopen
Date: Sat, 10 Dec 1994 17:51:06
-=> Quoting Aleksandar Glumac to All <=-
AG> Dali neko ,ko je radio sa intertaptovima, zna dali se treba snimiti
AG> status registara ili to nije potrebno ? Ako jeste ,gde da snimim ?
Sam poziv interuppta (INT) cuva na STACKu vrednosti FLAGS registra.
Jedino je bitno da pazis na FLAGS ako tvoj interrupt treba da vrati
neki status u FLAGS registru (recimo int 13h vraca status u FLAGS reg.)
Ako ti bas treba da sacuvas FLAGS registre, to mozes da uradis na
STACKu, nekom drugom registru (opste namene) ili u bilo kojoj
memorijskoj lokaciji :)
AG> Preusmerio sa int 1c(h) na moj program gde radim sa far podacima i gde
AG> jedan zauzima 64000 byte-a (binarnog formata),a njega hocu da "bacim"
AG> u fajl ,medjutim racunar mi se zablokira. Radim sa fopen,fwrite i
AG> fclose.Dali gresim ili je nesto drugo u pitanju ?
Gresis. Sve f*() funkcije se obracaju DOSu i koriste DOS funkcije
koje nisu reentrant-ne. Problem je u jos jednoj stvari. Te f-je
koriste dinamicku alokaciju memorije (za interne buffer-e) sto takodje
nije preporucljivo raditi iz interrupt funkcija.
Pozdrav
Amir
... Zajedno smo - skupa
* Origin: Atlantis BBS Ł Belgrade Ł Serbia Ł 22:00 - 07:30 (38:103/115)
cccc.556postmast,
From: Amir.Zolic@f115.n103.z38.setgate.setnet.co.yu (Amir Zolic)
Subject: pointeri :(
Date: Sat, 10 Dec 1994 23:40:16
-=> Quoting Brankica Kranjac to All <=-
BK> struct trans * Tr;
BK> ....
BK> Fec_get(&Tr) - Tr je pointer, istog tipa kao Fec.Head.
Prvo postiji pitanje dali uopste treba da se prenosi pointer (Tr)
preko adrese!!! Da ne ubacijes tu jednu referencu bez razloga?
─────────────────────┐
BK> (*Tr) = Fec.Head; │
BK> Fec.Head = (*Tr)->Flink; │
─────────────────────┘
Ovo kako pise ovde je ekvivalentno segmentu
───────────────────────┐
(*Tr) = Fec.Head; │
Fec.Head = (Fec.Head)->Flink;│
───────────────────────┘
ako je to ono sto si mislila da uradis, trebalo bi da radi. Ako i
dalje ne bude radilo, javi da probamo nesto drugo.
Pozdrav
Amir
... Life's Law: NOTHING ever happens until it does.
* Origin: Atlantis BBS Ł Belgrade Ł Serbia Ł 22:00 - 07:30 (38:103/115)
cccc.557dpredovic,
Upravo dobih Watcom 10. Sve izgleda na svom mestu sem Windows IDE-a.
Jeste da mrzim i jedno i drugo, ali bi ipak da vidim kako izgleda...
Jel neko uspeo da instalira to čudo kako treba?
cccc.558postmast,
From: zak@setnet.co.yu (Vladimir Jovanovic)
Subject: Re: 1Ch
Date: Mon, 12 Dec 1994 13:17:39
-=> Aleksandar rece -=>
AG> Provara stack-a ! Cini mi se da je to to ! Samo jedno imtimno pitanje
AG> ....hmm..... kako da se to podesava ?Postoji li gotova f-ja ili moram
AG> sam da je pravim ? Ipak hFala & cu, Ace
Pa ako se ja dobro secam to ide preko pragma direktive
(pogledaj help) mada nisam siguran da ce ti to pomoci kod
poziva dos-a jer moras da proveravas INDOS i slicne
flegove. U jednoj poruci mi je to neko objasnio kako se
radi ali ne znam gde mi je ta poruka.. :(
BTW. Sa ukljucenom proverom steka program ti SIGURNO nece
raditi kako treba.
Zak McKracken 38:101/101@SetNet.Oreska
... Nije vazno sto gubimo, vazno je da se obrcu pare!
* Origin: Oreska BBS, UZICE = SF BIBLIOTEKA = SETNet: (38:101/101)
cccc.559djelovic,
Posto mi je nekoliko ljudi trazilo da im pokazem kako da prave NLM-ove,
iscackao sam jedan zanimljiv primer na tu temu.
Uz poruku je sors NLM-a servera koji sluzi kao record manager, i sors
klijenta koji koristi njegove usluge. BTW, primetite lukavu upotrebu niti
(threads) na serveru - coveku podje voda na usta kad vidi tako nesto :).
nlm_cs.zipcccc.560dejanr,
>> Uz poruku je sors NLM-a servera koji sluzi kao record manager, i sors
>> klijenta koji koristi njegove usluge.
Sjajno. Samo nam kaži kako ih kompajliraš, tj. kojim kompajlerom i uz koje
biblioteke.
cccc.561postmast,
From: markom@setnet.co.yu (Marko Milivojevic)
Subject: Re: cccc
Date: Thu, 15 Dec 1994 01:17:09
-> From: "Dragan Radojicic"
-> To : All
"R> strcat() lepi dva stringa, a covek je pitao za lepljenje dva
"R> karaktera :)
Aha, ocigledno nisam dobro citao poruku... :(
-=> MM <=-
... Who is General Failure, and why is he reading my drive?
* Origin: SETNet - Belgrade HUB1 (38:103/1.1)
cccc.562djelovic,
> Sjajno. Samo nam kaži kako ih kompajliraš, tj. kojim kompajlerom i uz koje
> biblioteke.
Ups, zaboravio sam fajl sa raznim strukturama, prikacen uz ovu
datoteku. Sto se tice kompajlera, za CLIENT.C zaduzen je Borland C, dok je
za SERVER.C zaduzen bilo koji kompajler koji pravi NLM-ove, recimo Watcom C.
nlm_cs.asccccc.563postmast,
From: Aleksandar.Glumac@f119.n111.z38.setgate.setnet.co.yu (Aleksandar Glumac)
Subject: fgetc
Date: Thu, 15 Dec 1994 19:40:17
Zeza me f-ja fgetc. Kada otvorim fajl sa fopen i kazem da cita od offseta do
kraja fajla karakter po karakter on cita od poslednjeg ka prvom ! Kao kod
motorolinih tipova .Zato deli neko zna neku slicni f-ju ili nekako drukcije
da mi pomogne (samo ne da citam od kraja do pocetka ).
* Origin: ECSTASY BBS * Indjija * 022 53 218 * SETNet: (38:111/119)
cccc.564postmast,
From: Arpadffy.Zoltan@f107.n111.z38.setgate.setnet.co.yu (Arpadffy Zoltan)
Subject: Re: DBF
Date: Fri, 09 Dec 1994 12:29:28
Quoting by Mamut
■From:Riste Panovski
■To :"David Kalinic"
■Date:06 Nov 94 20:54:00
■Subj:DBF
RP> Ima li nekoj nekoa rutina ili opis na formatot
RP> za indexite na DBase. <*.NTX> <*.NDX> ne sum siguren
RP> kako besse extenzijat.
Pogledati u knjigama:
- RICK SPENCE : Clipper 5 , Mikro Knjiga
-J.D.BOOTH, G.LIEF : CA Clipper 5.2 Mrezno programiranje
...
cu Zoli
PS.: Nije ispod nivoa citati knjige o Clipperu za C programera :-)))
... My other computer is a VAX.
* Origin: Prometheus BBS - The Northern Frontier - SETNET (38:111/107)
cccc.565postmast,
From: Aleksandar.Nikov@p1.f108.n108.z38.setgate.setnet.co.yu (Aleksandar Nikov)
Subject: fgetc
Date: Sun, 18 Dec 1994 04:09:00
AG> Zeza me f-ja fgetc. Kada otvorim fajl sa fopen i kazem da cita od
AG> offseta do kraja fajla karakter po karakter on cita od poslednjeg
AG> ka prvom ! Kao kod motorolinih tipova .Zato deli neko zna neku
AG> slicni f-ju ili nekako drukcije da mi pomogne (samo ne da citam
AG> od kraja do pocetka ).
AG>
Probaj ovo:
FILE *f;
char ch;
f=fopen("proba.txt","r");
if(f==NULL) { ... }
do
{
ch=fgetc(f);
putch(ch);
} while( ch!= EOF);
fclose(f);
Ovaj programcic bi trebalo da ispise fajl proba.txt na ekran.
Kod mene radi.
Napisi na koji nacin citas fajl.
Pozdrav
Anikov
* MKRead v1.04 * VEGA BBS + 389 91 225280
* Origin: SetNet: *** VEGA BBS*** +389-91-225-280 (38:108/108.1)
cccc.566postmast,
From: Aleksandar.Nikov@p1.f108.n108.z38.setgate.setnet.co.yu (Aleksandar Nikov)
Subject: Re: 1Ch
Date: Sun, 18 Dec 1994 05:41:00
Provera steka za Borland C kompajler se iskljucije u:
Options->Linker->Settings u Options iskljucujess opciju "No Stack"
Za ovo drugo. Kad koristiss interapt 1ch ne mozess koristiti neke
DOS interapte , a funkcije fopen fgetc i druge ih koriste . Zato bi
trebalo da koristiss BIOS pozive za otvaranje fajlova i zapisivanje
u njima. Isto , trebalo bi i da proveriss dali neki drugi program u
tom trenutku radi sa diskom i dali se mozda izvrsava bas tad neki
drugi interapt.
Pozdrav
Anikov
* Origin: SetNet: *** VEGA BBS*** +389-91-225-280 (38:108/108.1)
cccc.567postmast,
From: Aleksandar.Nikov@p1.f108.n108.z38.setgate.setnet.co.yu (Aleksandar Nikov)
Subject: pointeri :(
Date: Sun, 18 Dec 1994 05:47:00
BK> struct trans * Tr;
BK> ....
Ovo ... Dali ovde imass
Tr=(struct trans*)malloc(sizeof(struct trans)); ?
Ako nemass onda mislim da je to.
BK> Fec_get(&Tr) - Tr je pointer, istog tipa kao Fec.Head.
BK> (*Tr) = Fec.Head;
BK> Fec.Head = (*Tr)->Flink;
BK> ^^^^^^^^^^^^^^^^^^^^^^^^^^
BK> if ( Fec.Head == NULL)
BK> {
BK> }
BK> else
BK> {
BK> ode ovde, a ne bi trebalo
BK> } Ovo ne radi posao, iako je desni izraz NULL, (provereno preko
BK> watch),levi ne postaje NULL. ZASTO? Napominjem: ceo program se
BK> prevodi u huge modelu, pointeri su istog tipa, sve izgleda ok. Ima
BK> li iko pojma? HVALA SVIMA!!!
* MKRead v1.04 * VEGA BBS + 389 91 225280
* Origin: SetNet: *** VEGA BBS*** +389-91-225-280 (38:108/108.1)
cccc.568sikima,
Poceo sam da se bavim C-om pa jedno lagano pitanje za prave majstore.
Zanima me kako se koriste Esc sekvence. Evo primera:
main()
{
printf("\033[2J");
}
Po knjizi ovo bi trebalo da brise ekran a racunar mi ispise ono sto je izmedju
navodnika. Gde gresim ? Moze neki spisak ESC naredbi.
Puno pozdrava od
Sikime
cccc.569zeljkoj,
> Po knjizi ovo bi trebalo da brise ekran a racunar mi ispise ono
> sto je izmedju navodnika. Gde gresim ? Moze neki spisak ESC
žini mi se da printf po defaultu piše direktno u video memoriju.
Najbolje otvori datoteku CON: pa piši u nju. Esc sekvence će sigurno
raditi (CON: je konzola).
cccc.570rpausic,
>## Po knjizi ovo bi trebalo da brise ekran a racunar mi ispise ono
>## sto je izmedju navodnika. Gde gresim ? Moze neki spisak ESC
>## naredbi.
CONFIG.SYS:
device=c:ĐdosĐansi.sys ???
Nisam se previše upustio u problem, ali možda ovo pomogne :)
cccc.571vitez.koja,
#=> printf("\033[2J");
#=> Po knjizi ovo bi trebalo da brise ekran a racunar mi
#=> ispise ono sto je izmedju navodnika. Gde gresim ? Moze
#=> neki spisak ESC naredbi.
Možda nemaš ANSI drajver?
cccc.572vitez.koja,
#=> žini mi se da printf po defaultu piše direktno u video
#=> memoriju.
Baš naprotiv, printf uvek i svuda piše preko standardnog izlaza
(stdout), što je sušta suprotnost direktnom pisanju u video
memoriju.
cccc.573ppekovic,
>> Po knjizi ovo bi trebalo da brise ekran a racunar mi ispise ono sto je
>> izmedju navodnika. Gde gresim ? Moze neki spisak ESC naredbi.
Da li koristiš ansi drajver? tj. da li u config-u imaš nešto
kao:
device=c:\dos\ansi.sys
Paya
cccc.574ppekovic,
>> žini mi se da printf po defaultu piše direktno u video memoriju.
Ne, ne piše direktno u video memoriju. Problem je što čovek
nije učitao ansi drajver.
Paya
cccc.575ikordic,
RE: PowerPak
Ima li neko iskustva sa Borland-ovim PowerPak-om za BC 4.0? Prvenstveno me
zanimaju iskustva sa 16-bitnim DOS ekstenderom, DPMI serverom i 32-bitnom
flat memorijom, kao i sa novim TurboVision-om.
Na prvi (i drugi) pogled, čini se da je u pitanju prava riznica korisnih
dodataka. žitajući neke hvalospeve prosto mi se čini da je sve ovo predobro
da bi bilo istinito. Ako nekoga ne bude mrzelo, ovo smatram odličnom temom
za jedan rasturamo-na-crevca članak za "Računare".
cccc.576kcurcic,
> Po knjizi ovo bi trebalo da brise ekran a racunar mi ispise
> ono sto je izmedju navodnika. Gde gresim ? Moze neki spisak
> ESC naredbi.
To bi trebalo da izbrise ekran ako imas instaliran ANSI
drajver. I brise ga. Inace, ispisuje se kao i svaki drugi string.
cccc.577postmast,
From: glisin@fon (Ivan Glisin)
Subject: Re: cccc
Date: Sun, 25 Dec 1994 10:43:39 GMT
Sasa Sikimic (sikima@sezam.UUCP) pise:
>> printf("\033[2J");
Tacno je ali... ovo je ANSI/VT100 sekvenca za brisanje. Da bi radila
potrebno je da si na VT100 terminalu ili da na PC-u dignes ANSI.COM
ili ANSI.SYS (device=c:\dos\ansi.sys u config.sys). Onda ce da radi.
cccc.578postmast,
From: Aleksandar.Nikov@p1.f108.n108.z38.setgate.setnet.co.yu (Aleksandar Nikov)
Subject: fgetc
Date: Sat, 24 Dec 1994 22:46:00
> To isto i ja radim , ali ako u fajlu pocinje na nekom xx
> ofsetu i ja dovedem
> fajl pointer sa fseek i ako tu pa do kraja falja pise"PERA !"
> fgetc ce
> uraditi sledece :
> procitace "! AREP" . Dali je to zbog fseek ...
Ne znam. Ali mogao bi da posaljess segment u kome citass
da pogledam u cemu je stvar.
> Dali znas kako neku vrednost koja je binarno izrazena u fajlu
> procitam kao
> normalnu "enkodovanu" vrednost ?
Imass funkcije fprintf i fscanf.
recimo ovako: fprintf(f,"%d",10);
a posle pri citanju fscanf(f,"%d",&i); gde je i integer;
Pozdrav
Anikov
* Origin: SetNet: *** VEGA BBS*** +389-91-225-280 (38:108/108.1)
cccc.579postmast,
From: Aleksandar.Nikov@p1.f108.n108.z38.setgate.setnet.co.yu (Aleksandar Nikov)
Subject: cccc
Date: Sat, 24 Dec 1994 22:53:01
* Vo porakata za All, "Zeljko Jovanovic" reche:
> Cini mi se da printf po defaultu pise direktno u video
> memoriju.
> Najbolje otvori datoteku CON: pa pisi u nju. Esc sekvence ce
> sigurno
> raditi (CON: je konzola).
printf nikad ne pisse direktno u video memoriji.
ne radi ni bios pozivima nego koristi dos pozive.
Probaj da pomocu printf napises nesto u boji :)
Pozdrav
Anikov
* Origin: SetNet: *** VEGA BBS*** +389-91-225-280 (38:108/108.1)
cccc.580postmast,
From: Aleksandar.Glumac@f119.n111.z38.setgate.setnet.co.yu (Aleksandar Glumac)
Subject: fgetc
Date: Wed, 21 Dec 1994 20:15:12
AN> FILE *f;
AN> char ch;
AN> f=fopen("proba.txt","r");
AN> if(f==NULL) { ... }
AN> do
AN> {
AN> ch=fgetc(f);
AN> putch(ch);
AN> } while( ch!= EOF);
AN> fclose(f);
To isto i ja radim , ali ako u fajlu pocinje na nekom xx ofsetu i ja dovedem
fajl pointer sa fseek i ako tu pa do kraja falja pise"PERA !" fgetc ce
uraditi sledece :
procitace "! AREP" . Dali je to zbog fseek ...
Dali znas kako neku vrednost koja je binarno izrazena u fajlu procitam kao
normalnu "enkodovanu" vrednost ?
cu & hFala , Ace
* Origin: ECSTASY BBS * Indjija * 022 53 218 * SETNet: (38:111/119)
cccc.581postmast,
From: Amir.Zolic@f125.n103.z38.setgate.setnet.co.yu (Amir Zolic)
Subject: cccc
Date: Thu, 22 Dec 1994 05:50:42
-=> Quoting "Dejan Jelovic" to All <=-
DJ> From: "Dejan Jelovic" <djelovic@sezam.UUCP>
DJ> Newsgroups: yu.prog.c
DJ> Organization: SEZAM Beograd, 011 648-422
DJ> Posto mi je nekoliko ljudi trazilo da im pokazem kako da prave
DJ> NLM-ove, iscackao sam jedan zanimljiv primer na tu temu.
DJ> Uz poruku je sors NLM-a servera koji sluzi kao record manager, i
DJ> sors klijenta koji koristi njegove usluge. BTW, primetite lukavu
DJ> upotrebu niti (threads) na serveru - coveku podje voda na usta kad
DJ> vidi tako nesto :).
Ajd daj malo toga u porukama :) Ne mogu svi da skidaju file-ove uz
poruke na Sezamu :( Bar dok ne uvedu 14400 :))
Pozdrav
Amir
* Origin: SETNet : Birostroj BBS : NON-STOP : 14400 bps : 011/609945 (38:103/125)
cccc.582postmast,
From: markom@setnet.co.yu (Marko Milivojevic)
Subject: Re: cccc
Date: Tue, 27 Dec 1994 23:57:12
-=> Reply to: "Zeljko Jovanovic" <=-
"J> Cini mi se da printf po defaultu pise direktno u video memoriju.
"J> Najbolje otvori datoteku CON: pa pisi u nju. Esc sekvence ce sigurno
"J> raditi (CON: je konzola).
printf() i po defaultu i kako god okrenes pise na stdout ;-)
-=> MM <=-
... Hey! Don't shoot that postal worker! NO CARRIER
* Origin: SETNet - Belgrade HUB1 (38:103/1.1)
cccc.583postmast,
From: markom@setnet.co.yu (Marko Milivojevic)
Subject: Re: cccc
Date: Tue, 27 Dec 1994 23:58:24
-=> Reply to: Aleksandar Nikov <=-
AN> Probaj da pomocu printf napises nesto u boji :)
;->>
printf("%c[1;5;31mJos i trepce ;-))))\n", 27);
Ko kaze da ne moze :-):-)
-=> MM <=-
... Ko tebe kamenom, taj te gadja!
* Origin: SETNet - Belgrade HUB1 (38:103/1.1)
cccc.584lavirint,
ŔŔŔ printf("%c[1;5;31mJos i trepce ;-))))\n", 27);
ŔŔŔ
ŔŔŔ Ko kaze da ne moze :-):-)
Ja kazem da ne moze, ako nemas ANSI.SYS/COM :)
cccc.585postmast,
From: Aleksandar.Nikov@p1.f108.n108.z38.setgate.setnet.co.yu (Aleksandar Nikov)
Subject: cccc
Date: Thu, 29 Dec 1994 04:16:00
-=> Quoting Marko Milivojevic to Aleksandar Nikov <=-
AN> Probaj da pomocu printf napises nesto u boji :)
MM>
MM> ;->>
MM>
MM> printf("%c[1;5;31mJos i trepce ;-))))\n", 27);
MM>
MM> Ko kaze da ne moze :-):-)
MM>
MM>
MM> -=> MM <=-
MM>
MM>
:) Mislio sam bez ANSI. ANSI radi samo kada se pise na ekranu
pomocu DOS poziva. (a printf radi na taj nacin).
Probaj sad da pomocu printf napises nusto u boji a da ANSI nije
ucitan. ;>>
Pozdrav
Anikov
... Taglines are irrelevant. You will be assimilated into the VEGA BBS
* Origin: SetNet: *** VEGA BBS*** +389-91-225-280 (38:108/108.1)
cccc.586postmast,
From: Aleksandar.Glumac@f119.n111.z38.setgate.setnet.co.yu (Aleksandar Glumac)
Subject: BGI
Date: Sat, 31 Dec 1994 17:20:05
Dali neko zna gde ima da se nabavi BGI drajver za 320x200x256 za TC++ ali
skroz ispravan. Skinuo sam sa Politike neke drajvere ali nerade sa video
stranicama pa nerade.Dali neka dobra dusa u SET-u koja moze da mi pomogne
(smrc,smrc) ?Pozdrav ,Ace
* Origin: ECSTASY BBS * Indjija * 022 53 218 * SETNet: (38:111/119)