CODINGLISTINGS ★ CIRCLE RUTINU (RACUNARI MAGAZINE)|Racunari Magazine) ★

CIRCLE rutinu (Racunari Magazine)Coding Listings
★ Ce texte vous est présenté dans sa version originale ★ 
 ★ This text is presented to you in its original version ★ 
 ★ Este texto se presenta en su versión original ★ 
 ★ Dieser Text wird in seiner Originalfassung präsentiert ★ 

Krug za pet stotinki

Danas programeri izvlače neverovatno brzu grafiku iz šesnaestobltnih računara, ali velika brzina nije nedostupna ni na osmobltnlm mi kraćim a. Amstradov procesor poseduje veoma moćne naredbe za rad sa grafikom: 16 bitna aritmetika i SET, RES i BIT skupovi naredbi. Njima se može direktno paliti bit u bajtu, tj. tačka u MODE 2. Zahvaljujući ovim pogodnostima, uz primenu dobrog algoritma na „amstradu“ se može postići veoma brza grafika.

Rutina koju smo pripremili za ovaj broj crta 199 krugova (poluprečnika od 1 do 199) u petlji za oko 13,4 sekundi. Merenje je izvršeno TEST rutinom iz bejzik primera, prilikom merenja omogućiti interapt). Vreme potrebno da se jedan krug nacrta je oko 0.06 sekundi (efektno 0.05 s, brže nego što ljudsko oko može da registruje), i pri tome se ništa ne gubi na kvalitetu kružnice! Rutina se izvodi različitom brzinom zavisno od radijusa kružnice. Ova rutina je oko 1,8555 puta brža od najbrže ekvivalentne rutine ranije objavljene u domaćim časopisima (za „amstrad“, skoro sve su objavljene u „Računarima”). Po brzini se opasno primakla i CIRCLE rutini GEM-a (testiran GEM PAINT „šnajder PC1512", 8086, 16 bita. 8 MHz, 64 KVIDEO memorije), a po kvalitetu nacrtane kružnice rutina iz primera je pretekla GEM za dva reda veličine.

Brzina rutine se može izmeriti bejzik programom iz primera (naravno, iz rutine izbaciti Dl naredbu). Po utrošenom vremenu je. ipak, bolja od sličnih rutina na osmobitnim računarima koje ne koriste tabele. U

CIRCLE rutini su koriščene super brze PLOT i A-HL rutine, koje su ranije objavljene u ,,Računarima“ („Crtanje na mašincu"), i detaljno objašnjene Ulazni registri su standardni i određuju x, y koordinatu centra i radijus (poluprečnik) kruga:

DE — x koordinata centra kružnice (0 < = x < = 639),
HL — y koordinata centra kružnice (0 < = y < = 398).
BC — r radijus kružnice (0 < = r < = 199).

Sama CIRCLE rutina počinje od 200 linije, a potprogram od 10 do 160 linije predstavlja petlju koja demonstrira brzinu rutine. Rutina je čista, što znači da ne formira nikakve tabele i ne zauzima dodatnu memoriju.

Ova rutina je brža od ostalih zato što se jedno izračunavanje koordinate grafičke linije izvodi za dve tačke, a u jednom prolazu se nacrta osam tačaka. Izbačeni su realni brojevi — koriste se samo ćeli, manji od 65535 koji se mogu obrađivati procesorskom aritmetikom. Na žalost brzina je uzela svoj danak, pa rutina ima i nekih mana: kružnica ne sme da izađe van ekrana (ali se to može lako prevazi ci ugradnjom soft filtra) I ne sme se koristiti hardverski SCROLL. Ranije su u „Računarima objavljeni skoro isto tako brzi softverski skrolovi, koje možete koristiti u svojim programima.

Može li još brže? Da. naravno! Koriščenjem tabelarne A--HL rutine, ili potpuno novim algoritmima (za PLOT ili čak CIRCLE rutinu), kao što je. na primer, bejzik rutina Iz primera 2, koja crta elipsu na potpuno nov način. Rutina na početku uzima konstante (početne vrednosti) SIN-usa i Cos-inusa. iz kojih kasnije izračunava ostale vrednosti potrebne za crtanje elipse. Rutina nije naročito brza. jer je pisana u bejziku. Brzina joj se može povećati prevođenjem u mašinac nekim kompajlerom.

Svetislav Zahar, Racunari Magazine

★ PUBLISHER: Računari Magazine
★ ANNÉE: 1987
★ CONFIG: 64K + AMSDOS
★ LANGAGE:
★ LiCENCE: LISTING
★ AUTHOR: Andrija Radovič

★ AMSTRAD CPC ★ DOWNLOAD ★

Type-in/Listing:
» CIRCLE  rutinu    (Racunari  Magazine)    LISTINGDATE: 2021-12-08
DL: 150
TYPE: PDF
SiZE: 212Ko
NOTE: 3 pages/PDFlib v1.6

★ AMSTRAD CPC ★ A voir aussi sur CPCrulez , les sujets suivants pourront vous intéresser...

Lien(s):
» Applications » Jetzt geht's rund (CIRCLE Basic-Routine)
» Applications » RSX Circle (CPC Magazin)
» Coding Src's » Graphic - Circle Writer (Amstrad Computer User)
» Applications » RSX Circle (Schneider Aktiv)
» Applications » Three Point Circle (Your Computer)
» Coding Src's » Basic-Circle
Je participe au site:
» Vous avez des infos personnel, des fichiers que nous ne possédons pas concernent ce programme ?
» Vous avez remarqué une erreur dans ce texte ?
» Aidez-nous à améliorer cette page : en nous contactant via le forum ou par email.

CPCrulez[Content Management System] v8.7-desktop
Page créée en 111 millisecondes et consultée 594 fois

L'Amstrad CPC est une machine 8 bits à base d'un Z80 à 4MHz. Le premier de la gamme fut le CPC 464 en 1984, équipé d'un lecteur de cassettes intégré il se plaçait en concurrent  du Commodore C64 beaucoup plus compliqué à utiliser et plus cher. Ce fut un réel succès et sorti cette même années le CPC 664 équipé d'un lecteur de disquettes trois pouces intégré. Sa vie fut de courte durée puisqu'en 1985 il fut remplacé par le CPC 6128 qui était plus compact, plus soigné et surtout qui avait 128Ko de RAM au lieu de 64Ko.