PCPROG.5

05 Jan 1995 - 02 Oct 1995

Topics

  1. algoritmi (106)
  2. comment (2)
  3. ms.dos (27)
  4. windows (332)
  5. asembler (203)
  6. basic (228)
  7. jezici (126)
  8. pascal (1085)
  9. cccc (546)
  10. cpp (117)
  11. clipper (1048)
  12. baze.podataka (194)
  13. fox (231)
  14. cavo (192)
  15. razno (593)

Messages - asembler

asembler.106 bceklic, -> #103, mmitrovic
> kodiranja instrukcija i njihovim ogranicenjima), sto ce reci > Intel nije Intel kompatibilan. ;) Kako stvari stoje na ostalim > Intelima, AMDovima i Cirixima? Mislim da bi trebalo po svaku cenu ibegavati upotrebu nestandardnih instrukcija jer cete se vrlo brzo naci u nezgodnoj situacija kada program odbije saradnju na tamo 'nekoj' platformi. :( Pozdrav!
asembler.107 mmitrovic, -> #106, bceklic
::::: Mislim da bi trebalo po svaku cenu ibegavati upotrebu nestandardnih ::::: instrukcija jer cete se vrlo brzo naci u nezgodnoj situacija kada ::::: program odbije saradnju na tamo 'nekoj' platformi. :( Ko kaže da ćemo je koristiti, ko zna da li uopšte igde radi. To nije bila poenta. Poenta je da su encode tablice koje je Intel ZVANIžNO objavio u neskladu sa stvarnim stanjem stvari. Dotična instrukcija postoji u tim tablicama i trebalo (čuj, morala) je da funkcioniše. U tablici nigde ne piše da se CS ne sme učitavati direktno memorijski.
asembler.108 bceklic, -> #107, mmitrovic
> ::::: Mislim da bi trebalo po svaku cenu ibegavati upotrebu > nestandardnih ::::: instrukcija jer cete se vrlo brzo naci u > nezgodnoj situacija kada ::::: program odbije saradnju na tamo > 'nekoj' platformi. :( > > Ko kaze da cemo je koristiti, ko zna da li uopste igde radi. To > nije bila poenta. Poenta je da su encode tablice koje je Intel Nisam ni rekao da cete je koristiti. Samo sam dao svoju preporuku. Btw, poruka je bila upucena vise drugima nego vama...
asembler.109 ognjen, -> #105, bceklic
)-> Ovakav nacin izlaska ne preporucujem i treba ga izbegavati )-> (bilo da se radi ret na pocetak PSP-a) ili direktan skok na )-> int 20h. 21,4ch je resenje koje treba primenjivati uvek. Zašto?
asembler.110 bceklic, -> #109, ognjen
> )-> Ovakav nacin izlaska ne preporucujem i treba ga izbegavati > )-> (bilo da se radi ret na pocetak PSP-a) ili direktan skok na > )-> int 20h. 21,4ch je resenje koje treba primenjivati uvek. > > Zasto? Citav problem se svodi u sustini na pitanje kompatibilnosti. Bilo da se radi o kompatibilnosti sa aktuelnom konfiguracijom ili o kompatibilnosti sa drugim programima koji su na neki nacin vezani za njega. U drugom slucaju postoji vise mogucnosti. Ja licno sam imao problema sa nekim programima koji su koristili ovaj nacin izlaska (koverzija com programa, kontrola rada programa itd.) pa otud i moj komentar. Uostalom cini mi se da svi info programi preporucuju izlaz sa 21,4cH. Sigurno sa razlogom. Pozdrav!
asembler.111 saricl,
Pretpostavljam da bi neko iz ove Conf mogao da mi pomogne. Napravio sam karticu za PC i treba mi program koji će da opslužuje interapt te kartice. Recimo IRQ 12. Zanima me dali zahtev za interapt treba da bude setovan svo vreme dok računar ne obradi interapt ili je dovoljno da se postavi sa jednim kratkotrajnim inpulsom. Takođe na koji način računar šalje potvrdu da je opslužio interapt.
asembler.112 saricl,
Hteo bi da napišem jednu prekidnu rutinu pa me zanima kako to treba da funkcioniše, i dali neko može da mi okači ovde jednu sa kraćim objašnjenjem, čisto radi primera.
asembler.113 speedy, -> #37, msavkovic
Jel neko ima ICESoft Debugger za DOS? ^^^ Speedy
asembler.114 msavkovic, -> #113, speedy
┌┌┌ Jel neko ima ICESoft Debugger za DOS? ┌┌┌ ^^^ To i ja vec duze trazim. :) Ajte ako ima neko...
asembler.115 kdrazan,
Zna li iko šta ne valja sljedećem primjeru ;(, odnosno vjerovatno je primjer dobar samo ja nisam sa dobrim svičevima preveo i linkovao. Išao sam čisti TASM fajl i TLINK fajl. Kao što vidite - primjer se dobija u paketu sa TASM-om... (a jest' i primjer ;)... (Da se odmah razumijemo - asembler poznajem koliko i Japanski, no obzirom da za ovaj drugi nemam baš nekog afiniteta, asembler bih ipak htio naučiti, i evo "fino" sam kren'o - i dobro prošao :))). 'Ajde, ne bih vas zamarao oko ovoga, nego desi se jedna žestoka svinjarija: NE PREVODITE OVAJ FAJL NI ZA čIVU GLAVU AKO NE ZNATE KAKO! Ja - očigledno nisam znao. Inače kako objasniti da mi je napravio pravi džumbus u CMOS-u !!! Razbuc'o mi je čak i default vrijednosti, manijak jedan - sav sam se preznojio. No dobro, oladio sam se i sredio stvar, sad sve šljaka kako Bog zapovijeda, no... pazite se... ja nisam :( Dakle evo srećnog fajla, koji je mene baš "usrećio" : ; Turbo Assembler example. Copyright (c) 1993 By Borland International, Inc. ; ASMPSCL.ASM ; From the Turbo Assembler User's Guide Ch. 18 ; Called as: TEST_PROC(i, j, k); ; i equ 8 ;leftmost parameter j equ 6 k equ 4 ;rightmost parameter .MODEL small .CODE PUBLIC TEST_PROC TEST_PROC PROC push bp mov bp,sp mov ax,Šbp+iĆ ;get i add ax,Šbp+jĆ ;add j to i sub ax,Šbp+kĆ ;subtract k from the sum pop bp ret 6 ;return, discarding 6 parameter bytes TEST_PROC ENDP END gpa#aH.
asembler.116 bkaradzic,
Da li neko ima SoftICE debugger za DOS(!) ???
asembler.117 bceklic, -> #116, bkaradzic
> Da li neko ima SoftICE debugger za DOS(!) ??? Ovo vec postaje zamorno.. :) Svaki drugi dan osvane po jedna poruka u kojoj se trazi Soft Ice. Elem, u ovoj konferenciji je neko vec ostavio verziju za Win. Verziju za Dos izgleda da nema niko ili je ima a ne zeli da je podeli sa drugima ;) U svakom slucaju hteo bih da pitam sta to svi ocekuju od SI debugera kad je toliko trazen?
asembler.118 msavkovic, -> #116, bkaradzic
┌┌┌ Da li neko ima SoftICE debugger za DOS(!) ??? Da, da li NEKO ima softice debbuger za D O S !!! ĘĘĘ
asembler.119 mdimitrijevic, -> #117, bceklic
Od Soft Ice-a ocekujemo mnogo bolje debagovanje. Mnogo je bolji od drugih programa i moze da izbegne mnoge nacine za blokiranje debagera i nacine zastite programa od pregleda. Sve u svemu bolji je od drugih. Pozdrav, Marjan
asembler.120 deimos,
Vazno mi je i hitno: Ako je u realnom modu adresa video memorije A000:0000 koja je onda to adresa u 386+PM FLAT modelu ? (nemojte mi reci da je 000A0000h). Hvala unapred, Vlada.
asembler.121 bceklic, -> #119, mdimitrijevic
> Od Soft Ice-a ocekujemo mnogo bolje debagovanje. Mnogo je bolji > od drugih programa i moze da izbegne mnoge nacine za blokiranje > debagera i nacine zastite programa od pregleda. > Sve u svemu bolji je od drugih. Nisam bez razloga postavio moje pitanje iako su mi vec bile poznate karakteristike SI-a. ;) Cini mi se da ovde postoji zabluda da ce neki super-super debuger resiti sve moguce probleme na koje se nailazi sto naravno nema veze sa istinom. Tome cini mi se doprinose nerealne ocene i ocekivanja iz raznih casopisa (obicno se SI spominje kao 'super extra' debuger mada ga niko nije ni video 'ali je cuo o njemu'. Nedavno se ovde pojavila verzija za Win koju sam samo pogledao i ...ostavio. Ako neko ne moze da resi problem sa TD-om (koji inace koristim) on nece moci da ga analizira ni u SI-u. TD-a inace nije u opste lako oboriti sto je jos jedna od velikih zabluda. Uzgred, imao sam prilike da se sretnem sa oko 50 raznih vrsta zastite i nije bilo ni jedne sa kojom se TD nije mogao izboriti. Dakle, jos jedan plus Borlandu. :) Pozdrav! P.S. Znam da postoje i bolji debageri od Si-a i mislim da je krajnje vreme da neko pocne potragu za njima...
asembler.122 msavkovic, -> #121, bceklic
┌┌┌ Ako neko ne moze da resi problem sa TD-om (koji inace ┌┌┌ koristim) on nece moci da ga analizira ni u SI-u. TD-a ┌┌┌ inace nije u opste lako oboriti sto je jos jedna od velikih ┌┌┌ zabluda. E? A ti si oba probao pa znas? P.S. Cuh da SI ima save opciju ;)
asembler.123 saricl,
dali neko može da mi kaže na koji način se vrši učitavanje 16 bitnog podatka sa magistrale. Kad učitavam sa IN AX,DX pri čemu je u DX=278h učitava mi se regularno samo donji bajt. Inače uređaj na toj adresi JESTE šesnaestobitn, i postavlja odgovarajućii bajt na magistralu. Dali je možda potrebno negde prvo setovati šesnaestobiiitni ulaz, ili nešto slično? Dali se učitava viši bajt na istoj adresi(parna neparna).
asembler.124 bkaradzic, -> #117, bceklic
; > Da li neko ima SoftICE debugger za DOS(!) ??? ; ; Ovo vec postaje zamorno.. :) ; Svaki drugi dan osvane po jedna poruka u kojoj se trazi Soft Ice. ; Elem, u ovoj konferenciji je neko vec ostavio verziju za Win. Verziju ; za Dos izgleda da nema niko ili je ima a ne zeli da je podeli sa ; drugima ;) ; ; U svakom slucaju hteo bih da pitam sta to svi ocekuju od SI debugera ; kad je toliko trazen? Meni treba zato sto radi u 32bit protected modu!
asembler.125 bkaradzic, -> #120, deimos
;;; Ako je u realnom modu adresa video memorije A000:0000 koja je ;;; onda to adresa u 386+PM FLAT modelu ? (nemojte mi reci da je ;;; 000A0000h). :) jeste, ali VideoMemory = 000A0000h - _code32 :)
asembler.126 bkaradzic, -> #121, bceklic
;;; Ako neko ne moze da resi problem sa TD-om (koji inace koristim) ;;; on nece moci da ga analizira ni u SI-u. TD-a inace nije u opste ;;; lako oboriti sto je jos jedna od velikih zabluda. Problem koji je neresiv za TD je 32bit protected mode!!! :( ;;; Uzgred, imao sam prilike da se sretnem sa oko 50 raznih vrsta ;;; zastite i nije bilo ni jedne sa kojom se TD nije mogao izboriti. "Couldn`t enter 32bit protected mode!!!" Ova "zastita" je neresiva sa TD, a za SoftICE je to sasvim normalno. ;;; Dakle, jos jedan plus Borlandu. :) Ipak, jedan veeeeliki minus Borlandu (samo za TD;)
asembler.127 bceklic, -> #122, msavkovic
> ┌┌┌ Ako neko ne moze da resi problem sa TD-om (koji inace > ┌┌┌ koristim) on nece moci da ga analizira ni u SI-u. TD-a > E? > A ti si oba probao pa znas? Opet kazem da debuger ne moze sam da obavi posao i da isti posao moze da uradi i TD (mozda na tezi nacin ali ipak moze). Dakle, ako i tebi kojim slucajem nije potreban bas 32Bit PM dibager ;) problem se moze resiti i obicnim TD-om... Pozdrav!
asembler.128 bceklic, -> #126, bkaradzic
> "Couldn`t enter 32bit protected mode!!!" > Ova "zastita" je neresiva sa TD, a za SoftICE je to sasvim > normalno. Ja koristim 3.2 verziju TD-a. Nisam informisan o tome da li su nove verzija TD-a resile ovaj problem? U svakom slucaju siguran sam da ce Borland resiti ovaj problem (ako vec nije :) Pozdrav! P.S. Da li u TASM-u 4.0 postoji TD32 ? Sta se to desava ovih dana kada svi debaguju 32Bit PM aplikacije? ;)
asembler.129 flash,
Pozdrav, Ko bi rek'o da je pisanje i najjednostavnijeg TSR programa tako teško. Uz ovu poruku je source koji pravi probleme. Program bi trebalo da u pozadini prima podatke sa COM porta i povremeno ih snima u fajl. E sad, ja sam sve to zbudžio i to radi, samo što ima par bagova: 1. primer: program je instaliran na COM2, na COM1 je miš. Program normalno radi sve dok ne počne da se klikće po mišu (testirano u svim Nortonovim programima) Računar se zaglavi. Ovo mi nije jasno jer COM1 i COM2 imaju različiti IRQ tako da to ne bi trebalo da ima veze. 2. primer: program prima podatke sa COM porta i kada se prijemni bafer napuni, onda ga snima na disk u fajl C:\007.LOG Sve radi OK bez obzira koliko je disk aktivan. Radi normalno i 'ispod' NDD-a i SPEEDISK-a. Problem nastaje ukoliko u momentu startovanja nekog programa, TSR hoće da upiše bafer. Program koji je počeo da se startuje, ili se zaglavi, ili izbaci poruku tipa 'error est0001: Ilegall format in loadable file.' (Int 13h je uredno preuzet, kao što se vidi iz source-a) Ukoliko se neko razume u materiju, molio bih ga da pomogne u rešavanju ovih par problemčića. Predrag P.S. Zbog lakšeg testiranja, ubacio sam nekoliko DEBUG konstanti koje se nalaze na početku listinga. Sada je podešeno da program upisuje test bafer svakih 5-6 sekundi (čuje se beep) bug-tsr.zip
asembler.130 maksa, -> #126, bkaradzic
>> Problem koji je neresiv za TD je 32bit protected mode!!! :( bc4, readme Debuggers --------- Borland's Turbo Debugger supports both 16-bit DPMI debugging (TD.EXE) and 32-bit DPMI debugging (TD32.EXE). DPMI support services are provided by several files delivered with PowerPack for DOS, and are used by both debuggers.
asembler.131 mdimitrijevic, -> #121, bceklic
Glavna potreba je 32-bitni PM i to je sve. Ukoliko nabavim kompletan BC 4.x onda cu da pogledam da li je to reseno u TD-u. TD je vrlo dobar i koristim ga uvek osim kod PM programa gde se blokira. Pozdrav, Marjan
asembler.132 evlad, -> #128, bceklic
<> P.S. Da li u TASM-u 4.0 postoji TD32 ? Directory of C:\TASM\BIN 32RTM EXE 141,566 12-14-93 4:00a BRC EXE 38,208 12-14-93 4:00a BRC32 EXE 50,720 12-14-93 4:00a BRCC EXE 298,576 12-14-93 4:00a BRCC32 EXE 310,304 12-14-93 4:00a IMPDEF EXE 77,824 12-14-93 4:00a IMPLIB EXE 94,208 12-14-93 4:00a MAKE EXE 139,264 12-14-93 4:00a MAKER EXE 60,884 12-14-93 4:00a MAKESWAP EXE 45,910 12-14-93 4:00a OBJXREF EXE 86,016 12-14-93 4:00a RLINK EXE 117,149 12-14-93 4:00a RTM EXE 109,022 12-14-93 4:00a TDMEM EXE 16,752 12-14-93 4:00a TDUMP EXE 184,320 12-14-93 4:00a TLIB EXE 57,344 12-14-93 4:00a WINSTUB EXE 578 12-14-93 4:00a TDWINI EXE 58,880 12-14-93 4:00a TD32 EXE 643,072 12-14-93 4:00a TD32INST EXE 192,512 12-14-93 4:00a TD EXE 708,648 12-14-93 4:00a TDINST EXE 134,836 12-14-93 4:00a TDREMOTE EXE 23,586 12-14-93 4:00a TDRF EXE 21,380 12-14-93 4:00a TDW EXE 660,000 12-14-93 4:00a TDWINST EXE 133,238 12-14-93 4:00a WREMOTE EXE 41,984 12-14-93 4:00a WRSETUP EXE 12,800 12-14-93 4:00a H2ASH EXE 275,968 12-14-93 4:00a TASM EXE 134,884 12-14-93 4:00a TASMX EXE 148,378 12-14-93 4:00a TDSTRIP EXE 15,112 12-14-93 4:00a TLINK EXE 150,162 12-14-93 4:00a H2ASH32 EXE 299,008 12-14-93 4:00a TASM32 EXE 163,840 12-14-93 4:00a TDSTRP32 EXE 49,152 12-14-93 4:00a TLINK32 EXE 290,816 12-14-93 4:00a GROUPS EXE 8,096 12-14-93 4:00a kao što vidiš ima ...
asembler.133 bceklic, -> #130, maksa
> --------- > Borland's Turbo Debugger supports both 16-bit DPMI debugging > (TD.EXE) and 32-bit DPMI debugging (TD32.EXE). DPMI support > services are provided by several files delivered with PowerPack > for DOS, and are used by both debuggers. HA! :) Bio sam siguran da su taj problem u Borlandu odavno resili jer je 4.0 verzija jos iz '93 godine...
asembler.134 bceklic, -> #129, flash
> Ko bi rek'o da je pisanje i najjednostavnijeg TSR programa tako > tesko. Uz ovu poruku je source koji pravi probleme. > Program bi trebalo da u pozadini prima podatke sa COM porta i > povremeno ih snima u fajl. E sad, ja sam sve to zbudzio i to > radi, samo sto ima par bagova: > 'error est0001: Ilegall format in loadable file.' > (Int 13h je uredno preuzet, kao sto se vidi iz source-a) Najcesci problem kod ovakvih TSR programa je sam pristup disku (I/O). Pretpostavljam da koristis Int 21 (3C i 40) za upis u fajl. Da bi savladao ove probleme detaljno prouci infomacije o sledecim interaptima (na zalost svi su nedokumentovani i njihov izlaz zavisi od verzije dos-a) Int 28H, Int 21,34, Int 21,5D. Sve se svodi na to da ne smes da izvodis I/O pozive dok je setovan Dos Critical flag (gore pomenuti interapti ce ti pomoci da ga lociras). Da li znas ko je izvor pomenute poruke o greski? Uzgred, source programa nisam jos uvek skinuo pa ne mogu jos uvek da it kazem nista konkretno.
asembler.135 msavkovic, -> #132, evlad
┌┌┌ <> P.S. Da li u TASM-u 4.0 postoji TD32 ? ┌┌┌ ┌┌┌ TDWINI EXE 58,880 12-14-93 4:00a ┌┌┌ TD32 EXE 643,072 12-14-93 4:00a ┌┌┌ TD32INST EXE 192,512 12-14-93 4:00a Ovo je za glupi windows, video bi to i sam da si probao da ga startujes ┌┌┌ kao sto vidis ima ... kao sto znam nema ...
asembler.136 deimos, -> #125, bkaradzic
PP>> :) jeste, ali VideoMemory = 000A0000h - _code32 :) E, u cemu onda gresim? Ja sam napravio cisto radi proveresinonim u V86 modu i tu je bilo ES: 0000h, DI: A0000h, i onda jedno rep movsw, a sada kada je ES:000h i EDI:000A0000h jednostavno - ne radi. HELP! Vlada.
asembler.137 miccko, -> #121, bceklic
 s-ice imam vise od godinu dana. Sto nisi pitao pravog coveka. Da si ga koristio znao bi da nema svrhe stavljati INT 3 u program. Ako me lepo zamolis poslacu ti verziju 2.5
