programiranje.101madamov,
-> #100, lanik
Ja sam sa Protom uradio svoj deo posla, vratio loptu Duletu da on to
finalizuje i uobliči u oblik pogodan za upload. Izgleda da se u međuvremenu
toliko napalio na Falcona da je zaboravio na sve ovo. A moj i Protin deo posla
je bio da se napiše nešto kao primer pozivanja rutine iz C-a, stvar je radila,
jedino što je Dule pogrešio pa nam je pogrešno opisao jedan od parametara.
Radilo se o o dužini sempla, Dule je stalno pričao da je taj parametar adresa
kraja sempla (što me ni malo nije začudilo poznavajući Duleta B)), a u stvari
je taj parametar sama dužina sempla, tako da se malo duže čekalo da rutina
odsvira svoje. To smo popravili, stoji taj source na mom ST-u kod Prote, koliko
se sećam tamo je i jedna verzija Duletove rutine u asembleru koju asemblirali
iz TC-a i povezali sa našim kodom u C-u. Kasnije nam je Dule rekao da je i tu
asemblersku rutinu malo doradio pa smo čekali da nam to opet pošalje. Sve u
svemu, ostalo je na Duletu da ti to uploaduje u mail a ti da baciš u LANG ili
već koji direktorijum.
programiranje.102lanik,
-> #101, madamov
Ok ka ću ga kontaktirati pa ću mu maznuti taj source. Ako on to slučajno
nema, da li kod tebe tj. Prote postoji neka kopija?
programiranje.103madamov,
-> #102, lanik
Postoji kod Prote sigurno, mislim i asemblerske rutine i našeg primera
pozivanja iz C-a. Pitaj Duleta da nije još nešto dodavao u međuvremenu da mi
još modifikujemo taj source.
P.S. žujem da mu uskoro stiže Falcon, neko je dobio vizu za Nemačku. B))
programiranje.104lanik,
Evo nečega što nije baš programiranje, ali pošto nemamo temu
"baze podataka", ovde mi se učinilo najprikladnijim (valjda mi moderator
neće premestiti poruku) ;)))
Reč je o programu 1ST base. Ne znam da li je neko probao da
štampa report-e iz njega, on ima svoj mali script jezik, pa pošto sam
ja sa jednim drugom petljao sa 1ST Base-om, evo liste komandi za Script,
možda nekom bude korisno:
opis polja
-------------------------
unbegrenzt
begrenzt
mit Wortumbruch
formati brojnih polja
-------------------------
1234
1234.56
1 234
1 234.56
123456789012
123456789012.34
123 456 789 012
123 456 789 012.34
formati datuma
-------------------------
yyyymmdd
dd.mm.yy
dd-mon-yyyy
mm/dd/yyyy
hhhh:mm
hhhh:mm:ss
hhhh
komande
-------------------------
PRINT>
PRINT
'
;
DO
LOOP
NEXTRECORD
OUTPUT TO
ALERT
LET
INPUT
END
SERIAL$
USER1$
USER2$
USER3$
USER4$
USER5$
SYSDATE$
SYSTIME$
SRCHBF$
UPPER$(
TRIM$(
LEFT$(
RIGHT$(
MID$(
CHR$(
SPACE$(
STRING$(
STR$(
VAL(
ASC(
LEN(
LOOP_COUNT
PAGE_COUNT
RECORD_COUNT
REPEAT_COUNT
operatori pri search/replace
-------------------------
()+-*/
:\:<>=ˇ<˛>
AND OR NOT
operatori pri calc
-------------------------
+-*/()
ascii znakovi do 32
-------------------------
NULSOHSTXETXEOTENQACKBELBSHTLFVTFFCRSOSI
DLEDC1DC2DC3DC4NAKSYNETBCANEMSUBESCFSGSRSUS
izlazi
-------------------------
PRT1:PRT2:PRT3:PRT4:FILE:MODEM:KEYBD:
interne varijable
-------------------------
#FILE
#DEVICE
#REPORT
#PRINTER
#EXPORT_DELIMITERS=
#ACC_MENUTITLE=
#ACC_RAMRES=
#KEYBUF_DELAY=
#IMPEXP_PATH=
#OUTPUT_PATH=
#PRINTERS_PATH=
#REPORTS_PATH=
#CLIPBRD_ICONNAME=
#CLIPBRD_PATH=
#W1=
#W2=
#W3=
#W4=
meseci
-------------------------
ErrJanFebMarAprMayJunJulAugSepOctNovDec
--> U slučaju zemljotresa, prvo zaustavite luster koji se klati.
--> Uvežbavajte tu logiku i gde god možete uklanjajte dokaze.
programiranje.105vitez.koja,
Da i ovde ostavim svoju skromnu molbu, ne ljutite se :)
Da li slucajno neko ima disasembler za 68020 kod koji ce da radi na PCu ?!
Unapred zahvalan
programiranje.106dexi,
Jedan moj drugar koji radi na Atariju i nije član SEZAM-a me je zamolio da
okačim njegova pitanja, što ja evo činim. Nadam se da ćete mu odgovoriti.
Evo i pitanja:
║ Pozdrav programerskom drustvu!
║
║ Imam za vas nekoliko pitanja koja se odnose na rad u GFA bejziku,
║ pa bih molio da mi pomognete.
║ 1. Kako "ocistiti" odnosno obnoviti-vratiti stari sadrzaj prozora zamrljanog
║ upravo zatvorenim ACCom?
║ 2. Napisao sam podsetnik (neku zakrzljalu varijantu sa alarmom). Velika mana
║ mu je sto mu rad onemogucava tj. privremeno zamrzava komunikacija nekog
║ programa sa diskom (dovoljan je i ESC za obnavljanje direktorijuma). Na
║ koji nacin moze da se podigne prioritet alarma iznad diskovog makar to
║ bilo na C-u pa cak i mesavini asemblera i C-a?
║ 3. Imam dva prozora na ekranu od kojih je npr. prvi aktivan. Kako nesto
║ odstampati u onom neaktivnom a da ne moram da ga "topujem"?
║
║ Hvala!
║ Zoran Milojkovic
Pozdrav, dexi :)
P
programiranje.107madamov,
-> #106, dexi
******
1. Kako "ocistiti" odnosno obnoviti-vratiti stari sadrzaj prozora zamrljanog
upravo zatvorenim ACCom?
******
Ako radiš sa GEM-om čim nešto zaprlja neki od tvojih prozora dobijaš od
AES-a poruku WM_REDRAW uz koji idu i koordinate pravougaonika koji je zaprljan,
pa u funkciji koja reaguje na takav događaj obnoviš taj pravougaonik ili
sadržaj celog prozora (uobičajena je procedura da postaviš clip rectangle na
taj pravougaonik a onda obnavljaš sadržaj celog prozora). Ako radiš bez
pozivanja GEM rutina trebalo bi da nađeš način da detektuješ kada je pozvan ACC
ili kada se korisnik vratio iz ACC-a pa da onda obnoviš sve svoje prozore, jer
ne znaš koji i gde je zaprljan. Predlažem ti da koristiš GEM rutine, sa njima
se uvek sve zna, tj. uvek ćeš dobijati poruku o svemu što se desi a da tvoj
program ne može na to direktno da utiče.
******
Na koji nacin moze da se podigne prioritet alarma iznad diskovog makar to bilo
na C-u pa cak i mesavini asemblera i C-a?
******
Moraćeš da napišeš svoj alarm tako da se kači na neki interapt, uobičajeno
je da se takve rutine kače na VBL (vertical blank) interapt. Ako ne znaš kako,
neka ti dexi skine pojedine fajlove iz ATARIST\LANG i ATARIST\INFO
direktorijuma na Sezamu. Posebno fajl u kome je jedan stari umetak iz Računara
pod nazivom "TOS za programere". Mislim da ima i jedan fajl koji govori baš o
kačenju na VBL, ne znam kako se tačno zove i u kom je od ova dva direktorijuma,
možda bi moderator moga da se seti.
******
Imam dva prozora na ekranu od kojih je npr. prvi aktivan. Kako nesto odstampati
u onom neaktivnom a da ne moram da ga "topujem"?
******
Ovo je opet vezano uz to da li koristiš GEM rutine za pravljenje prozora
ili koristiš prozore iz GFA Basica. U prvom slučaju je lako pisati u neaktivan
prozor, tj. svejedno je da li je on aktivan ili ne, treba samo da paziš da
pišeš samo u delovima koji nisu pokriveni drugim prozorima da ne bi kvario
sadržaj drugih prozora. Kod GFA prozora ne znam kako se to izvodi.
programiranje.108bojs,
-> #106, dexi
║ Pozdrav programerskom drustvu!
Hvala, takodje! :)))
║
║ Imam za vas nekoliko pitanja koja se odnose na rad u GFA bejziku,
║ pa bih molio da mi pomognete.
║ 1. Kako "ocistiti" odnosno obnoviti-vratiti stari sadrzaj prozora zamrljanog
║ upravo zatvorenim ACCom?
Lako. Tamo gde se vrši selekcija MESAG dogadjaja, treba ubaciti jedan
CASE 20 i iza njega poziv procedure koja je 'stvorila' prethodni sadržaj
prozora. Znači, ovako nekako:
DO
...
ON MENU MESSAGE GOSUB MES (valjda tako beše sintaksa)
...
LOOP
...
...
PROCEDURE MES
SELECT MENU(1)
...
CASE 20
redraw_prozor (ili, kako ti se već zove procedura)
...
RETURN
║ 2. Napisao sam podsetnik (neku zakrzljalu varijantu sa alarmom). Velika mana
║ mu je sto mu rad onemogucava tj. privremeno zamrzava komunikacija nekog
║ programa sa diskom (dovoljan je i ESC za obnavljanje direktorijuma). Na
║ koji nacin moze da se podigne prioritet alarma iznad diskovog makar to
║ bilo na C-u pa cak i mesavini asemblera i C-a?
Nije mi baš jasno pitanje. Ako pod alarmom podrazumevaš ono što se u GEM
terminologiji zove ALERT, i ako bi rešenje bilo da se omogući pojavljivanje
alerta i dok se disk vrti, onda ja mislim (duboko sam ubedjen) da rešenja
nema ni u GFA-u, ni u C-u, ni u bilo kom višem programskom jeziku, a i u
asembleru bi bilo vrlo teško, možda i nemoguće (Duleeee, kaži nešto :)))
Ako sam pogrešno razumeo problem, opiši ga malo detaljnije.
║ 3. Imam dva prozora na ekranu od kojih je npr. prvi aktivan. Kako nesto
║ odstampati u onom neaktivnom a da ne moram da ga "topujem"?
Evo, upravo sam 'prošetao' do GFA Basic-a da proverim. Da, na žalost,
naredba TEXT se vezuje za koordinate aktivnog prozora. Srećom, A_LINE
rutine su nižeg nivoa od GEM-a, pa se tako može podvaliti. Sintaksa ti je
ATEXT x,y,font_size,ispis$
font_size može da bude 0 ili 1 ili 2, za fontove 6x6, 8x8 i 8x16,
respektivno. Bilo koja druga vrednost daje bombe. Podmeti mu koordinate od
zadnjeg WIND_SET(handle,5,...) za neaktivan prozor, i rešio si problem, s
tim da ovde ne možeš da računaš na sistemske usluge tipa CLIP itd, pa ćeš
morati sam da se pobrineš za ograničavanje ispisa.
║
║ Hvala!
║ Zoran Milojkovic
Nema na čemu, i drugi put :))
programiranje.109bojs,
-> #107, madamov
> Ovo je opet vezano uz to da li koristiš GEM rutine za pravljenje prozora
>ili koristiš prozore iz GFA Basica. U prvom slučaju je lako pisati u neaktivan
>prozor, tj. svejedno je da li je on aktivan ili ne, treba samo da paziš da
>pišeš samo u delovima koji nisu pokriveni drugim prozorima da ne bi kvario
>sadržaj drugih prozora. Kod GFA prozora ne znam kako se to izvodi.
Nije prvi put da neko spominje 'prozore iz GFA Basica' i pravi razliku
izmedju njih i prozora pravljenih GEM rutinama. Molio bih sve koji znaju
bilo šta o toj razlici da mi je objasne, budući da sam nekoliko puta pisao
programčiće u GFA Basicu, otvarao prozore sa OPENW #1,x,y,w,h,m i sa njima
radio sve, ali, baš, sve (wind_set, wind_get, evnt_mesag, slajdere,
klipovanje...) što bi mi palo na pamet da radim, pri čemu nisam primetio
ni jednu jedinu specifičnost koja bi ukazivala na neku razliku.
programiranje.110dusan,
-> #108, bojs>>alerta i dok se disk vrti, onda ja mislim (duboko sam ubedjen) da resenja
>>nema ni u GFA-u, ni u C-u, ni u bilo kom visem programskom jeziku, a i u
>>asembleru bi bilo vrlo tesko, mozda i nemoguce (Duleeee, kazi nesto :)))
Tu sam, tu sam ;)))
Dakle, daleko ste odmakli sa alertima u pozadini a covek pitao najjednostavnije
pitanje koje postoji ;) Ako me vec vuces za jezik, sistemski ne postoji nacin
pozivanja alerta dok radi disk, ali nije i nemoguce; ili napraviti svoju rutinu
koja izbaci na ekran nesto nalik na alert ili trepovati sistem pa izvaditi tu
rutinu iz ROMa i prepraviti je. Ali kome to treba? ;)
programiranje.111lanik,
-> #109, bojs
To i mene jako zanima, jer ako izgledaju kao prozori i ponasaju se kao
prozori - onda i jesu prozori! ;))
Bez zezanja, ne znam, mozda i nisu, ali npr. ako je otvoreno svih 7 prozora
a ti probas da startujes neki program kompajliran pod GFA koji otvara prozor,
program NECE otvoriti prozor - znaci cim postoji ogranicenje od 7 prozora, to
su :( GEM prozori! :)) (kakav dokaz, a?)
naravno, da se neko ne zbuni - pricam o maltitaskingu, zato moze da bude 7
otvorenih prozora iako se startuje program :)
programiranje.112lanik,
-> #107, madamov
Direktorijum je ATARIST\INFO a bilo bi korisno da skine i XBRA.LZH u LANG
direktoriju (ako radi u C-u)
programiranje.113madamov,
-> #109, bojs
******
nekoliko puta pisao programčiće u GFA Basicu, otvarao prozore sa OPENW
#1,x,y,w,h,m i sa njima radio sve, ali, baš, sve (wind_set, wind_get,
evnt_mesag, slajdere, klipovanje...) što bi mi palo na pamet da radim, pri čemu
nisam primetio ni jednu jedinu specifičnost koja bi ukazivala na neku razliku.
******
Kad sam se ja bavio GFA Basicom on u sebi nije imao rutine za rad sa GEM-om
već su se morale napisati pojedine rutine koje sam hteo da koristim (po
principu poke u ADDRIN i onaj drugi niz, i peek iz ADDROUT i slično). Tada je
imao prozore, ali su se oni ponašali kao njegovi interni pa ih nisam preterano
koristio. Ubrzo sam prešao na Turbo C pa sam jednostavno zaboravio na GFA. Ne
znam da li su promenili, po tvojoj poruci vidim da su unapredili rad sa tim
prozorima, ali i dalje ljude savetujem da koriste čisti GEM iz čisto
principijelnih razloga. Tako bar znaš šta si uradio i kako si otvarao prozor, a
ovako ti on sam iz biblioteke pozove svoju funkciju za koju ne znaš kako to
radi. možeš samo da nagađaš kao što mi sada nagađamo.
programiranje.114madamov,
-> #111, lanik
******
(kakav dokaz, a?)
******
Da znaš da nije loš. B)) 'Ajde bojs probaj pa javi šta se dešava.
programiranje.115madamov,
-> #112, lanik
******
XBRA.LZH u LANG direktoriju (ako radi u C-u)
******
Neka ga skine u svakom slučaju, bez obzira u čemu piše, čisto da se
informiše o protokolu kačenja na VBL.
programiranje.116madamov,
Bio ja sinoć kod Prote i gledao malo onaj Ottov Resource Construction Set.
Ljudi, ono je izvanredno! Ostavio sam Proti u zadatak da ga još malo testira, a
onda da nepovratno baci u kantu i NRSC i RCS. Jedino što mi smeta je što je
potpuno u nemačkom načinu programiranja, dakle ništa što liči na normalan
sadržaj menija, što se kaže, nema GEM look and feel, pa smo jurili pola sata
kako da ubacimo nešto u nekakav clipboard. Uvek je radio move, a onda nam pade
na pamet da bacimo neki dijalog na desktop i to je upalilo, tj. tipično nemački
način razmišljanja: sve što će mi biti potrebno strpam na desk pa onda ubacujem
u svoj resource. Imam par pitanja: ima one opcije za dodeljivanje kombinacije
tastera svemu i svačemu, kako se to integriše sa programom, naime nisam
primetio da upisuje neke konstante u C header kojima bi se to detektovalo?
Primetio sam da setuje neke bitove predstavljene numerisanim dugmićima u
dijalogu za editovanje objekta kad mu se dodeli tastaturna kombinacija, da li
je to podržano novim verzijama TOS-a (a moralo bi da bude kad setuje bitove u
okviru jednog polja u OBJECT strukturi) ili to služi za one self-made nemačke
dijaloge i alerte, tipa flying i slično? I drugo pitanje, nisam stigao da
proverim, kakva je razlika u C source-u koji generiše kad mu se odabere C
source 1 ili C source 2 opcija?
programiranje.117tigor,
-> #116, madamov >> Imam par pitanja: (...)
Sto se tice definisanja tastera - pojma nemam! Mislim da uopste ne radi
i da je verovatno ostavljeno za kasniju doradu.
S druge strane, source 1 i 2 su identicni! Nisam vise ni siguran sta sve
nisam probao ali oni su jednostavno ISTI!
programiranje.118madamov,
-> #117, tigor
******
Nisam vise ni siguran sta sve nisam probao ali oni su jednostavno ISTI!
******
Meni se sve više čini da ćemo uskoro videti Ottov generator koda za GEM. Iz
mojih usta u ...
programiranje.119lanik,
Izgleda da ima jedan bagčić u onim FLY-DEAL bibliotekama; nemoguće je
selektovati prvu stavku u meniju (meni iz dijaloga), tj. može se ona izabrati,
ai kada predjem mišem (pointerom) preko te stavke, ne invertuje se. Probao sam
da napravim svoj menue i dešavalo se isto...
Ajde nek proba još neko priloženi demo program i nek mi javi da li se isto
dešava, da nije zbog TOS-a ili neka druga glupost... inače idem da čačkam po
source-vima biblioteke... :))
programiranje.121lanik,
Izneću vam neke moje utiske o FlyDeals koje je Guerino poslao;
program, odnosno biblioteka je fenomenalna; postoje leteći dijalozi, koji
se, preko gornjeg desnog ugla (iako nemora baš tog ;) pomeraju, ali im fali
ono pomeranje u "real-tajmu" kao kod Gemini-ja kad je uključen blitter.
Anyway, sve ostalo je moguće uraditi. Postoje okrugli "radio" dugmići, kao i
check-boxes (živela Mac-terminologija!), opcije se mogu izabrati kako mišem
tako i sa tastature, pomoću ALT-taster kombinacija. Normalno, korisnik (tj.
programer) odlučuje koji će ALT-taster biti dodeljen kom dugmetu, tako da se
mora paziti da se ne dodeli ista taster-kombinacija za dva različita
dugmeta.
Prava poslastica su takozvani "Pop-up radio buttons" iliti po naški
"pozicioni meniji", koji se pojavljuju kada se klikne na GEM-dugme. Korisnik
onda može izabrati mišem ili tastaturom jednu od ponudjenih opcija a tekst
te opcije će se, po zatvaranju menija, ispisati na tasteru iz koga je
"iskočio" menue-bar.
Sve bi ovo bilo jako lepo, divno i krasno, da ja nisam provalio jedan,
iako mali, ali ipak BUG. Tako sam rešio da malo probrljam po sourcevima i
ispravim ovaj BUG. BUG je u tome da se prva opcija u ovom pop-up meniju ne
da selektovati. Jednostavno, predjete mišem preko nje, a ona ostaje "bela"
tj. ne invertuje se kao sve ostale opcije. Kada se klikne na tu infamoznu
opciju, ona se ipak "izabere", ali sve izgleda malo ružno jer prethodno nije
bila invertovana i korisnik nemože biti siguran da je uradio pravu stvar.
Stoga sam ja ispravio ovaj BUG, a kad sam već bio tu, i dodao par
stvari.
Kretanje po meniju je do sada moglo da se radi kursorskim tasterima,
kao i biranje opcije, ali iz menija nije bilo moguće izaći putem tastature,
tj. korisnik je, iako koristi tastaturu da bira opcije, morao da klikne
mišem van menija da bi se ovaj zatvorio. Ono što sam ja dodao je sledeće:
* Izlazak iz menija (tj. pop-up radio-buttons-a) pritiskom na
tastere [UNDO] ili [ESC]
* Postavljanje prve opcije kao aktivne (znači biranje) pritiskom na
taster [CLR/HOME]
* Postavljanje zadnje opcije u meniju kao aktivne, pritiskom na
tastere [CONTROL]+[CLR/HOME]
* i već pomenuta ispravka BUG-a koji je onemogućavao biranje prve
opcije u meniju mišem
Imao sam manjih problema kod čitanja sa tastature. Naime da bi ova
poboljšanja radila, morao sam da promenim malo način čitanja tastature u
odnosu na staru verziju pop-up rutina; stara pop-up rutina čita keyboard sa
Crawcin(), a ja sam prebacio na evnt_keybd() (zbog [SHIFT]-tastera). Ovo je
radilo OK dok se ne kreće suviše gore-dole po meniju, posle puno pritiskanja
tastera počinjalo je da "usporava" i da pamti pritisnute tastere tako da je
bilo malo kašnjenja te sam se ipak vratio na Crawcin() (nije onaj švaba
džabe to stavio). Pošto sa Crawcin() ne mogu da vidim stanje SHIFT tastera,
prebacio sam SHIFT u CONTROL, te sad radi sa CONTROL. Probaću kasnije da
vratim na SHIFT, ipak je SHIFT logičniji (a i TAKO TREBA! :)), možda da
čitam stanje SHIFT tastera sa event_multi ili event_button.
Novu biblioteku sam isprobao i nisam imao nikakvih problema, te vas molim
da je i vi isprobate i javite mi eventualne probleme, iako je malo verovatno
da će ih biti.
Sada mi se nešto "osladilo" ovo "čeprkanje", pa ću i dalje da radim na
poboljšavanju ove biblioteke, i prvo što mi pada napamet su stvari kao što
su: -provera (kao kod "FormDoIt"-a) "exit" tastera koji imaju "CANCEL", "NO"
ili "EXIT" u text-u, te omogućavanje da se iz dijaloga izadje pritiskom na
UNDO umesto na "CANCEL" -pravljenje "window" dijaloga kao kod "Kobold"-a da
bi radili u maltitaskingu (ovo ako budem dovoljno lud ;))
Za sada, evo vam novi FLY_DEAL.LIB...
--> Keyboard? How Quaint!
flyd_lib.zipprogramiranje.122dusan,
Za one malo neupućene, da ne kažem tupave ;)))
Kao što ste primetili, Turbo Debuger i Easy Rider su jedini programi koji su
otporni na bilo kakvu instalaciju nonsistemiskih fontova, tačnije Macintosh
fontova koje svi držimo ;))
E, ali vrlo sam se začudio kad sam vido da su ovi programi otporni na Mac
fontove koje sa nalaze u ROM-u, te sam došao do idealnog zaključka da ovi
programi i ne gledaju ROM već koriste svoje tupave ugradjene atarijeve fontove.
Easy Rider: na adresi (od ofesta 0) 43704, sledećih 4096 bajta se nalazi
definicija fonta. Font je u Harlekih obliku (ne Degas!)
Turbo Debuger: na adresi 13094 sledećih 4096 su fontovi. Harlekih standard
takodje.
Napomena; promena fonta iz Degas u Harlekih standard može se uraditi
configuracionim programom za Harlekin. Pa, ko oće da se zeza sa ovim nek uradi
sledeće (može i iz bejzika)
Rezervisati memorije koliko treba za učitavanje dotičnih programa, zatim
učitati već pripremljen novi font u Harlekih standardu od ofseta koji sam
naveo, i zatim snimiti na disk nazad ceo program sa istovetnom dužinom.
Uživajte!
programiranje.123dusan,
probajte ovo ja sam se oduševio, monohrom only!
test.tosprogramiranje.124madamov,
Sinoć sam se igrom slučaja kod jednog našeg zajedničkog prijatelja sreo sa
Kizom, autorom čuvenog ST Guide-a i proveo ugodno veče pričajući. Kako smo
prebacivali neke stvari (naš zajednički prijatelj odlazi definitivno u Kanadu)
koje nam je domaćin poklonio, a ja bio autom, završimo nas trojica kod Kize na
Julinom Brdu. Majstor Kiza je počeo da radi na PrC-u i razvija jednu biblioteku
za PrC. Što vam ja sve to pričam? Radi se o biblioteci koja će na PrC
implementirati AES like interfejs, normalno iz naših programa, ne piše ceo DOS,
i radiće isto kao i AES na ST-u. Video sam pra primere kako će to da izgleda na
ekranu i mogu vam reći da izgleda kao GEM, a sve radi u karakter grafici. Što
se nas AtariSTa tiče, lepota je u ovome: pišeš GEM program na Atariju ne
koristeći VDI (dakle imamo sve na raspolaganju: menije, alerte dijaloge,
prozore, neku vrstu ikona itd.) i taj isti source prevedeš na PrC-u i napraviš
EXE linkujući ovu biblioteku sa svojim kodom. Taj EXE odmah radi i ima user
interface koji izgleda kao GEM. Dakle, nema razlike u programu, isto će raditi
i na ST-u i na PrC-u. Na žalost, poznavajući Kizu, ta stvar neće završiti kao
PD ili shareware, on sve što uradi utopi preko, dakle plaćaće se. Još jedna
lepota, paket će sadržati i RCS koji će čitati Atarijeve RSC fajlove i
pretvarati ih u format pogodan za ovu biblioteku, dakle potpuna prenosivost GEM
programa sa Atarija na PrC, a da ti na PrCu ne treba GEM da bi to radilo.
Takođe, poznavajući dosta dugo autora mogu sa velikom verovatnoćom da tvrdim da
će čim ovo završi da uradi i nešto što će omogućiti i lako prebacivanje
programa koji koriste VDI ili bar jedan njegov deo.
>>> Modes are most confusing when you're in wrong one.
programiranje.125dexi,
║
║ Ponovo šaljem neka pitanja mog druga koji nije član SEZAM-a:
║
║ dexi :)
║
Pozdrav programerskom društvu!
Prateći konferencije zahvaljujući Dexiju, video sam da ima
dosta poklonika GFA bejzika što mi je drago.
Da bih vam se na neki način zahvalio za korisne i
mnogobrojne savete od prošlog puta, šaljem vam svoju verziju
"lebdećih" menija, pošto nisam naišao ni na šta slično u ATARI ST
direktorijumu, a može, po meni, da bude korisno za one koji još
nisu prešli na C, a želeli bi da imaju ovakvu stvar u svom
programu.
Ideju sam preuzeo iz PKS Write-a gde se pritiskom na jednu
opciju menija pojavljuje njen podmeni. E, tu sad ima jedna
razlika između rada sa njim i mojim podmenijem. Meni je bilo
potrebno da miš ne može da napusti područje podmenija, dok je kod
PKS-a, čini mi se, napravljeno tako da nestaje podmeni kad miš
sklizne sa njega. Ta mogućnost, naravno, može da se ugradi kad
god nekom zatreba. Pre prikaza podmenija je moguće promeniti
koordinate njegovog položaja, za šta sam dao primer, ali i
učiniti ga pokretljivog posle prikaza (LETEMFLY fazon) za šta
nisam dao primer jer se time nisam uopšte bavio.
A sad ono što me muči: šta sve nisam probao da bi proradila
ATEXT naredba (GFA), pa ništa. Da vas podsetim, treba mi način za
štampanje stringa u neaktivnom prozoru bez aktivisanja istog. Što
se tiče ATEXT-a, možda je stvar u tome da treba da se
inicijalizuje upotreba LINE A rutina ali ne znam na koji način
jer "void linea-init()" ne pali (interpreter je ne tokenizuje).
Da li neko zna nesto o ovome?
Dosta mojih kolega poseduje PrC-ove iz jednog praktičnog
razloga: postoje programi za posao kojim se bave i to je ono što
mi smeta u vezi sa ATARIJEM - ne znam da li i za njega postoje
tako dobri programi, pa čak i kompatibilni na nivou podataka sa
onima na PrC-u. Zato vas pitam da li postoje programi tipa:
AUTOCAD, P-CAD, OR-CAD, TANGO i PSPICE, a da su međusobno
kompatibilni na nivou podataka kao na PrC-u ili sa PrC-om? Mislim
na sledeći niz postupaka koji ljudi od struke sprovode na PrC-u
pri stvaranju nekog uređaja: prvo u OR-CAD-u nacrtaju šemu; nju
izvezu u PSPICE da bi proverili njenu ispravnost; kad sve srede
što se tiče ispravnog rada (simulacije), iz OR-CAD-a izvezu fajl
za P-CAD, koji na osnovu njega crta štampu za pločicu.
Mrsko mi je to što ću na poslu da imam PrC-a a kod kuće ATARIJA,
jer sam ubeđen da gro stvari može brže da se uradi na mom
računaru nego na nekom Pisiju, samo je problem da li za Atarija
postoji isti takav ili sličan program.
Pošto je moj izbor sledećeg računara (posle 1040stf tos 1.2)
(ako Bog da) već nekoliko meseci MEGA ste 4, više puta sam
bistrio njegov prikaz u SK-u od aprila meseca prošle godine. E,
tu sam naišao na neke nelogičnosti za koje bih voleo da mi neko
da objašnjenje. Elem, u testu Quick Index 2.1 se, pri taktovima
računara od 8 i 16 MHz (BEZ KEŠA) nalazi podatak da je brzina npr
CPU memory i CPU register operacija ista bez obzira na takt!. To
je, po meni, moguće samo ako su korišćene sporije memorije od
60ns (u slučaju CPU memory operacije), ali mi nikako nije jasno
kako može da bude ista brzina obavljanja operacija sa registrima
pri dve brzine procesora, kad, logično, pri višem taktu je i
pristup registrima i rad sa njima brži! Da nije tako, onda bi za
PrC-a rad sa DX40 bila prava šarena laža. Jel' neko ima razumno
objašnjenje za rezultate testa?
Još jedno pitanje: šta je to Cookie Jar?
Pregled'o ja onaj spisak PD softvera iz Nemačke i oduševio
se nekim stvarima, ali me najviše interesuje šta je EMACs v.18.55
(EMCS1855.ZOO). Podseća me na jedan program na Juniksu, a?
Da li je možda neko iskompajlovao INFO ZIP? Ja sam probao sa
TC 2.0 iz njegovog šela i na probi se i završilo:
- kao prvo, .C fajlovi treba da se prerade (imaju nepravilan
kod za CRLF pa TC brlja sa listingom) tako što se učitaju u
TEMPUS i odmah snime;
- kao drugo, morao sam da preusmerim ZIP-ov TC Config fajl na ram
disk. Onda se ispostavilo da u celom paketu INFO ZIP-a nedostaju
neki fajlovi neophodni za kompajlovanje.
Tako se moj pokušaj završio neuspehom. Da li je neko imao sreće
sa ovim?
Skoro se nisam ovako raskucao. ;)
Pozdrav od 3OPAHA M. :)
║
║ Hvala unapred, dexi :)
║
lebdeci.lzhprogramiranje.126bojs,
-> #125, dexi>> A sad ono što me muči: šta sve nisam probao da bi proradila
>>ATEXT naredba (GFA), pa ništa. Da vas podsetim, treba mi način za
>>štampanje stringa u neaktivnom prozoru bez aktivisanja istog. Što
>>se tiče ATEXT-a, možda je stvar u tome da treba da se
>>inicijalizuje upotreba LINE A rutina ali ne znam na koji način
>>jer "void linea-init()" ne pali (interpreter je ne tokenizuje).
>>Da li neko zna nesto o ovome?
Ne treba nikakav linea-init, dovoljno je
ATEXT x,y,font_size,neki_tamo$
x i y su koordinate u pikselima gde treba ispisati tekst, font_size
može biti 0, 1 ili 2, za sistemske fontove 6x6, 8x8 i 8x16, respektivno,
za bilo koju drugu vrednost sleduju bombe. Na primer,
ATEXT 100,150,1,"GFA Basic 3.50"
će ispisati tekst 'GFA Basic 3.50' na poziciji 100x150, veličinom slova
8x8. To što si sve probao, pa ništa nije ispalo, posledica je činjenice
da si više puta upisao pogrešno neki parametar, pa je nešto ostalo
poremećeno (i meni se to dešavalo dok nisam poterfio pravilnu sintaksu).
Dakle, ako pravilno upišeš iz prve, trebalo bi da radi. Kod mene radi, ako
ti nešto znači, konfigurcija je: TOS 1.4, GFA Basic 3.50, nemam Blitter.
>>onima na PrC-u. Zato vas pitam da li postoje programi tipa:
>>AUTOCAD, P-CAD, OR-CAD, TANGO i PSPICE, a da su međusobno
>>kompatibilni na nivou podataka kao na PrC-u ili sa PrC-om? Mislim
Za prvi i zadnji znam, a one u sredini nisam koristio, tako da ne znam
:)). AUTOCAD, osim svog .DWG formata, može da čita/piše i .DXF, a isto
to može i DYNNACAD na ST-u (mislim da može i TECHNOCAD, ali ga nemam, pa
ne mogu da garantujem). Prema tome, nema problema za prenos na toj relaciji.
PSPICE je, u stvari, PC verzija programa SPICE, pisanog u (mislim) Fortranu
za neki veliki računar, a ubrzo je preveden i na većinu personalnih računara,
uključujući i Atari. Nisam probao, ali nema ni malo logike da postoje
razlike u formatu ulaznih podataka.
Ne znam za ostale, ali programi za projektovanje štampanih pločica koje
sam probao (PLATINE_ST i PCB_LAYOUT) nisu kompatibilni sa ostalim svetom
na nivou ualzno_izlaznih datoteka, mada sam čuo da neki treći program ume
da učita .PCB fajl. Potraži, možda neki bude kompatibilan sa OR_CAD-om ili
TANGO-m.
>>da objašnjenje. Elem, u testu Quick Index 2.1 se, pri taktovima
>>računara od 8 i 16 MHz (BEZ KEŠA) nalazi podatak da je brzina npr
>>CPU memory i CPU register operacija ista bez obzira na takt!. To
>>je, po meni, moguće samo ako su korišćene sporije memorije od
>>60ns (u slučaju CPU memory operacije), ali mi nikako nije jasno
>>kako može da bude ista brzina obavljanja operacija sa registrima
Možeš biti 100% siguran da su korišćene memorije sporije od 60 nS, a
rezon po kome si došao do te brojke je pogrešan, jer si ispustio iz vida
neke detalje u vezi ST-ove arhitekture (uostalom, logično je da za 8 MHz
moraju da se upotrebe memorije od 120 nS, pa ipak mnoge mašine rade na 150,
uključujući i moju), ali je to duga priča, skratićemo je maksimalno:
Elem, na ST-u (bez E) CPU radi na 8 MHz, MMU na duplo više od CPU, dakle,
16, SHIFTER na duplo više od MMU, znači, 32. Kada bi isti princip važio
za STE (16 MHz), morali bi da imamo MMU na 32, i SHIFTER na 64, a to,
naravno ne važi, već MMU i SHIFTER rade na istim frekvencijama. Da bi
sinhronizacija poslova opstala, CPU radi na 16 MHz samo interno, čim izadje
na magistralu, obara takt na 8. To objašnjava istovetnost rezultata CPU-
-memorija, ali, ovo drugo, sa registrima, ni meni nije jasno, toliko mi
nije jasno, da, jednostavno, ne verujem, voleo bih da lično uradim testove,
pa da se uverim. No, svejedno, ne možeš da očekuješ neku veliku razliku, s
obzirom na činjenicu da se *program* kojim sve to testiraš nalazi u
*memoriji* (u prevodu: ne očekuj da je STE bitno brži od ST). Iz istog
razloga, ni TT nije onoliko brži od ST(E), koliko bi se očekivalo na osnovu
bržeg CPU i većeg takta.
>> Pregled'o ja onaj spisak PD softvera iz Nemačke i oduševio
>>se nekim stvarima, ali me najviše interesuje šta je EMACs v.18.55
>>(EMCS1855.ZOO). Podseća me na jedan program na Juniksu, a?
Da, to je tačno to, samo, ne bih ga poredio sa TEMPUS-om :)))
>> Da li je možda neko iskompajlovao INFO ZIP? Ja sam probao sa
Ne znam o čemu se radi.
programiranje.127lanik,
-> #125, dexi
>> Još jedno pitanje: šta je to Cookie Jar?
Neka ti Dexi uradi jedan "CONF FIND cookie" pa će već naći ovde
negde u konferenciji poruku u kojoj je objašnjen cookie-jar.
>> Da li je možda neko iskompajlovao INFO ZIP? Ja sam probao saTC 2.0
>> iz njegovog šela
Ja sam se zanosio tom idejom dok nije stigao STZiP 2.0... Jeste da
ne radi sa multi-volume arhivama, ali ima sve ostalo (brz, pouzdan, deflated
files...)
pozdrav,
Dalibor
--> Keyboard? How Quaint!
programiranje.128stefan,
-> #126, bojs> :)). AUTOCAD, osim svog .DWG formata, može da čita/piše i .DXF, a isto
> to može i DYNNACAD na ST-u (mislim da može i TECHNOCAD, ali ga nemam, pa
> ne mogu da garantujem). Prema tome, nema problema za prenos na toj relaciji.
Svejedno, DYNNACAD je mnooooogo bolji od TECHNOCAD-a (bar se tako meni čini
:) tako da mu ovaj drugi ni ne treba. A koliko čujem DYNNA sada postoji i za PC
i kažu da ga mnogo hvale.
programiranje.129tigor,
Ima li neko pojma zašto bi Load-Resource funkcija u CCD paskalu vraćala
FALSE? RSC fajl se nalazi odmah pored izvršnog a ona vrati FALSE.
žak sam navodio i kompletnu stazu, pokušavap dvostruko da je pozovem ako
javi grešku ali ništa...
Zna li neko u čemu je problem?
programiranje.130madamov,
-> #129, tigor
Da ne radiš nešto pogrešno sa stringovima u pascalu? Inače nikad nisam
radio u CCD Pascalu, ali mi ovo pade na pamet.
>>> Modes are most confusing when you're in wrong one.
programiranje.131tigor,
-> #130, madamov
>> Da ne radiš nešto pogrešno sa stringovima u pascalu? Inače nikad nisam
>> radio u CCD Pascalu, ali mi ovo pade na pamet.
Ne znam na šta misliš sa stringovima ali ako je u pitanju ime fajla, on-
da to nije problem. CCD za rad sa GEM-om uvodi neki svoj interni tip Str255
(potpuno ekvivalentan običnom stringu) i ime fajla sa stazom je tog tipa.
A valjda nisam tolika dileja da ne znam napisati stazu...(?)
Nego, nešto je drugo. To prvo nisam primetio jer radim sa ram diskom ali
kada sam pokušao sa A:\ čuje se lepo da program zavrti disk i verovatno
pronađe RSC fajl ali izgleda problemi nastaju posle pri skladištenju RSC-a
u memoriju. Zna li neko zašto bi? Da li tu ovaj novi Otto RCS ima nekog
udela? (mislim, zapiše li on dobro stabla? Proba li neko?)
Inače, i pre mi je pravio sličnih problema ali je ranije odbijao da učita
RSC ako mu zadaš Load Resource( 'ime.rsc' ) već sam to morao preko promen-
ljive. (?) Međutim, sada ni ovo ne pali!
Ajd' pomagajte ako znate!
programiranje.132madamov,
-> #131, tigor
******
Ne znam na šta misliš sa stringovima ali ako je u pitanju ime fajla, onda to
nije problem.
******
Na ime fajla sam mislio, recimo da imaš pogrešnu vrednost u nultom bajtu
stringa gde treba da mu bude dužina stringa. Meni se često dešava na Meku da
zaboravim na detalj da su njegovi sistemski stringovi paskalski, a radim u C-u,
pa pogrešno postavim vrednosti bez tog nultog bajta. Inače, i na Meku se tip
takvog stringa naziva Str255. B) Kakvu ono beše funkciju imaju backslashovi u
pascalu, ako je uopšte imaju u stringovima, da nije neki za**b kao u C-u?
>>> Modes are most confusing when you're in wrong one.
programiranje.133cgoran,
Jedno malo neobicno pitanje...
Kako da pomocu one cetiri funkcije iz XBIOS-a uradim bilo sta u vezi zvuka...
Da budem precizniji, zanima me kako da izeditujem par zv. efekata i ubacim
ih u neko svoje programce?
programiranje.134madamov,
-> #133, cgoran
******
Da budem precizniji, zanima me kako da izeditujem par zv. efekata i ubacim ih u
neko svoje programce?
******
Time se Dule bavio svojevremeno, pa je on najkompetentniji da ti odgovori.
programiranje.135cgoran,
-> #134, madamov >> Time se Dule bavio svojevremeno, pa je on najkompetentniji da ti odgovori.
Dakle, cekajuci za Duletom... :)
Svejedno, postoji i drugi nacin...(?)
Sta bih recimo trebao da uradim pa da iskoristim neke vec gotove semplove?
Recimo one iz esprita ili slicno...
Ili jos konkretnije... Postoji li neki drugi nacin da se iz Pascala ili C-a
proizvede ZVUK (ne BEEP)?
Zahvalan.
programiranje.136dusan,
-> #135, cgoranDakle šta bi trebalo uraditi da bi naterao Yamahu da svira semplove:
1. Kupiti STE/TT ili Falcona i rešiti sve probleme ;))
2. Koristiti moj source programa za sviranje semplova koji je napisan u mašincu
i lako se exportuje u C ili već neki drugi viši jezik. Madamov je zadnji
koji
je baratao sa ovim sourceom u nameri da ga upropasti i poveže sa Com ;))
3. Kupiti Yamaha sintisajzer ;))
greetz.
programiranje.137cgoran,
-> #136, dusan
>> 2. Koristit moj source...
I taman sam se latio posla kada se setih! A gde da nadjem takvo sta? Ukoliko
me secanje ne vara, necega slicnog nema u atarist direktorijumu...
BTW, mozda sve to nije ni potrebno... Bio bi dovoljan mozda samo mali pocet-
ni hint za XBIOS( 32 ) (DoSound ili vec slicno...).
Na koji nacin da koristim onih 17 indentifikacionih bajtova koji treba da se
nalaze u stringu koji cu predati pomenutoj funkciji?
Ovo bi mi vise odgovaralo (nisam bas preterano privrzen masincu) pa ako imas
bar malo vremena... Please!
programiranje.138cgoran,
I jos nesto...
Zanima me koji je oblik zapisa PUT naredbe u memoriji za MAXON pascal?
Ako neko zna kako to radi PUT u GFA, svejedno, mislim da je isto...
Dakle, kako izgleda jedna slicica zapisana u memoriji?
programiranje.139dusan,
-> #138, cgoranSličica zapamćena u memoriji sa GET i PUT nije ništa drugo nego osakaćena
verzija BITBLT line-a. Sličica je spakovana u memoriji po skenlinijama, dakle
po redu a sve što je višak do vrednosti 8 bita se ignoriše; dakle ako imamo
blok slike 81 x 40 pixela - to će iznositi 11 bajta x 40 jer onaj jedan pixel
prelazi u sledeći bajt pa ne može biti 10 bajta x 40. Isto je i sa kolor
slikama, samo što su bitplane-ovi smešteni jedan iza drugog.
programiranje.140cgoran,
-> #139, dusan >> Slicica zapamcena u memoriji sa GET i PUT...
OK, nisam bas na to mislio... Pre svega me interesuje prvih nekoliko bajtova
toga niza. Recimo da prvi word odredjuje sirinu (u pikselima), drugi visinu
(takodje u pikselima) a da 5 i 6 bajt treba da sadrze neki indentifikacioni
broj vezan za rezoluciju prikaza... Naravno, zatim slede slozene sken-linije
slike... Interesuje me naime tacno kako to izgleda! (Pokusavao sam da ekspe-
rimentisem ali nista :( )
P.S. Nisi mi odgovorio gde je taj famozni masinski sound player!!!
programiranje.141dusan,
-> #140, cgoranE ne vredi čekati madamova da se javi i kaže šta bi s prilagodjavanjem za C
onog sound playera. Ovih dana ću malo da provrtim E:\SOURCES\ pa da vidim gde
je to čudo i da ga malo preradim za lakšu upotrebu.
programiranje.142madamov,
-> #141, dusan> E ne vredi čekati madamova da se javi i kaže šta bi s prilagodjavanjem
Da znaš da ne vredi, ne znam ni gde mi je taj source, nešto je radilo,
nešto nije htelo baš najbolje. A i nemam baš mnogo vremena ovih dana (nedelja).
programiranje.143cgoran,
-> #141, dusan
>> Ovih dana cu malo da provrtim E:\SOURCES\ pa...
Sto se mene samog tice... ne zurim.
Planirao sam da posaljem jednu igricu pa reko' cisto da ima zvuka!
Igra je inace OK ali 'cuti'... A onda je sve skupa bljuf!
Inace ako vam odgovara tako... saljem u sotf.etc! [D/N]
programiranje.144stefan,
-> #143, cgoran> Planirao sam da posaljem jednu igricu pa reko' cisto da ima zvuka!
Ajde dajte mu to što mu treba :)
programiranje.145dusan,
-> #143, cgoranU kom jeziku si radio tu igricu?
programiranje.146cgoran,
-> #145, dusan >> U kom si jeziku...
Elem, saljem vam ogoljenu verziju bez zvuka i bog-zna-kakve grafike, cisto
da vidite o cemu se radi. Po meni je vrlo zarazno!
Sto se tice jezika... Eh! Maxon pascal! Drugi put o tome (tuzna prica)...
pacman.zipprogramiranje.147cgoran,
-> #146, cgoran
žisto da se nadovežem na prethodnu poruku koju kucah on-line pa...
Naime, javljaju se ogromni problemi vezani za MAXON pascal.
Da ne bih previše objašnjavao, bacite pogled na sledeće:
VAR | ...
teka: FILE; |
slika1,slika2: POINTER; | reset( teka,'PACMAN.SPR' );
size: INTEGER; | IF MaxAvail > size THEN
BEGIN | BEGIN
| GetMem( slika2,size );
... | BlockRead( teka,slika2,size );
| close( teka )
size := ImageSize( 0,0,60,60 ); | END;
IF MaxAvail > size THEN |
BEGIN | ...
GetMem( slika1,size ); |
GetImage( 0,0,60,60,slika1^ ); | PutImage( 0,0,slika2^,CopyPut );
rewrite( teka,'PACMAN.SPR' ); | -------- -------
BlockWrite( teka,slika1,size ); |
|
... |
Na izgled sve fino izgleda... Sasvim se lepo slika uskladišti na disk, ve-
ličina odgovara, bajtovi su tačno prenešeni (ručno provereno!!!)... zatim
se sve to fino sa BlockRead vrati na svoje mesto, postavi se pointer...
...ali PutImage proizvodi jedno veliko ništa na ekranu!
Zatim sam probao da kombinujem: možda ne valja što koristim uopšteni tip
POINTER i FILE?! OK, zamenim to sa ^BYTE odnosno FILE OF BYTE... ništa!
OK, možda samo PutImage ne valja?! Menjam način iscrtavanja, menjam...
NIšta...
Znam da ste vi ljudi C-ovski orijentisani ali mislim da je problem uopšten!
Ako neko ima pojma šta bi moglo da bude u pitanju... VIžITE!
tigor
programiranje.148madamov,
-> #147, cgoran
******
Znam da ste vi ljudi C-ovski orijentisani ali mislim da je problem uopšten!
******
Jesmo. B) Ovako na prvi pogled ono što mi prvo pada na pamet je to da je
problem možda u tome što posle BlockWrite nisi zatvorio fajl eksplicitno sa
close, pa odmah prelaziš na reset. Može da se desi da nisu svi baferi stvarno
snimljeni na disk pa imaš fajl dužine nula. Sad malo bolje pročitah tvoju
poruku i vidim da si i ovo proveravao, međutim probaj, možda upali.
programiranje.149cgoran,
-> #148, madamov
>> ...nisi zatvorio fajl eksplicitno sa close...
Jesam, ali me je mrzelo da u prilozenom listingu sve prenosim.
programiranje.150dusan,
-> #146, cgoranAjd da kažem nešto u vezi te igrice:
-prvo moram da je pohvalim jer (normalno) radi na Falconu i to u bilo kojoj
monohrom rezoluciji; bez problema je iz prve proradila na 736*560.
-drugo zameram što nisi koristio neki bolji tajming za brzinu, recimo 200 Hz
jer je igrica na Falconu užasno brza pa moram da usporavam kompjuter.
-treće hmmm pa smisliću nešto do sledećeg puta ;))
programiranje.151cgoran,
-> #150, dusan
Dobro... cekam na zamerke :) Uostalom, zato sam i poslao ono parce koda
da vidim kako reagujete.
reply 1:
Bas kada sam hteo da stavim IF ukoliko nije ONLY StHigh THEN Sorry
setih se tebe i jos nekih pojedinaca :)
reply 2:
Tajming brzine je cisto stvar brojaca u petlji. Imao sam dakle, nekih
problema sa sistemskim tajmerom pa sam za sada to resio ovako. Elem, br-
zina ce se regulisati vremenski!
reply 3:
Taman sam mislio da ces da spomenes kako nema zvuka pa da... :)
programiranje.152cgoran,
-> #150, dusan
Dule... Iskopa li onaj source?
Nema veze, iovako sam iščačkao po nešto pa sam namestio par efekata.
Nego, interesuju me dve stvari: prvo... Kako da podesim da mi pritisak na
taster ne prekida zvuk( vrlo loše stojim sa dokumentacijom...)?
Drugo: Očigledno je da oni .SND fajlovi imaju neki svoj interni jezik.
Recimo da bi skratili zapis, oni verovatno koriste neke svoje naredbe koje
predstavljaju u obliku bajtova koji se ne koriste, odnosno nisu oznake za
registre i specijalne naredbe( 128,129 i >> ). Imaš li bar spisak toga?
( Ustvari, ni ne znam da li sam u pravu u vezi ovog zapisa? )
Da, i još nešto... Tiče se onog problema brzine kretanja protivnika...
Budući da nema nikakve vajde od sistemskog tajmera, da li sam osuđen da
koristim onaj D tajmer iz XBios-a ili postoji neka alternativa?
programiranje.153dusan,
-> #152, cgoran> Dule... Iskopa li onaj source?
uff, sorry u strašnoj sam gužvi i frci ovih dana pa sam potpuno zaboravio na
to. E sad sam prestao da radim pa sam ponovo na prinudnom, pa ću malo da se
organizujem i naravno, opet ništa ne uradim ;))) Ma, stiže source ovih dana...
programiranje.154dusan,
evo obećavam, kačim ovde za par dana kompletnu rutinu za sviranje digi muzike
na STu i to u pozadini! Rutina inače korišćena u igrici TRON. Ko ne zna nek se
baci na DL eno je u atari dir.
programiranje.155madamov,
-> #154, dusan
******
kačim ovde za par dana kompletnu rutinu za sviranje digi muzike na STu i to u
pozadini
******
Mašala, ko kaže da se upornost ne isplati? B)
programiranje.156cgoran,
-> #155, madamov
>> Masala, ko kaze da se upornost ne isplati? B)
Izgleda nisam u toku... isplatila se? ;)
programiranje.157dusan,
-> #156, cgoranŠto se tiče sviranja semplova u pozadini preko tajmera - zaboravite. Source sam
uspeo da izgubim prilikom pretumbavanja disketa sa stare Mege koju sam prodao i
Falcona. Imam doduše neki drugi source u mašincu ali je on pisan odavno
takoreći prvenac ;)) pa dosta zeza i blokira celu mašinu dok svira. čao mi je
ali izgleda da će ona igrica ostati gluvonema ;)
programiranje.158cgoran,
-> #157, dusan
Nema veze... Hvala u svakom slucaju!
Iovako sam nabasao na nesto (mozda cak) i bolje.
programiranje.159kermit,
Igrah se malo sa Pure Pascal-om i nadjoh source za mine sweeper. Verzija je
ista kao za Windows. Evo vam ga na (kompajlirana verzija)
minesw.zipprogramiranje.160madamov,
-> #159, kermit
> Igrah se malo sa Pure Pascal-om
A šta bi sa Pure C-om?
programiranje.161kermit,
-> #160, madamov Pure C je jos uvek u Italiji kao i US Robotic HST Dual 14400 modem :((
(koji je inace placen). Kako ce to stici i kad ne znam, ali MORA da stigne
jerbo modem nije bio bas jeftin.
programiranje.162cgoran,
Jel ima neko linijski kompajler za Maxon paskal?
Da li doticni uopste postoji?
programiranje.163madamov,
-> #161, kermit
> Kako ce to stici i kad ne znam, ali MORA da stigne jerbo modem nije bio bas
> jeftin.
Ako bude potrebna pomoć prilikom uterivanja, javi se. B))
programiranje.164kermit,
-> #163, madamov ma ne treba da se "uteruje" nego zabar treba da posalje gharanciju pa da
neko ode da pokupi te stvarcice
programiranje.165madamov,
> BTW, iz kog jezika radiš?
Zar je važno iz kog? Svaki kompajler na Atariju ima mehanizam za pozivanje
XBIOS funkcija i pointere (pristupanje određenim adresama), pa mu ovde doše
bitniji algoritam.
programiranje.166ljubisha,
Kako da skinem iz gfa bejzika (BAS) autoload tako da mogu da ga editu-
jem program?
programiranje.167dusan,
-> #166, ljubishaKo nema u glavi....
Uzmeš, napraviš svoj GFa program recimo PRINT "test" i snimiš to na disk u 2
verzije; jednu običnu a drugu autoload. Zatim uradiš jedan compare fajlova i
ustanoviš gde je taj bajt koji odredjuje autorun.
programiranje.168dusan,
Prošlog meseca je Atari Explorer on line magazin dobio umetak ;) Radi se o delu
posvećenom programiranju i tamo najveće face koje pišu programe drže razne
škole programirana u mašincu, C-u, paskalu, DSP asembleru a ima i dosta
informacija i raznih sitnih caka programiranja. Izašla su već 2 dela, u prvom
je samo bla bla šta će sve biti a u drugom već počinju prvi časovi
programiranja.
Da li vas interesuje ovo i dal da i ovo kačim u NOVOSTI uz AEO magazine?
programiranje.169astojkovic,
-> #168, dusanNaravno!
programiranje.170stefan,
-> #168, dusan> Da li vas interesuje ovo i dal da i ovo kačim u NOVOSTI uz AEO magazine?
Ja pre neki dan krišom, dok je Dule nešto piskarao, bacio pogled na to ;)
Baš sam hteo da te pitam zašto to ne baciš na sezam :) Kači.
programiranje.171madamov,
-> #168, dusan
> Da li vas interesuje ovo i dal da i ovo kačim u NOVOSTI uz AEO magazine?
žuj šta nas pita, naravno da kačiš, nemoj da ti svratim sledeći put u 8
ujutru. B)))
programiranje.172madamov,
Svi oni koji su se žalili da Filer ima bag očekujte uskoro (danas ispravih
dva bagića i dodah još jedan feature thanks to alekm koji je to verovatno već
zaboravio B)) novu verziju čim nalepim nešto preko rupe na HD disketi da mi
ovaj PowerBook ne bi uporno odbijao da čita i prepozna 720KB Atarijev format na
njoj. Poslaću je Dejanu da je baci tamo pored stare verzije, koju BTW može i da
obriše.
programiranje.173madamov,
Pored Pure C-a pogledah i Application Construction Set i malo sam se
razočarao. Naime, nije ono što sam ja očekivao, tj. ne generiše C source koji
bi se posle mogao uvući u Pure C, već je malo bolji Resource Construction Set
uz mogućnost vezivanja uz funkcije koje posle treba napisati u C-u. No, dobar
je početak, možda će se iz njega i izroditi nešto onako kako bih ja voleo da
vidim. Draža je malo više gledao, jer je u tom periodu na TV-u bila emisija o
selu u koje sam poslao matorce da žive (štaviše, neki kadrovi su snimani u
njihovom dvorištu B)). B)
programiranje.174madamov,
Poslao sam novu verziju Filera Dejanu na mail, valjda će je u toku dana
ubaciti u direktorijum umesto stare.
programiranje.175dusan,
Nove Programing arhive u NOVOSTI 7.6 i 7.7.
Atari Explorer Programing magazin:
škola mašinca MC68000, C-a, Paskala, DSP asemblera i + još hintovi optimizovane
rutine i saveti.
programiranje.176dusan,
Evo ga Kobold 2 Aktiv virus malo razložen:
-kod programa mi u nekim trenucima nije baš bio najjasniji jer je koristio neke
registre koji uopšte nisu bili dirani od samog startovanja virusa te je u
njima ostala neka adresa koju je sam sistem ostavio za svoje potrebe
-virus je teško detektovati u memoriji jer se ne kači ni na koji vector ali je
zato inteligentno prepisao sve BIOS parametre za pristup Hard disku!! Pošto su
mi ovi podaci potpuno nepoznati ne mora da znači da je virus opasan za hard
disk; doduše kad samog sebe kopira on to radi SAMO sa disketom ali nikad se ne
zna šta se nalazi u onim parametrima, možda redirekcija flopy to hard pa sve
to za sada izgleda naivno a nije...
-virus preuzima RESET vector pa je možda to i jedan od načina da ga detektujete
u memoriji; ako je RESET vector manji od vrednosti $e0000 onda sigurno skače
na adresu koja nije u ROM-u mada ovaj vektor može bilo ko da preuzme; neki
booter, ram disk...
-virus se igra sa nekim magic vrednostima te izaziva veštački reset prilikom
instaliranja
-ovako naizgled virus je totalno bezopasan; samog sebe kopira na disketu X
puta, ništa po sistemu ne dira, zauzima samo 200 bajtova što je verovatno
zanemarljivo ali prava engima leži u onih 20-tak bajta lažnih Bios parametra
za pristup hardu. Dakle mehanizmi virusa su sasvim OK pisani, takoreći
standardno (i ja bih tako uradio) ali šta on zapravo radi mogu samo da
nagadjam; prva pretpostavka je da ako ga detektujete na disketi a on je već
instaliran u memoriji i obrišete boot te diskete najverovatnije ste je
zajebali* jer su Bios rutine za pristup disku bile lažne pa ste dobili druge
vrednosti na disketi umesto original a to sve rezultuje djubrenjem boota i
eventualno FAT-a kad se sam sistem dočepa podataka. Dakle pouka leži u tome
da kad kog čistite viruse dignite računar BEZ flopija pa sa čistom memorijom
ubijajte bootove disketa.
A ko voli da vidi kako bi sve to izgledalo u praksi evo ide uz poruku :
(ali nemoj da sam video nekog da je počeo da se virusiše i zasniva na ovome)
PS listing je pisan u Devpacu.
virus.sprogramiranje.177dusan,
Evo texta (na zahtev samog autora) o tome kako koristiti semplove na STE/TT
mašinama, dakle stereo DMA sound. Text ima ugradjen reader.
dma_play.prgprogramiranje.178madamov,
Ima li komentara na novu verziju Filer-a? Da znam šta da dodajem u
sledećoj verziji.
programiranje.179stefan,
-> #178, madamov> Ima li komentara na novu verziju Filer-a? Da znam šta da dodajem u
> sledećoj verziji.
Najvažniji komentar je da radi :) A što se dodavanja tiče imam dva
predloga. Prvi je da kada daje fajl selektor ispiše šta očekuje da se
unese. Drugi bi bio da kada delim neki fajl na delove na kraju zapiše i
neki inf fajl tako da bude moguće da samo klikom na taj inf program spoji
sve delove fajla a ne da ja klikćem nekoliko puta. Naravno, delovi bi kao
i sada trebali da ostanu "čisti", znači bez ikakvih dodatnih podataka u
njima da bi ostala mogućnost eventualnog jednostavnog prenošenja i
spajanja takvih delova na drugim kompjuterima.
programiranje.180bipin,
Postovani
Po prvi put se javljam. Procitao sam vec neke poruke u kojima se traze
neke replay rutine za YM 2149 ili PCM. Posedujem kompletnu replay rutinu za
ST-a ili STe-a. Rutinu sam dobio uz jedan traker program. U pitanju
je TCB Tracker. Duzina rutine je od 30-40k zavisno od modela Atarija
(ST ili STe). Uz nju se nalazi i sors u masincu kojim se rutina vezuje
na vas program. Toliko o tome...
Da se upoznamo...
Bavim se programiranjem na masincu. Nudim pomoc za izradu introa, igara,
i svega drugog sto radi u masincu (iskljucivo). Uz poruku sledi sors
trika za overscan ( SUPER_EK.S ). Rutina omogucava da napisete intro ili
nesto drugo u rezoluciji 320x270 (nisam bas brojao linije, mozda i nije
270!?!). Sledeci put cu vam poslati rutinu za kompletni overscan (nema
vise bordera!!!). Imam nekoliko zavrsenih introa koje cu vam takodje
poslati.
Pitanja...
Nikada nisam voleo da radim pod Atarijevim sistemom, pa kao posledica
sledi da neznam da otvorim ni najobicniji prozor. Zeleo bih da se malo
upoznam sa tim. Molim da mi neko posalje listing u masincu za otvaranje
prozora... tj. za koriscenje GEM-a iz masinca.Nekoliko pitanja o FALCON-u.
Da li je tastatura ista kao na starom ST-u? Kolika je trenutna cena
FALCON-a sa i bez hard diska? (tj. dali je cena pala sa 2200dem).
Da li se pojavila neka igra za njega? (posebno neka u 3D).
Pozdrav!
super_ek.sprogramiranje.181ljubisha,
-> #180, bipin>Po prvi put se javljam. Procitao sam vec neke poruke u kojima se traze
Dobrodošao. Jeste da si korisnik od prošle godine ali nikad nije kasno
:)
programiranje.182dusan,
-> #180, bipin> Da li je tastatura ista kao na starom ST-u?
Da. Boje se samo razlikuju, bela slova sivi tasteri.
> Kolika je trenutna cena
> FALCON-a sa i bez hard diska?
Bez harda sa 4MB RAMa (cena u Švedskoj!) je 1600 DM.
U Nemačkoj za 2200 DM dobijaš 4Mb RAM 80 MB hard i hardverski screen blaster.
> Da li se pojavila neka igra za njega? (posebno neka u 3D).
Da, ima već nekoliko igara samo za njega. Recimo Ishar 1 i 2, Transtarctica,
Humans, Laser itd. Glavno je da su počeli uporedo da prave i verzije za
Falcona. Što se tiče 3D igrica imam jednu demo verziju Lasera; to su pisali
francuzi i igrica je u fazonu Dungeon Mustera ali ovoga puta glatko prodireš
kroz prostor u svim pravcima, ko da imaš video mixetu ;))
programiranje.183madamov,
-> #179, stefan
> Najvažniji komentar je da radi :)
Drago mi je. B) Nećeš verovati gde se krio bag, ispravljen je samo
redefinicijom jedne konstante u long. B)
> Prvi je da kada daje fajl selektor ispiše šta očekuje da se unese.
Iz ovoga zaključujem da imaš TOS stariji od 1.4. Naime, pogledaj malo onaj
UTILS.C modul i funkciju FSelect(), tamo ispitujem koji je TOS u pitanju pa ako
je manji od 1.4 pozivam fsel_input, a ako je 1.4 i viši pozivam fsel_exinput.
Jedina razlika između ove dve funkcije je, kao što znaš, baš u tome da
prvobitna fsel_input nema mogućnost dodavanja poruke u file selector, a ova
druga ima. Ako ne bude uzimalo mnogo vremena i akrobacija dodaću da se poruka
kod TOS-a manjeg od 1.4 ispisuje negde van file selectora. Na vama je da mi
kažete koje je mesto najzgodnije za to (kad očepiš UIS preko celog ekrana
ostaje malo mesta za poruku na ekranu).
> Drugi bi bio da kada delim neki fajl na delove na kraju zapiše i neki inf
> fajl
O ovome sam već sada razmišljao, no nije bilo vremena, Prota je očekivao
posetu određene ženske osobe pa sam morao da se izgubim iz njegove gajbe što
pre. B) Biće ubačeno.
programiranje.184stefan,
-> #183, madamov> Iz ovoga zaključujem da imaš TOS stariji od 1.4. Naime, pogledaj malo
Dobro zaključuješ ;)
> kod TOS-a manjeg od 1.4 ispisuje negde van file selectora. Na vama je da
> mi kažete koje je mesto najzgodnije za to (kad očepiš UIS preko celog
> ekrana ostaje malo mesta za poruku na ekranu).
Mali alertčić ;) pri samom vrhu ekrana ili na primer tekst na meni
liniji?
> O ovome sam već sada razmišljao, no nije bilo vremena, Prota je
Samo povedi računa o onome da delovi fajla i dalje budu "čisti"
programiranje.185madamov,
-> #184, stefan
> Mali alertčić ;) pri samom vrhu ekrana ili na primer tekst na meni liniji?
Probaću ovo drugo, pa ako bude mnogo komplikovano onda ćemo negde da
smestimo objekat sa porukom.
> Samo povedi računa o onome da delovi fajla i dalje budu "čisti"
Biće čisti, nema frke. B)
programiranje.186dusan,
-> #185, madamovMore ajde šta palite čoveka program nije upotrebljiv iz samo jednog razloga ;)
Ne otvara neki privremeni bafer pa učitava parče po parče nego drvi i po 5
minuta (!!!) ako se deli fajl sa flopija. Zašto glupi INP() kad je GEMDOS(read)
najbrži. I što je najbolje kad mu zadaš učitaj mi 100000 a fajl je veći, samo
zapamtiš handle pa kad sledeći put ponovo zadaš read on nastavi odatle, što će
reći pamti seek. Miki znaš šta ti je činiti ;))
programiranje.187madamov,
-> #186, dusan
> Ne otvara neki privremeni bafer pa učitava parče po parče nego drvi i po 5
> minuta (!!!) ako se deli fajl sa flopija.
Otvara bafer od 64KB. U početku ga nisam zamislio da bi seckao fajlove sa i
na flopi, već direktno na hard pa onda sam kopiraš na flopi. No, vidim da ću
morati da predvidim i takvu mogućnost. Elem, ubaciću da vidim koliko memorije
mogu da očepim za bafer pa ako bude mogao ceo fajl da se šibne u memoriju biće
brz kao munja. Nema frke, već sam to radio za onaj MacBinary, tj. hoću da kažem
kad jednom sednem ubačeno je za pet minuta. B)
> Zašto glupi INP() kad je GEMDOS(read)
Kakav bre INP(), nije ti ovo GFA BASIC. B) Reč je o fread() C funkciji,
korišćena radi kompatibilnosti. Ako bude stvarno drastično brže sa GEMDOS read
i write funkcijama biće ubačeno. B)
programiranje.188dusan,
-> #187, madamov> Kakav bre INP(), nije ti ovo GFA BASIC. B) Reč je o fread() C funkciji,
Xe, xe pa to ti je isto to kad se iskompajlira ;)
> Ako bude stvarno drastično brže sa GEMDOS read
> i write funkcijama biće ubačeno. B)
Ne da je brže nego drastićno! ;)
programiranje.189madamov,
-> #188, dusan
> Xe, xe pa to ti je isto to kad se iskompajlira ;)
Ne bih rekao. B) Kao drugo, kada se desi neka greška zbog koje treba da
izađem iz programa, a fajl mi je otvoren, C mi garantuje da će exit() regularno
zatvoriti i isprazniti sve bafere fajla, tj. i upisati ih na disk. Ako koristim
GEMDOS read i write gubim tu mogućnost, pa bih morao sam da pozatvaram sve
fajlove pre nego što izađem iz programa.
programiranje.190bipin,
-> #181, ljubisha
>Dobrodosao. Jeste da si korisnik od...
Pravo da ti kazem bavim se mahom PC-jem. Atarijem se zezam po kuci i po
malo ceprkam. Ovde sam se javio na nagovor mog drugara Stefe. On je covek
profesionalac za ATARI ST. Mozda se secas njegovih introa radjenih za
L.C.M.-a (Lonely Cracker Man), svojevremeno jednog od najvecih dobavljaca
(citaj 'pirata') za Atari. Ja cu vam samo slati njegove rutine i introe
zato jer covek nema modem. Obecao je da ce nakon sto vam posalje nekoliko
introa poslati i igru (koja ce biti PD!!!) pisanu komplet u masincu, koja
usput radi pod njegovim '33-bit Game Operating System' i to tek u razvoju!
Ta stvar izgleda dosta mocna, ali o tome cu vam javiti kada mi on to malo
detaljnije opise. Uz poruku i sors fajl Stefine rutine za kompletan
overscan. Rutina se koristi iskljucivo za introe ciji se kod implementira
u kod rutine. Ovo je najtezi moguci nacin za pisanje intro-a, ali i naj-
izazovniji (zadnje dve recenice citiram).
Hvala za dobrodoslicu.
mega_scr.sprogramiranje.191bipin,
Ima li neko iskustva u programiranju kontrolera FDC 1772?
Ako ima zeleo bih da razmenim misljenja i literaturu, a imam i nekoliko
pitanja.
programiranje.192bipin,
Evo jedne slucajne greske koja je nastala pri pisanju rutine
MEGA_SCR.S (rutine koja je zakacena uz jednu od mojih poruka)
Mislim da ce izgledati zaista neobicno koliko se sve boja moze
prikazati na ekranu ST-a, a kamoli nijansi koje je nemoguce
dobiti cak ni na STe-u. Koliko cete biti u mogucnosti da vidite
zavisi i od toga dali trik gledate na monitoru ili TV-u.
trik.prgprogramiranje.193stefan,
-> #190, bipin> profesionalac za ATARI ST. Mozda se secas njegovih introa radjenih za
> L.C.M.-a (Lonely Cracker Man), svojevremeno jednog od najvecih dobavljaca
Sećam se ja :) Baš i nije morao da stavlja one boot introe ;) Ionako su
obično bivali skinuti ;)
> zato jer covek nema modem. Obecao je da ce nakon sto vam posalje nekoliko
Pa šta čeka sa tom kupovinom!? ;)
programiranje.194stefan,
-> #192, bipin> zavisi i od toga dali trik gledate na monitoru ili TV-u.
Trik je zaista odličan, uzevši u obzir da je fajl koji si zakačio dugačak
samo 1 byte ;)) Pogrešio si nešto pri uploadu fajla, pokušaj ponovo.
programiranje.195ognjan,
-> #191, bipin>> Ima li neko iskustva u programiranju kontrolera FDC 1772?
>> Ako ima zeleo bih da razmenim misljenja i literaturu, a imam i
>> nekoliko pitanja.
Dosta o tome ima u knjizi "The Anatomy of The Atari ST", koju sam
nedavno poslao u grupu st. Javice ti se vec neko ko je to skinuo. Vlasnik
grupe nije vise na Sezamu pa ti ne moze biti obezbijedjen upad.
(Ovo bi stvarno trebalo da rijesimo! Miki? Dule?)
Ogy.
P.S.
U stvari, pokusacu naci taj fajl i prebaciti ga u tvoj mail, ako skontam
kako se to radi :)
programiranje.196stefan,
-> #195, ognjan> U stvari, pokusacu naci taj fajl i prebaciti ga u tvoj mail,
> ako skontam kako se to radi :)
Evo ja sam mu sada prebacio.
programiranje.200madamov,
-> #195, ognjan
> Ovo bi stvarno trebalo da rijesimo! Miki? Dule?
Ja sam svoju kvotu grupa iskoristio, a bolje da Dule bude vlasnik nove ST
grupe, više je u kontaktu sa Atarijem od mene.
> ako skontam kako se to radi :)
Download fajla u PAD (file broj_poruke &) pa onda jedno mail send korisnik,
a onda mail attach broj_mailporuke ime_fajla & i uploadovao si fajl iz PAD-a.
programiranje.201stefan,
Gfa tips&tricks, izvor ST News
gfa.zipprogramiranje.202ljubisha,
Nešto sam čeprkao po RSC fajlovima i hteo sam da malo promenim RSC
od pasijansa. Međutim to baš i nije RSC fajl. Kad se izlista dobije se
neki sors. I nije čist teks već na početku ima menije a tek posle dola-
zi sors. Jel ima neko predstavu šta je to?
programiranje.203madamov,
-> #202, ljubisha
> Međutim to baš i nije RSC fajl.
Nije mi baš najjasnije na kakav si to fajl naleteo pa bi bilo najbolje da
ga okačiš uz poruku da ga proanaliziramo.
programiranje.204ljubisha,
-> #203, madamov>ga okačiš uz poruku da ga proanaliziramo.
Naravno :)
patience lzh 53953 Pasijans (samo za monohromatski monitor) [V2.13]