asembler.138 maksa, -> #135, msavkovic
>> kao sto znam nema ... Ne znaš.
asembler.139 maksa, -> #136, deimos
>> E, u cemu onda gresim? Ja sam napravio cisto radi >> provere sinonim u V86 modu i tu je bilo ES: 0000h, DI: A0000h, >> i onda jedno rep movsw, a sada kada je ES:000h i EDI:000A0000h >> jednostavno - ne radi. HELP! Ono što ti je čovek napisao važi za kombinaciju asm + pmode extender. Određivanje 32-bitne adrese u opštem slučaju je komplikovanije od prostog spajanja bitova, i zavisiod OS-a, extendera, prevodioca ...
asembler.140 bceklic, -> #137, miccko
>  s-ice imam vise od godinu dana. Sto nisi pitao pravog coveka. Pa sto ne cutis? :) > Da si ga koristio znao bi da nema svrhe stavljati INT 3 u > program. Kao sto vec rekoh upoznat sam sa nekim od mogucnosti SI-a. > Ako me lepo zamolis poslacu ti verziju 2.5 Ako si raspolozen da ga podelis sa drugima bilo bi lepo da ga posaljes na PRO-BA. Pozdrav!
asembler.141 deimos, -> #139, maksa
RE: FLAT Model Na osnovu Pmode/DoS4GW sam i uzeo tu adresu u obzir, ali ako znas molim te mi objasni kako da odredim lepo adresu vÚ]ideo memorije. Inace, OS je DOS. Vlada. ps. Cackao sam po onoj intelovoj dokumentaciji za 386 procesore, ali nisam uspeo da ukacim.
asembler.142 maksa, -> #141, deimos
>> Na osnovu Pmode/DoS4GW sam i uzeo tu adresu u obzir, ali ako Ovo baš ne razumem. Pmode je extender za asm. koji je neko ovde okačio pre nekog vremena, i u njemu se 32-bitna adresa određuje prema već navedenoj formuli adresa - _pmode32. Za DOS4GW ekstender ne znam kako bi se to tačno izvelo (nikad nisam imao dodir sa kompajlerom koji ga podržava). U kombinaciji BC4 + DOS Power Pack o tome brine 32rtm.exe. >> mi objasni kako da odredim lepo adresu video memorije. Joj bre, da znam, rekao bih ti još pre tri poruke. ;)) Na pitanje 'gde je video memorija' ne postoji jednoznačan odgovor u stilu 'tu i tu'. U opštem slučaju to se radi preko DPMI servisa (int 2Fh, valjda), a koja tačno f-ja ne znam, nemam DPMI specifikaciju. Uz ovu poruku ti besim neku DPMI biblioteku za C koja možda može da ti pomogne. >> ps. Cackao sam po onoj intelovoj dokumentaciji za 386 procesore, ali >> nisam uspeo da ukacim. Ako se budeš bavio protected modom, ovo ćeš morati da izbistriš. dpmi_lib.zip
asembler.143 deimos, -> #142, maksa
 ű>> >> Na osnovu Pmode/DoS4GW sam i uzeo tu adresu u obzir, ali ako >> Ovo bas ne razumem. I u DOS4GW i u Pmode-u video memorija je na 0A0000h. Inace kompajler koji radi sa DOS4GW je Watcom-ov C kompajler. >> opstem slucaju to se radi preko DPMI servisa (int 2Fh, valjda), a koja Hvala na fajlu prikacenim uz poruku, ali sam sve to vec izbistrio sa DPMI-om, a sada me interesuje nesto tipa 'kako napraviti sopstveni ekstender sa ogranicenim mogucnostima u zavisnosti od potrebe'. Ipak, hvala. Pozdrav, Vlada.
asembler.144 saricl,
Postoji li na|in da se od EXE,COM,SYS fajla napravi ASM fajl? Imam TASM V4.00 i nisam uspeo da provalim kako se to radi.
asembler.145 saricl,
dali neko zna za[to mi IN AX,DX u`itava regularno samo donji bajt sa magistrale. Napominjem da uređaj koji treba da prosledi reč to i čini. Treba li negde nešto da setujem ili podesim da bi mi bio dozvoljen pristup šesnaestobitnom ulazu.
asembler.146 deimos, -> #144, saricl
RE: EXE,COM,SYS -> .ASM Probaj sa Sourcerom (koji ja koristim). Ako ga nema na sezamu ili ne mozes nigde da ga nadjes poslacu ja SR 5.0 Vlada.
asembler.147 deimos, -> #145, saricl
RE: IN AX,DX Stvar je u tome sto mozes da pokupis samo jedan bajt za redom uz pomoc IN-a. Ako zelis da uzmes word sa porta, koristi IN AL,DX + IN AH,DX. Vlada.
asembler.148 flash, -> #134, bceklic
> Da li znas ko je izvor pomenute poruke o greski? Najverovatnije TSR prekine program koji se izvršava foreground, jer se upis na disk i vrši preko DOS funkcija 3dh,40h. Evo uprošćene šeme programa: ; INTERRUPT PROCEDURES newint0b proc far ; 0B, IRQ3, COM2 Ako je prispeo znak na port, upisati ga u bafer ReceiveBuff[index]:=znak inc index end newint0b endp newint8 proc far pushf call oldint8 Ako je prijemni bafer (ReceiveBuff) pun, zahtev za upis na disk popflag:=POPTIME end Ako je postavljen zahtev za upis bafera call check_system If system OK to popup call main end end iret newint8 endp ;------------------ newint9 proc far pushf call oldint9 if hotkey pressed ; Postavlja se zahtev za snimanje bafera popflag:=POPTIME endif iret newint9 endp ;------------------ newint10 proc far inc cs:int10_active ; Indikator da je interrupt pushf ; u toku. call cs:[oldint10] dec cs:int10_active iret newint10 endp ;------------------ newint13 proc far pushf inc cs:int13_active ; Indikator da je interrupt call cs:[oldint13] ; u toku. pushf dec cs:int13_active popf ret 2 newint13 endp ;------------------ newint28 proc far bla,bla... newint28 endp ;------------------ OSTALE RUTINE check_system proc near if not int10_active, and if not int13_active, and and if not DOS CriticalErrorFlag, and and if not InDOS flag -može upis na disk end check_system endp Kao što vidiš proverava se i int13h i InDOS flag i CriticalError flag, međutim stvar ne radi.
asembler.149 miccko, -> #140, bceklic
> s-ice imam vise od godinu dana. Sto nisi pitao pravog coveka. Pa sto ne cutis? :) > Da si ga koristio znao bi da nema svrhe stavljati INT 3 u > program. Kao sto vec rekoh upoznat sam sa nekim od mogucnosti SI-a. > Ako me lepo zamolis poslacu ti verziju 2.5 Ako si raspolozen da ga podelis sa drugima bilo bi lepo da ga posaljes na PRO-BA. Pozdrav! Evo probacu da ga zakacim za ovu poruku mada nisi zasluzio da ti posaljem ali kad sam video da stavljas INT 3 i da koristis TD 3.1 onda mora da si mnogo ocajan. U svakom slucaju program nije nesto ekstra ali je jedan od boljih (na primer ne mozes da razbijes moj program njime). Za 32-bitni rezim sam morao da razvijem svoj debager. Ti pogledaj pa ako ti se svidi... Dejan HHHHHHHHHHHHHHHHHHH s-ice.arj
asembler.150 deimos, -> #142, maksa
RE: PM FLAT Modela Adressing >> >> mi objasni kako da odredim lepo adresu video memorije. >> >> Joj bre, da znam, rekao bih ti jos pre tri poruke. ;)) Na pitanje 'gde >> je video memorija' ne postoji jednoznacan odgovor u stilu 'tu i tu'. U >> opstem slucaju to se radi preko DPMI servisa (int 2Fh, valjda), a koja E, pa evo ovako. Uz malo cackanja i raznih drugih stvari, dosao sam do sledeceg zakljucka. U Realnom modu idu adrese 0000:0000-0000:FFFF, pa 1000:0000-1000:FFFF i tako dalje. Posto se relativna vrednost segmenta poveca za FFFFh svaki put kad ofset predje 64K, u FLAT PM modelu segment se predstavlja kao '1' umesto '1000'. Toliko o opste poznatoj teoriji. Kada se sartuje program koji koristi 386+ instrukcije u PM i koristi linearnu memoriju, on se ucita u prvi slobodan blok memorije koju on tretira kao adresu nula, tj 0000:0000 u RM. Ako znamo da je adresa video memorije, u konkretnom primeru, u RM na A000:0000, pretvoricemo je u adresu kako se ona gleda u linearnom (FLAT) modelu, tj. kao A0000h. Sve sto nam preostaje je da od nama potrebne adrese (A0000h) oduzmemo pocetnu adresu gde se program ucitao i to je to. Na primemr: Code_Seg SEGMENT PUBLIC 'CODE' USE32 ASSUME CS:Code_Seg ... vmem_pm equ 0A0000h .... mov edi,vmem_pm sub edi,Code_Seg U EDI registru ostaje pocetna adresa video memorije. Problem: Gledajuci Intel-ovu dokumentaciju o 386 procesorima, video sam da se i za flat model kaze da ako hocemo da prenesemo odredjenu kolicinu podataka sa movsb,movsw ili movsd, prenos se odvija sa DS:ESI na ES:EDI. E tu nastaje problem: Sta se podrazumeva pod segmentnim vrednostima u ES i DS ako se radi o linearnoj memoriji ??? (ako je segment 0 - ne radi, ako je segment 'seg XXX' opet ne radi, pa cak i ako se uopste ne dira ES i DS - ne radi) ??? Pozdrav, Vlada.
asembler.151 bceklic, -> #149, miccko
> Evo probacu da ga zakacim za ovu poruku mada nisi zasluzio > da ti posaljem ali kad sam video da stavljas INT 3 i da > koristis TD 3.1 onda mora da si mnogo ocajan. Ti imas bas lepe stavove o zivotu a ? Sve ima svoju funkcija pa cak i onda kada to tebi nista ne znaci... To sto koristim TD (3.2 ili 4.0 svejedno) a ne neki drugi debager mislim da nema veze sa tim sto sam ocajan. Ocajan sam zbog drugih stvari. ;) > U svakom slucaju program nije nesto ekstra ali je jedan od > boljih (na primer ne mozes da razbijes moj program njime). > Za 32-bitni rezim sam morao da razvijem svoj debager. Njegov UI me nikad nije privlacio i zato sam se uvek odlucivao za Borlandove debagere koji imaju najbolji UI po cenu nesto tezeg rada. > Dejan Blagoje
asembler.152 maksa, -> #150, deimos
>> Sta se podrazumeva pod segmentnim vrednostima u ES i DS ako se >> radi o linearnoj memoriji ??? Podrazumeva se verovatno selector, odn. index na tabelu deskriptora. Nju (tabelu) formira os/extender/kompajler/linker ...
asembler.153 saricl,
Zbog čega mi se kod disasembliranja javlja kod koji nije moguće disasemblirati?
asembler.154 saricl, -> #147, deimos
!!! IN-a. Ako zelis da uzmes word sa porta, koristi IN AL,DX + IN AH,DX. Pa javlja mi Invalid combination of op code and operands kad pokuša da prevede IN AH,DX čini mi se da je nešto drugo u pitanju.
asembler.155 deimos, -> #154, saricl
>> javlja mi Invalid combination of op code and operands kad pokusa da prevede >> IN AH,DX Sorry, bukvalno si me shvatio, mislio sam sta bi u principu trebalo da se dobije. Evo ispravljam svoju gresku. Sledi deo koda koji ce sigurno da radi: ... IN AL,DX XCHG AL,AH IN AL,DX XCHG AL,AH ... Posle ovoga bi trebao u AX da imas WORD uzet sa porta ( ako je za ovaj predvidjeno da se uzimaju WORD velicine ). Inace kad uzimas vrednost sa porta mozes samo da je uzmes u AL. Porzdrav, Vlada.
asembler.156 saricl, -> #155, deimos
!!! IN AL,DX <-ovde mi učitava niži bajt !!! XCHG AL,AH <-ovde mi menja sadržaj AH i AL (u AH dolazi vrednost nižeg bajta) !!! IN AL,DX <-ovde mi opet učitava vrednost nižeg bajta u AL !!! XCHG AL,AH <-ovde mi opet menja sadržaj AH i AL Po logici trebalo bi da imam istu vrednost i u AL, i u AH i to vrednost donjeg bajta sa magistrale, zar ne? Ono što ja imam to je FFFF bez obzira na stanje magistrale. Inače učitavanje vršim sa adrese 278h i kad se prozove ta adresa podaci su valjani D0-D15. (osim adrese naravno potrebno je i da bude AEN=0 IOR=0)
asembler.157 deimos, -> #156, saricl
** !!! IN AL,DX <-ovde mi ucitava nizi bajt ** !!! XCHG AL,AH <-ovde mi menja sadrzaj AH i AL (u AH dolazi vrednost ** nizeg bajta) ** !!! IN AL,DX <-ovde mi opet ucitava vrednost nizeg bajta u AL ^^^^^ ** !!! XCHG AL,AH <-ovde mi opet menja sadrzaj AH i AL ** Po logici trebalo bi da imam istu vrednost i u AL, i u AH i to vrednost ** donjeg bajta sa magistrale, zar ne? Ne, ne , pogresno si protumacio... Kao prvo, ne znaci da ako uzimas vrednost sa porta (ili neceg drugog) u AL da je to obavezno nizi bajt. Ako, recimo, port treba da vrati double-word (4 bajta), ti ces morati cetiri puta da uzmes vrednost sa porta bas i samo preko AL. Evo sta konkretno radi ovo gore: IN AL,DX <- Uzima prvi bajt sa porta XCHG AL,AH <- Zamenjuje sadrzaj AL i AH i obrnuto, tako da sada u AL imas vrednost iz AH, a u AH imas vrednost iz AL (kao da si stavio AL na stek) IN AL,DX <- Uzima drugi bajt sa porta. Dakle, sada u AL imas visi bajt, a u AH nizi !! XCHG AL,AH <- Zamenjuje AL (koji trenutno sadrzi visi bajt) sa AH (koji sadrzi nizi bajt uzet sa porta). Posle ovoga bi trebalo da u AL imas vrednost bajta koju si uzeo prvom IN instrukcijom, a u AH bajt koji si uzeo drugom IN instrukcijom. Ako ti ovo nije jasno evo ti ekvivalenta koji ce da radi isto to, samo sto je malo duzi i koristi i BX registar: ... PUSH BX <- Sacuvamo BX IN AL,DX <- Uzmemo nizi bajt sa porta MOV BL,AL <- Stavimo ga u nizi bajt BX registra IN AL,DX <- Uzmemo visi bajt sa porta MOV BH,AL <- Stavimo ga u visi bajt BX registra, tako da sada ceo BX registar sadrzi i nizu i visu vrednost uzetu sa porta u pravilnom rasporedu. MOV AX,BX <- Kopiramo vrednost BX u AX, kako bi mogli da POP BX <- povratimo vrednost BX ako ga dalje trebamo ... Ostaje ti u AX WORD uzet sa porta, kao i u predhodnom slucaju. Ako ti ovo ne radi, onda definitivno nije do ovoga dela programa greska, sto znaci da gresis u nekoj od sledecih stvari: 1. Port nije predvidjen da vraca WORD vrednosti (pa ti oba puta vrati samo nize vrednosti, koje ne moraju da budu iste). 2. Port, tj. IRQ ili nesto drugo sto je u vezi sa portom nije ispravno p˛ibrdřljeno da bi port vracao (ispravne) vrednosti. Pozdrav, Vlada.
asembler.158 saricl, -> #157, deimos
!!! PUSH BX <- Sacuvamo BX >>>>>>!!! IN AL,DX <- Uzmemo nizi bajt sa porta !!! MOV BL,AL <- Stavimo ga u nizi bajt BX registra >>>>>>!!! IN AL,DX <- Uzmemo visi bajt sa porta !!! MOV BH,AL <- Stavimo ga u visi bajt BX registra, tako da sada !!! ceo BX registar sadrzi i nizu i visu vrednost !!! uzetu sa porta u pravilnom rasporedu. !!! MOV AX,BX <- Kopiramo vrednost BX u AX, kako bi mogli da !!! POP BX <- povratimo vrednost BX ako ga dalje trebamo Ove dve instrukcije su identične, kako procesor zna da je u pitanju drugi a ne opet prvi bajt. Ima neki interni brojač ili tako nešto ? Inače ponovo mi se učitava isti donji bajt sa magistrale, tako da se u AH i AL nalaze iste vrednosti. Meni treba učitavanje gornjeg bajta odvojeno ili zajedno sa donjim. Još uvek mi nije jasno zašto regularna dokumentovana instrukcija IN AX,DX učitava samo donji bajt odnosno ponaša se isto kao instrukcija IN AL,DX.
asembler.159 deimos, -> #158, saricl
>>>> MOV AL,DX >>>> MOV AL,DX Ovo nisu iste vrednosti ako port treba da vrati dva bajta, tj e˝ů  uredjaj koji salje vrednosti sa porta salje dva bajta za redom, jer koliko sam ja shvatio port 278h je u vezi sa stampacem. E sad vidi ovako: ako je interfejs kartica (IO sa paralelnim prikljuckom) 16-o bitna, onda moze da vrati odjednom celu sesnaestobitnu vrednost, ali posto ja jos nisam video 16-o bitni adapter sa paralelnim prikljuckom ( dakle mora da je 8-o bitni ) onda ne moze ni da vrati odjednom oba bajta, vec jedan po jedan, i to uopste nema veze sa magistralom (bila ona 8-bitna, 16-bitna ili 32-bitna)! Ova tehnika je uzimanja , tj slanja dva  űbajta za redom je standardna kod 8-bitnih periferija. Ajde da pojednostavimo stvari. Objasni mi konkret ¨˙űno sta bi trebalo da se dobije kad uzmes vrednost sa porta, koji us˝ůlovi treba da su ispunjeni i sta konkretno treba taj deo programa da radi, pa cu pokusati˘Ę ű  ű űda provalim u cemu je stvar. Vlada. ps. Ako hoces mo´kz˝ů űes i da mi posaljes taj deo sorsa.
asembler.160 dejanr, -> #153, saricl
>> Zbog čega mi se kod disasembliranja javlja kod koji nije moguće >> disasemblirati? Najpre će biti da pokušavaš da disasembliraš neku tabelu u kojoj su podaci, a ne instrukcije.
asembler.161 bkaradzic,
Imam jedan problem u pmode. Primer: NESTO dd 0 OldIRQ0 dd 0 IRQ0: inc NESTO jmp OldIRQ0 Kada IRQ0 zamenim ovom "rutinom";) program nece da mi radi sa QEMM i EMM386. U rm bi ovo radilo kad bi ispred NESTO i OldIRQ0 stavio cs:, ali u pm? Da li neko ima ideju kako bi ovo ispravio (vazno mi je da program radi i sa EMM386!) ?
asembler.162 bkaradzic,
Da li neko ima neki dobar mod player za SB (source, ali dovoljan mi je i .OBJ) koji radi u pmode, moze da pusta module sa 14 kanala (.MOD 14CH) i da nije MIDAS?
asembler.163 deimos, -> #162, bkaradzic
-->> Da li neko ima neki dobar mod player za SB (source, ali dovoljan mi je i -->> .OBJ) koji radi u pmode E da, ovime sam se bavio jedno vreme, i sve je lepo radilo u RM, ali se onda postavljalo pitanje 'kako adresirati DMA kanal u PM'???
asembler.164 saricl, -> #159, deimos
!!! celu sesnaestobitnu vrednost, ali posto ja jos nisam video 16-o bitni !!! adapter sa paralelnim prikljuckom ( dakle mora da je 8-o bitni ) onda ne !!! ja shvatio port 278h je u vezi sa stampacem. E sad vidi ovako: ako je !!! interfejs kartica (IO sa paralelnim prikljuckom) 16-o bitna, onda moze da !!! vrati odjednom celu sesnaestobitnu vrednost, ali posto ja jos nisam video !!! 16-o bitni adapter sa paralelnim prikljuckom ( dakle mora da je 8-o bitni Pa u pitanju je kartica koju sam sam napravio i ona postavlja šesnaest bita na magistralu (D0 do D15) sa postavljanjem adrese 278h,IOR,i AEN signalima. No sve u svemu rešio sam da napravim drugačiju karticu, odnosno da multiplexiram donjih osam bita.
asembler.165 mmitrovic, -> #158, saricl
::::: Ove dve instrukcije su identične, kako procesor zna da je u pitanju ::::: drugi a ne opet prvi bajt. Ima neki interni brojač ili tako nešto ? Ne zna procesor, već periferija od koje tražiš word po tom principu. ::::: Inače ponovo mi se učitava isti donji bajt sa magistrale, tako da se ::::: u AH i AL nalaze iste vrednosti. Meni treba učitavanje gornjeg bajta ::::: odvojeno ili zajedno sa donjim. Zato što tvoja kartica ne prati da li se učitao donji bajt. ::::: Još uvek mi nije jasno zašto regularna dokumentovana instrukcija ::::: IN AX,DX učitava samo donji bajt odnosno ponaša se isto kao instrukcija ::::: IN AL,DX. Iz sledećeg razloga (po x-ti put): Ako je DX=278h, instrukcija IN AX,DX će uraditi sledeće: I) kod kartica koje se ponašaju kao 8-bitne: 1) Zahtevaće vrednost sa porta 278h i učitaće a0-a7 u AL 2) Zahtevaće vrednost sa porta 279h i učitaće a0-a7 u AH II) kod 16-bitnih kartica: Zahtevaće vrednost sa porta 278h i učitaće a0-a15 u AX Razlika između ova dva načina je u jednoj liniji koju kartica mora da postavi da bi javila da je na magistralu stavila 16bita, a ne 8. Ta linija se nalazi u onom 16bitnom dodatku, ali ne znam kako se zove, niti da li je komplementirana, pogledaj neki DOC. Znači postoje tri principa po kojima se može učitati word sa periferije, (kao dva bajta sa istog porta, kao dva bajta sa susednih portova, i kao word sa porta) a koliko mi se čini, tvoja kartica ne podržava ni jedan od njih: 1) Pošto dvaputa učitavaš istu vrednost (bajt) sa porta 278h dobijaš AH=AL zato što tvoja kartica nije registrovala prvo učitavanje i nije se spremila da na sledeći zahtev odgovori višim bajtom. Ukoliko je tvoja kartica pravljena po ovom sistemu, onda ubaci par NOP-ova između dva IN-a, pošto je hardveru potrebno malo vremena da se prebaci u stabilno stanje, naročito ako je kartica sa nekim procesorom. 2) Tvoja kartica ne odgovara na zahtev sa porta 279h, a ne postoji drugi hardver koji bi se na to javio (isključio si ili nemaš LPT2), pa je u sledećem clock signalu magistrala prazna pa u ovaj bajt bude upisana 0. Kao rezultat dobiješ AX=AL (AH=0). 3) Ne postavljaš 16b liniju. Drugo, ako pišeš program u PMu, treba da znaš da IN AX, DX; gde je DX=278h vrši proveru pristupa ne samo portu 278h već i 279h. Jednostavno rečeno, ceo IO space se tretira kao klasična memorija od 64k. Kako se word prostire u memoriji, tako se prostire i u IO space-u. Nadam se da sam bio dovoljno jasan, ako nisam reci. Sorry, mislim da ćeš morati ponovo da projektuješ karticu. :( Naravno, proveri ovo kod još nekog pre nego spališ ovu staru, možda su mene pogrešno učili.
asembler.166 bkaradzic,
Imam jedan problem sa programom pisanom u pmode-u. Kada IRQ0 zamenim mojom rutinom koja izgleda ovako: NESTO dd 0 IRQ0: inc NESTO jmp OldIRQ0 program nece da mi radi sa EMM386 i QEMM (bez ovih programa normalno radi). Da li neko zna kako ovaj problem da resim, veoma mi je vazno (a i hitno!). Ko mi ovo resi ima pice od mene:)
asembler.167 pstojanovic, -> #115, kdrazan
> Išao sam čisti TASM fajl i TLINK fajl. Kao U ovome je verovatno i greska jer primer koji si dao je primer procedure a ne samostalnog programa za neki od visih programskih jezika (npr. c), sto i u samom primeru pise : ; Called as: TEST_PROC(i, j, k); ; i equ 8 ;leftmost parameter ; j equ 6 ; k equ 4 ;rightmost parameter Recimo ako dodas proceduru start iza PUBLIC TEST_PROC ... PUBLIC TEST_PROC PUBLIC START START PROC MOV AX,1 ; 1->AX MOV BX,2 ; 2->BX MOV CX,3 ; 3->CX PUSH AX ; AX na stek (AX <=> i) PUSH BX ; BX na stek (BX <=> j) PUSH CX ; CX na stek (CX <=> k) CALL TEST_PROC ; poziv TEST_PROC MOV AX,4C00h ; zavrsi program INT 21h START ENDP ; Kraj programske rutine START .. ; ...nastavak primera .. END START ; Program otpocinje rutinom START ... primer ce savrseno raditi.
asembler.168 speedy, -> #166, bkaradzic
SP> NESTO dd 0 SP> SP> IRQ0: inc NESTO SP> jmp OldIRQ0 SP> SP> program nece da mi radi sa EMM386 i QEMM (bez ovih programa SP> normalno radi). SP> Da li neko zna kako ovaj problem da resim, veoma mi je vazno (a SP> i hitno!). SP> Ko mi ovo resi ima pice od mene:) Mozda bi trebao da setujes ds selektor? (interapt verovatno prolazi kroz VCPI gde se promene segregs) Da li je OldIRQ0 rutina iz tvog programa? Ako nije, odakle uzimas adresu OldIRQ0? Hope this helps, Speedy
asembler.169 msavkovic,
Ě ° ă─ĚĚ ĚĎ─ĚÍ─ĚĎ─ĚÍ─ĚĎ─ĚĚ ─Ě ║ ║║ ║║ ║ă─Ż║ ║ ║║ ║║Í─ đ đË─Âă─ŻË─Żđ Ë─Żă─ŻđË─đ ▄▄ █▄ ▄ ─ŻŻ presents: Ż ▄▄ ▀███▄▄ ███▄▄ ██▄ ▄█ ▄▄ ▀████▄▄▄█████████████▄█████ ▄██▄ ▀▀█████▄▄██████████████████████████▄████▄ ▄██▄ ▄▄▄▄▄▄▄▄▄███████████████████████████████████████████ ▄▄ ▀█████████████████████████████████████████████████▄▄███ ▄▄█████▀▀▀▀▀█████████████████████▀▀▀▀ ▀██▄ ▄▄▄ ▀▀▀████ ▄▄▄ ██▀ ▄▄▄▄ ▀███████████████▀▀ ▄▄▄███▄ ▀█ ███████ ██████████▀ ▄▄▄▄██████ █████ ▀█████▀▀▀▀▀▀▀▀▀▀ ▀███████▄ ██████ ▄█████████ ▄ ▀█████ ██████ ██▀ ▄▄▄██▀▀▀▀▀██▄▄ ▀▀██████▄ ████▀ ▄██████████████▀ ▄▄███████ ██████ █ ▄███ ▄▄▄ ████▄ ▄ ▀▀█████████▀ █████████████▀ ▀▀▀▀▀▀██████ ██████ █ ████ ████ █████ █▄▄ ▀▀██████ ▀▀▀█████████▄████▀ ▄▄████████ █████ █ ████ ▀▀▀ ██████ ████▄ ████████▄▄▄▄▄ ▀▀▀▀███▀▀ ▀▀▀▀▀▀██████▄ ████ █ █████████▀▀▀▀▀ ████ █████▀▀▀█████████▄ ▄▄▄▄▄▄ ▄████████▄ ███ █ █████ ▄▄▄ ▀▀▀ ██ ▄█████ ▄ ▀██████ ▄██▀▀▀ ▄███▀▀██████▄ ██ █▄▄ ▀████▄▄▄▄▄▄▄▄▄▄██ █ ▄██████ ███▄ ▀▀▀ ▄█▄▄▄▄ ████████▀ ▀▀██▄ ▀▀█████████████ ▄██████▀ ▄██████▄▄ ▄████▀▀▀▀ ████▀███▀ ▄███▀ ▄████▄▄▄ ▀▀▀████ ███████████▄▄ ▀▀▀ ▄███▄▄ ▄██████████████████████▄▄▄▄▄▄▄▄▄▄▄▄███████████▀▀▀▀▀ ███▀ █████████████████████████████████████████████████▄▄ ▀ ███████████████████████████████████████████▀▀▀▀▀▀▀▀▀ ▀█▀▀ ▀████▀██████████████████████████▀▀▀▀███▄▄ ▀██▀ ▀████▀██████▀██████ ▀▀▀███▄ ▀ ▀██ ▀███ ▀▀██▄ ▀▀▀ ▀ ▀▀ ▀ Ovo je prvi YU PC demo!!! Obavezno skidajte!!! Trebalo je da se pojavi na Assembly-ju '95-te, ali zbog naseg pouzdanog e-mail-a nije :( Inace demo je najbolji i prvi u YU, so skidajte odmah ! Hyperopia Demo je okacen u konf PC.UTIL, poruka 8.1504
asembler.170 dr.urbano, -> #169, msavkovic
Skino' sam !ex i javlja mi otprilike ovako: initialzing... nema dovoljno visoke memorije :( ^^^^^^^^^^^^^^^ Zato me zanima dali mi mozes kazati koji su mu zahtevi (sto se memorije tice), jer sam pratio assembly i video dosta intro-a cija velicina nije prelazila vrednost od 60-tak kb, dok vas intro zauzima negde oko 815 kb. Dali je ovo posledica objekata u intro-u (i sl.) ili same duzine intro-a (mislim u sek.) ili lose kompresije ali ovo drugo mislim da je nemoguce ako je radjen u asm-u. P.S. Naglasavam da ne pisem u asm-u tako da ako sam gore nesto lupio ne uzimaj za zlo. :) Dr. Urbano & co. istrazivanje alternativnog softvera i gubljenje vremena
asembler.171 kriss, -> #169, msavkovic
˙˙ Trebalo je da se pojavi na Assembly-ju '95-te, ali zbog naseg ˙˙ pouzdanog e-mail-a nije :( Kad već spomenu Assembly, pretpostavljam da imaš više informacija o svemu, pa ako te ne mrzi ... Ako ne znaš odakle da počneš, :) evo predloga - šta je, gde se održava, kada se održava, nagrade, discipline ...
asembler.172 msavkovic, -> #170, dr.urbano
┌┌┌ Skino' sam !ex i javlja mi otprilike ovako: ┌┌┌ ┌┌┌ initialzing... ┌┌┌ nema dovoljno visoke memorije :( ┌┌┌ ^^^^^^^^^^^^^^^ Preskoci Autoexec.bat i Config.sys (sa F5 u dosu 6.xx) ┌┌┌ jer sam pratio assembly i video dosta intro-a cija velicina nije ┌┌┌ prelazila vrednost od 60-tak kb, dok vas intro zauzima negde oko ┌┌┌ 815 kb. Dali je ovo posledica objekata u intro-u (i sl.) ili same ┌┌┌ duzine intro-a (mislim u sek.) ili lose kompresije ali ovo drugo ┌┌┌ mislim da je nemoguce ako je radjen u asm-u. Introi od 64kb spadaju u introe. Takodje postoje i introi od 4Kb Ima ih i na sezamu (R:\DEMO\ass_pc4k.zip) Nas demo spada u kategoriju demoa (maksimum velicine je 4MB) i on je cak i male velicine za jedan demo. Muzika postoji na GUS-u, ali i kao poseban .MOD file.
asembler.173 msavkovic, -> #171, kriss
┌┌┌ ˙˙ Trebalo je da se pojavi na Assembly-ju '95-te, ali zbog naseg ┌┌┌ ˙˙ pouzdanog e-mail-a nije :( ┌┌┌ ┌┌┌ Kad vec spomenu Assembly, pretpostavljam da imas vise informacija ┌┌┌ o svemu, pa ako te ne mrzi ... Ako ne znas odakle da pocnes, :) ┌┌┌ evo predloga - sta je, gde se odrzava, kada se odrzava, nagrade, ┌┌┌ discipline ... Ovo je vec bilo u NOVOSTI-ma ali evo ga opet... BTW, Assembly je poceo jutros i traje do 13 avgusta. asm95inf.zip
asembler.174 dr.urbano, -> #172, msavkovic
Ne ide :( Probao sam kod drugara na jacoj masini 486DX 50 Mhz i nece. Prvi put je je prikazao presents i ucitavo ko blesav, zna se alt-ctrl-del (cekao sam ga negde oko 5 minuta !). Drugi put je uvelicao prompt i prikazo ga u gornjem levom uglu (verovatno inicijalizovao grafiku) i blokiro. Nista od poruke nedovoljno visoke memorije. Istina nisam probao ono sa preskakanjem config.sys i autoexec.bat (u to vreme jos nisam primio tvoj odgovor) ali cu verovatno probati danas, sutra. Pozdrav, Urbano. P.S. ... znam da sam dosadan :(
asembler.175 msavkovic, -> #174, dr.urbano
┌┌┌ nedovoljno visoke memorije. Istina nisam probao ono sa ┌┌┌ preskakanjem config.sys i autoexec.bat (u to vreme jos nisam ┌┌┌ primio tvoj odgovor) ali cu verovatno probati danas, sutra. Probaj, pa javi.
asembler.176 dr.urbano, -> #175, msavkovic
Upalilo je :)) Demo je strava =:), ziva steta sto ne ode na assembly. Avaj imao sam problema sa zvukom, naime imam PC speaker pa nisam ni ocekivao neki kvalitet ali bas nista? Tokom demoa nije se nijedan zvuk cuo sem stenjanja masine ;). Nezanam u cemu je problem, amoeba.mod je bio prisutan ? Prenesi cestitke timu, demo je zaista opak ;) Pozdrav, dr. Urbano. P.S. Jos kad bi bilo muzike ... ;)))
asembler.177 msavkovic, -> #176, dr.urbano
┌┌┌ Demo je strava =:), ziva steta sto ne ode na assembly. Avaj imao ┌┌┌ sam problema sa zvukom, naime imam PC speaker pa nisam ni ocekivao ┌┌┌ neki kvalitet ali bas nista? Tokom demoa nije se nijedan zvuk cuo ┌┌┌ sem stenjanja masine ;). Nezanam u cemu je problem, amoeba.mod je ┌┌┌ bio prisutan ? Hvala :) Rekoh da muzika za sad radi samo na GUS-u ;) ┌┌┌ Jos kad bi bilo muzike ... ;))) Bice kad nadjemo neki SB mod player za protected mode. So, ako neko ima...
asembler.178 msavkovic,
Ě ° ă─ĚĚ ĚĎ─ĚÍ─ĚĎ─ĚÍ─ĚĎ─ĚĚ ─Ě ║ ║║ ║║ ║ă─Ż║ ║ ║║ ║║Í─ đ đË─Âă─ŻË─Żđ Ë─Żă─ŻđË─đ ─ŻŻ Ż Vam predstavlja svoj World Headquaters (obavezno pogledajte kraj ove poruke) Welcome to the Ultimate Experience... ˙ ─ ─── ────── ───────────── ───── ─── ─ ˙ █████████████████████ ████▀▀▀▀▀▀▀▀█████▀▀▀▀▄▄▄▄ ▄▄▄▄▄▄▄▄ ████ ▄▄ █████ ▄▀███ ████▀▀▀▀ ████ ▀▀ █████ █ ▀▀▀ ████▄▄ ████ ▄▄ █████ █ ███ ████▀▀ ████ ██ █▀▀▀█ ▀▄███ ▄▄▄ ████▄▄▄▄ ████▄▄▄██▄▄▄█▄▄▄█▄▄▄▄▀▀▀▀ ▀▀▀ ▀▀▀▀▀▀▀▀ █████████████████████ ˙ ─ ─── ────── ───────────── ───── ─── ─ ˙ +33-1-45887548 +33-1-45888809 4 public lines ring v32b 1 VIP line VFC ˙ ─ ─── ────── ───────────── ───── ─── ─ ˙ SOAP WHQ 555:330/0 Computer Music NeT FHQ 10:330/0 Demo Group InterechangE FHQ 68:330/0 FidoneT 2:320/305 Gathering the Scene in a NetworK FHQ 864:33/1 SBCNeT FHQ 14:220/0 SparkNeT Paris HUB 74:320/300 ˙ ─ ─── ────── ───────────── ───── ─── ─ ˙ ■PC■ Support Site for ■ATARI■ Cubic playeR˙DMP˙Inertia playeR˙SWAG˙UltratrackeR ˙ ─ ─── ────── ───────────── ───── ─── ─ ˙ World HQ of ArkhaM˙AsyluM˙DistorsioN˙FantasY˙HemoroidS˙HybriS˙HyperopiA˙InfinY˙JFF˙KlooN LivE!˙LithiuM˙Lego systeM˙MegabusterS˙NoooN˙SLC˙ZooM ˙ ─ ─── ────── ───────────── ───── ─── ─ ˙ HQ or Distro of Access DenieD˙AdmirE˙AmouR˙AnarchY˙BlanK˙CandelA˙CapacalA˙CodeblasterS CreatioN˙CryonicS˙Cybernetic DreamS˙DeuS˙DiffusioN˙DusT˙EclipsE˙EpicaL˙ExtremE Flatline ProductionS˙FlexioN˙Future CreW˙GolluM˙Ground ZerO˙HalcyoN Impact StudiO˙ImphobiA˙JamM˙J!P˙Legend DesigN˙LitespeeD˙Logic DesigN˙MasquE NostalgiA˙N-FactoR˙NeutroN˙OmicroN˙OrangE˙PrimE˙ProphecY˙ProximA˙PsychosquadS RealM˙S!P˙ShocK!˙Soft-onE˙TET˙The CoexistencE˙VangelisTeam/IguanA˙VoiD˙WTB XographY˙X-esS˙Zuul DesigN KosmiC˙Insane frequencieS˙MoM˙Radical RythmS˙TraxX˙UniT ˙ ─ ─── ────── ───────────── ───── ─── ─ ˙ DemoS ■ CodinG ■ GraviS ■ GraphiX ■ MusiC ■ GameS ˙ ─ ─── ────── ─────────────────────────────────────── ───── ─── ─ ˙ GRAVIS OFFICIAL SUPPORT SITE ˙ ─ ─── ────── ─────────────────────────────────────── ───── ─── ─ ˙ ┌──────────────────────────────────═■ A.C.E ■═────────────────────────────────┐ │ Authorized Product Support Node for │ │ │ │ A d v a n c e d │ │ ▄▄▄▄ ▄▄▄▄▄ ▄▄▄▄ ▄▄ ▄▄ ▄ ▄▄▄▄▄ │ │ Ů ▄▄ Ů Ţ Ů█ █Ţ Ů█ █Ţ █ Ů▄▄▄▄▄ │ │ Ů Ţ Ů▀▀█▀ Ů█ █Ţ Ů█ █Ţ █ Ţ │ │ ▀▀▀▀ ▀ ▀ ▀ ▀ ▀▀▀▀ ▀ ▀▀▀▀▀ │ │ Advanced Gravis Computer Technology Ltd. │ ├─────────────────────────────────────────────────────────────────────────────┤ │ A new VIP ringdown: +33-1-45887799, 2 nodes V34! │ ├─────────────────────────────────────────────────────────────────────────────┤ │ │ │ The ACE CD DEMO COLLECTION vol 2 is OUT. All the PC releases from October │ │ 1994 to June 1995, plus 2000+ Amiga/PC modules selected and classified by │ │ author. 550Mo of demos, intros, sources, utils, etc... │ │ │ │ This CD is *NOT* BBS ready, all demos are ready to use (if they can be run │ │ from a read-only media...). │ │ │ │ it costs only 100F, 80F if you are in a demo group (I will check! :) ). If │ │ you want it, write me a comment! (christophe Yvon aka Gandalf/Infiny-AEgis │ │ │ │ Still available, CD#1, 350 Mo of datas, all the PC releases from the birth │ │ of the PC-scene to October 1994. (ASM'94 releases are on the CD#2) │ │ ─────────────────────── │ │ A.C.E is WHQ of a new group from Yougoslavia called Hyperopia. │ │ To discover this group, get their excellent first production called !EX │ │ EX.ZIP free download │ └─────────────────────────────────────────────────────────────────────────────┘
asembler.179 saricl, -> #165, mmitrovic
!!! II) kod 16-bitnih kartica: !!! Zahtevaće vrednost sa porta 278h i učitaće a0-a15 u AX !!! Razlika između ova dva načina je u jednoj liniji koju kartica mora da !!! postavi da bi javila da je na magistralu stavila 16bita, a ne 8. Ta !!! linija se nalazi u onom 16bitnom dodatku, ali ne znam kako se zove, niti !!! da li je komplementirana, pogledaj neki DOC. !!! Sorry, mislim da ćeš morati ponovo da projektuješ karticu. :( Isprojektovao sam je u međuvremenu. Inače moja je kartica 16Bitna, ali neznam koju liniju treba da setuje na šesnaestobitnom delu magistrasle, ANW, zahvaljujem na trudu i strpljenju.
asembler.180 wizard, -> #177, msavkovic
> Bice kad nadjemo neki SB mod player za protected mode. So, ako neko > ima... Jel odgovara DMP za OS/2? ;)
asembler.181 bkaradzic,
Sto ovo programce nece da radi sa QEMM i EMM386??? Bez njih normalno radi! xor bx,bx l: mov ax,[bx] dec bx jnz l
asembler.182 andrejt, -> #181, bkaradzic
Subj: Zasto nece? Q> Sto ovo programce nece da radi sa QEMM i EMM386??? Q> Bez njih normalno radi! Meni ne radi i ovako... u stvari zaglavi kad cita word sa offseta ffff. Ne znam dal' ce ti pomoci... ali sto ne probas mov al, [bx].
asembler.183 bkaradzic, -> #181, bkaradzic
;;; Sto ovo programce nece da radi sa QEMM i EMM386??? ;;; Bez njih normalno radi! ;;; ;;; xor bx,bx ;;; l: mov ax,[bx] ;;; dec bx ;;; jnz l Zaboravih, ne moze da se cita word sa adrese FFFF. ;)
asembler.184 bkaradzic, -> #182, andrejt
;;; Q> Sto ovo programce nece da radi sa QEMM i EMM386??? ;;; Q> Bez njih normalno radi! ;;; ;;; Meni ne radi i ovako... u stvari zaglavi kad cita word sa offseta ;;; ffff. Ne znam dal' ce ti pomoci... ali sto ne probas mov al, ;;; [bx]. U medjuvremenu se setih. :) Steta sto ne moze mov ax,[bx] bilo bi korisno za optimizaciju, ovako moram da pisem mov al,[bx] mov ah,[bx+1] sto je cisto gubljenje vremena:_(
asembler.185 atech, -> #182, andrejt
> Meni ne radi i ovako... u stvari zaglavi kad cita word sa > offseta ffff. Ne znam dal' ce ti pomoci... ali sto ne probas > mov al, [bx]. Ne moze da se ucita word sa vrha segmenta (sa offseta FFFFH) jer se tada probija segmentna granica! Visi bajt bi se u tom slucaju trebao ucitati sa adrese ds+1:0000H sto je naravno nezgodno...;) Brojac u pomenutom slucaju treba setovati na 0FFFEH....
asembler.186 pstojanovic, -> #185, atech
> Ne moze da se ucita word sa vrha segmenta (sa offseta FFFFH) > jer se tada probija segmentna granica! Visi bajt bi se u tom > slucaju trebao ucitati sa adrese ds+1:0000H sto je naravno > nezgodno...;) Nisam o ovome razmišljao do sada. Nezgodno jeste, ali je način kako je "rešen" ovakav slučaj,(blokada računara u slučaju direktnog adresiranja segmenta npr. instrukcija mov ax,cs:Š0FFFFhĆ) tj. njegova manifestacija, prilično destruktivan. Greška se može ispoljiti, ne kako sam naveo u gornjem primeru, sa direktnom ofset adresom, već indirektno, putem prekoračenja nekog od indeksnih registara u sličnoj instrukciji. Zar nije bilo bolje da postoji slična detekcija (preko interapta) ovakve greške kao u slučaju deljenja sa nulom. Ipak mislim da je postojao previd; jednostavno se nije povelo računa o ovakvom slučaju. Pozdrav.
asembler.187 pyramid,
Da li neko ima ili zna gde se moze naci Intel 80286 programers manual (nesto kao i386 u r:\infoprog direktorijumu, ali za 286)?
asembler.188 speedy, -> #186, pstojanovic
SP> Nezgodno jeste, ali je nacin kako je "resen" ovakav SP> slucaj,(blokada racunara u slucaju direktnog adresiranja segmenta SP> npr. instrukcija mov ax,cs:S0FFFFhC) tj. njegova manifestacija, SP> prilicno destruktivan. Greska se moze ispoljiti, ne kako sam SP> naveo u gornjem primeru, sa direktnom ofset adresom, vec SP> indirektno, putem prekoracenja nekog od indeksnih registara u SP> slicnoj instrukciji. SP> Zar nije bilo bolje da postoji slicna detekcija (preko SP> interapta) ovakve greske kao u slucaju deljenja sa nulom. SP> Ipak mislim da je postojao previd; SP> jednostavno se nije povelo racuna o ovakvom slucaju. U v86 modu 386 daje general protection fault za bilo kakvo prekoracenje granice segmenta a 286 i raniji procesori prave wraparound tako da procitaju byte sa FFFF i byte sa 0 adrese... Speedy
asembler.189 speedy, -> #185, atech
SP> Ne moze da se ucita word sa vrha segmenta (sa offseta FFFFH) SP> jer se tada probija segmentna granica! Visi bajt bi se u tom SP> slucaju trebao ucitati sa adrese ds+1:0000H sto je naravno SP> nezgodno...;) Brojac u pomenutom slucaju treba setovati na SP> 0FFFEH.... ?? Valjda bi visi bajt trebalo da se ucita sa adrese ds:10000h... (<> ds+1:0 (!)) Speedy
asembler.190 atech, -> #189, speedy
> ?? Valjda bi visi bajt trebalo da se ucita sa adrese > ds:10000h... (<> ds+1:0 (!)) Moja omaska, nisam bio dovoljno jasan... Ono 1 je trebalo da bude 1 ceo segment od 64k odnosno 10000H bajtova. Daklem 10000H je u paragrafima 1000H sto znaci da bi hipoteticka adresa bila ds+1000H:0h.. Valjda... :)
asembler.191 mmitrovic, -> #186, pstojanovic
:::::> slucaju trebao ucitati sa adrese ds+1:0000H sto je naravno :::::> nezgodno...;) Kao prvo, ni na 286 se ne učitava sa ds+1:0000h, nego sa ds:0000h. To se zove segment wrap. Adresa ds+1:0000 je ekvivalentna sa ds:16h. ::::: Nezgodno jeste, ali je način kako je "rešen" ovakav slučaj,(blokada ::::: računara u slučaju direktnog adresiranja segmenta npr. instrukcija ::::: mov ax,cs:Š0FFFFhĆ) tj. njegova manifestacija, prilično destruktivan. Nije uopšte. Ta instrukcija izaziva General Protection Fault sa kodom greške 00h. ::::: Greška se može ispoljiti, ne kako sam naveo u gornjem primeru, sa ::::: direktnom ofset adresom, već indirektno, putem prekoračenja nekog od ::::: indeksnih registara u sličnoj instrukciji. Greška se ne ispoljava kada se koriste 16b indeksni registri, to nema veze, važno je da finalna adresa podatka ne bude 0FFFFh ako se učitava word. ::::: Zar nije bilo bolje da postoji slična detekcija (preko interapta) ovakve ::::: greške kao u slučaju deljenja sa nulom. Ipak mislim da je postojao ::::: previd; jednostavno se nije povelo računa o ovakvom slučaju. Kao što već rekoh postoji, i npr. Windows reaguje tako što terminiše aplikaciju. EMM386, QEMM i ostali su malo zaglupi po tom pitanju, mada bi i oni trebali da reaguju (ne znam pošto ne držim ništa od toga). Pošto je kod greške 00h mora se analizirati instrukcija kako bi se otkrio uzrok greške, zato je malo zajebano pisati GPF handler. U V86 modu se ovaj FAULT javlja veoma često i mora se emulirati preko GPF handlera, što znači da EMM386 i QEMM podržavaju ovu detekciju (inače real mode aplikacije ne bi radile). Što se tiče PModa, verovatno Xtender koji koristiš nema dobro napisan GPF handler, ili namerno ne podržava segment wrap.
asembler.192 atech, -> #191, mmitrovic
> Kao prvo, ni na 286 se ne ucitava sa ds+1:0000h, nego sa > ds:0000h. To se zove segment wrap. Adresa ds+1:0000 je > ekvivalentna sa ds:16h. Samo mala ispravka: Adresa ds+1:0H je ekvivalentna sa ds:10H a ne sa ds:16H (16H = 22 decimalno)...:) Salu na stranu, veoma cesto i sam pogresim na ovakvim stvarima a onda izgubim dosta vremena trazeci bug na drugim mestima iako je on na dohvat ruke...:(
asembler.193 kriss, -> #191, mmitrovic
˙˙ To se zove segment wrap. Adresa ds+1:0000 je ekvivalentna sa ˙˙ ds:16h. ****** ds:10h tj. ds:16d, da ne zbuniš početnike. :)
asembler.194 mmitrovic, -> #192, atech
::::: Samo mala ispravka: Adresa ds+1:0H je ekvivalentna sa ds:10H ::::: a ne sa ds:16H (16H = 22 decimalno)...:) Pazi, majku mu bošju, imperijalistićku... :) Apsolutni zez sa moje strane. Posipam se pepelom. ;) 10x za ispravku, i tebi i kriss-u, da ne dupliram poruku.
asembler.195 biber, -> #188, speedy
>> U v86 modu 386 daje general protection fault za bilo kakvo >> prekoracenje granice segmenta a 286 i raniji procesori prave >> wraparound tako da procitaju byte sa FFFF i byte sa 0 adrese... Zaglavi se i na 286 ( AMD ) ( sa i bez CONFIG I AUTOEXEC-a )
asembler.196 .sima,
Hi Kako se pokreće miš u SVGA modovima? Probao sam sa svga256bgi i neće. U uputstvu piše da nijedan drajver za mišonju ne podržava SVGA. Da li je ovo istina. Što je najčudnije, probao sam sa običnim VESA modovima (znači bez BGI-ja) i miš se instalira, reaguje na pritiske, ali kursor se ne vidi :(
asembler.197 deimos, -> #196, .sima
RE: SVGA & Mis Kod SVGA modova ces imati malo vise posla nego u 'obicnim' modovima. Naime moraj sa sam definises izgled kursora i da ga setas ili kao bitmap vezan za koordinate misa ili da koristis funkcije drajvera za istu svrhu, ali ces ipak morati sam da ga definises. Drugi problem je u tom sto ces morati obavezno za savaki mod da mu definises prostor kretanja (int 33h). Treci problem je sto ce misonja da ti preskace (granularity od 16, odnosno 32 pix.). Tu ti je najjednostavnije da mu definises veci prostor kretanjÍ┤┬Ă─ăšüÁčÚůxB@gžĘ┼  ┘O║ pa da delis koordinate. .dEiMoS.
asembler.198 .sima, -> #197, deimos
> Kod SVGA modova ces imati malo vise posla nego u 'obicnim' modovima. > Naime moraj sa sam definises izgled kursora i da ga setas ili kao > bitmap vezan Hvala. Ali da li neko zna tačno šta treba da se uradi. Da li je dovoljno samo definisati izgled kursora ili još ...
asembler.199 deimos,
Imam jedan problem. Naime radim rutinu za DMA prenos. Problem se sastoji u tome sto alociran bafer nije uvek na samom pocetku segmenta, pa se desava da bafer, recimo, velicine 48K do pola bude ispravno prenesen a ostatak zbog wrap-inga bude djubre. Kako resiti ovaj problem? Konkretno, radi se o programiranju Sound Blaster kartice. Deo je pisan u BC-u (skoljka), a rutine uglavnom u asm-u. Vlada.
asembler.200 kriss,
Da li neko ima rutine za fade in i fade out, naravno u sorsu, i naravno, PD ?
asembler.201 atech, -> #199, deimos
> Imam jedan problem. Naime radim rutinu za DMA prenos. Problem > se sastoji u tome sto alociran bafer nije uvek na samom pocetku > segmenta, pa se desava da bafer, recimo, velicine 48K do pola > bude ispravno prenesen a ostatak zbog wrap-inga bude djubre. > Kako resiti ovaj problem? > Konkretno, radi se o programiranju Sound Blaster kartice. Deo > je pisan u BC-u (skoljka), a rutine uglavnom u asm-u. Nije mi najjasnije kako alocirani bafer nije na pocetku segmenta? Ako koristis 21,48 dobijas adresu segmenta koji je alociran MCB+1 (podrazumevani offset je 0) zar ne? Jedino ako bafer alociras pri kompajliranju tada je moguca pojava o kojoj govoris. Elem, potreban bafer alociraj sam koristeci 21,4A,48 i neces imati problema sa wrap-ingom. Ako je bafer definisan pri kompajliranju moras da alociras nesto veci bafer i izvrsis preracunavanje segmenta na kome pocinje bafer.
asembler.202 deimos, -> #201, atech
>> > Imam jedan problem. Naime radim rutinu za DMA prenos. Problem >> Nije mi najjasnije kako alocirani bafer nije na pocetku >>segmenta? Ako koristis 21,48 dobijas adresu segmenta koji je >>alociran MCB+1 (podrazumevani offset je 0) zar ne? Jedino ako bafer >>alociras pri kompajliranju tada je moguca pojava o kojoj govoris. Tacno tako. Bafer je kreiran pri linkovanju. Nije mi palo na pamet da 21,48 menja stvar... 10x 4 hINT. Vlada. ps. linkovanju=kompajliranju
asembler.203 atech, -> #202, deimos
> Tacno tako. Bafer je kreiran pri linkovanju. Nije mi palo na > pamet da 21,48 menja stvar... 10x 4 hINT. > ps. linkovanju=kompajliranju Podrazumeva se...:)