Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

1 Pertemuan 5 Pemrograman Grafik dengan instruksi primitif dan dengan bahasa pemrograman C/C++ dalam grafika komputer. Matakuliah: T0074 / Grafika Komputer.

Presentasi serupa


Presentasi berjudul: "1 Pertemuan 5 Pemrograman Grafik dengan instruksi primitif dan dengan bahasa pemrograman C/C++ dalam grafika komputer. Matakuliah: T0074 / Grafika Komputer."— Transcript presentasi:

1 1 Pertemuan 5 Pemrograman Grafik dengan instruksi primitif dan dengan bahasa pemrograman C/C++ dalam grafika komputer. Matakuliah: T0074 / Grafika Komputer Tahun: 2005 Versi: Versi 1 / Revisi 0

2 2 Learning Outcomes Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu : Mahasiswa mampu menghasilkan program grafik dengan instruksi primitif dan dengan bahasa pemrograman C/C++ dalam grafika Komputer.(OpenGl.)

3 3 Outline Materi Materi 1 : Program dengan instruksi primitif Materi 2 : Penggunaan C/C++ dalam grafika Komputer(OpenGl).

4 4 Pokok Bahasan (5) : Pemrograman grafik dengan akses memori langsung dan menggunakan fasilitas ROM BIOS dengan pemrograman bahasa C/C++(OFC) Oleh : Djunaidy Santoso M.Kom.

5 5 Pokok Bahasan (5) : Pemrograman grafik dengan akses memori langsung dan menggunakan fasilitas ROM BIOS dengan pemrograman bahasa C/C++(OFC)

6 6 INSTRUKSI PRIMITIF 1.Jika kita hendak mengaktifkan modus grafik, maka pertama kali instruksi yang kita gunakan adalah “setmode()”. 2.Kita memiliki dua pilihan untuk memprogramkan grafik 3. :mengakses memori video secara langsung, atau 4.memggunakan fasilitas yang disediakan oleh ROM BIOS 5.Cara yang pertama umumnya lebih sulit membuat programnya, namun memiliki kecepatan proses yang lebih tinggi dibanding cara yang kedua. 6.Pada pertemuan ini akan membahas cara membuat instruksi primitif dengan menggunakan ROM BIOS. Sebagian di antaranya telah kita bahas pada pertemuan yang lalu.

7 7 Set Modus Video Sudah kita bahas pada pertemuan yang lalu Menempatkan Posisi Kursor Sudah kita bahas pada pertemuan yang lalu Membaca Posisi Kursor Pada modus teks kita bisa melihat posisi kursor. Namun pada modus grafik kursor itu tidak terlihat. ROM BIOS Video Service 03h Service 3 (03h) : Read Cursor Position INPUT TO BIOS OUTPUT FROM BIOS AH = 03 hDH = Row number BH = Page NumberDL = Column number (0 for CGA graphics modes)CH = Cursor starting scan line CL = Cursor ending scan line void getxy (int ^column, ^int row, int page) { reg.h.ah = 3; reg.h.bh = page; int86 (0x10, ®, ®); ^row= reg.h.dh; ^column= reg.h.dl; }

8 8 Set dan Menentukan Page Aktif Pemanfaatan page bisa ditemui pada program animasi karena adanya kesempatan untuk saling bergantian “menggambar” di memori dan menampilkan di layar di antara page yang satu dengan yang lainnya. ROM BIOS Video Service 05h Service 5 (05h) : Set Active Display Page INPUT TO BIOS OUTPUT FROM BIOS AH = 05hno data returned AL = Active Page Number (0 for CGA graphics modes) void setpage (int page) { reg.h.ah = 5; reg.h.al= page; int86(0x10, ®, ®); }

9 9 ROM BIOS Video Service 0fh Service 15 (0fh) : Get Current Video Mode INPUT TO BIOS RETURN FROM BIOS AH = 0fHAL = Current display mode AH = Number of characters per line BH = Active dislplay page number void setpage (int page) {reg.h.ah = 0x0f; int86 (0x10, &ref, ®); return (reg.h.bh); }

10 10 Membuat Window Baru ROM BIOS Video Service 06h Service 6 (06h) : Scroll Window Up INPUT TO BIOS RETURN FROM BIOS AH = 06hNo data return AL = Number of character line to scroll BH = Display attribute for blank lines CH = Row number for upper left corner CL = Column number for upper left corner DH = Row number for lower right corner DL = Column number for lower right corner

11 11 void setwindow (int x1, int y1, int x2, int y2, int color) { reg.h.ah= 6; reg.h.al= 0; reg.h.bh= color; reg.h.cl= x1; reg.h.ch= y1; reg.h.dl= x2; reg.h.dh= y2; int86 (0x10, ®, ®); }

12 12 Scroll Windows Up & Down ROM BIOS Video Service 07h Service 7 (07h) : Scroll Window Down INPUT TO BIOS RETURN FROM BIOS No data return AL= Number of character lines to scroll BH= Display attribute for blank lines CH= Row number for upper left corner CL= Column number for upper left corner DH= Row number for lower left corner DL= Column number for upper left corner

13 13 void scrollwindowUp (int x1, int y1, int x2, int y2, int color) { reg.h.ah= 6; reg.h.al= 1;/* jumlah baris yang di-scroll reg.h.bh= color; reg.h.cl= x1; reg.h.ch= y1; reg.h.dl= x2; reg.h.dh= y2; int86 (0x10, ®, ®); }

14 14 void scrollwindowDn (int x1, int y1, int x2, int y2, int color) { reg.h.ah= 7; reg.h.al= 1; reg.h.bh= color; reg.h.cl= x1; reg.h.ch= y1; reg.h.dl= x2; reg.h.dh= y2; int86 (0x10, ®, ®); }

15 15 Membaca Satu Karakter dari Layar Pada pembacaan satu karakter di posisi kursor, jika karakter tsb. Sesuai dengan pola huruf ASCII, maka nilai ASCII akan diberikan. Jika tidak dijumpai, maka nilai 00h akan diberikan. Fungsi ini bisa dijalankan pada modus grafik sebagaimana halnya modus teks. Pada modus teks pasti akan diberikan nilai ASCII. ROM BIOS Video Service 08h Service 8 (08h) : Read Character and Attribute INPUT TO BIOS RETURN FROM BIOS AH= 08HAH= attribute of text character BH= Active PageAL= ASCII character at cursor Location

16 16 int readChar (int page, char *attr) { reg.h.ah= 8; reg.h.bh= page; int86 (0x10, ®, ®); *attr = reg.h.ah; return (reg.h.al); }

17 17 Menulis Satu Karakter ke Layar Pada modus grafik hasil penulisan satu karakter tidak akan membuat posisi kursor bergeser dengan sendirinya. Ini adalah tanggung jawab pemrogram untuk menggeser kursor tersebut. Attribute yang dapat diberikan di sini hanyalah warna huruf / foreground. ROM BIOS Video Service 09h Service 9 (09h) : Write Character and Attribute INPUT TO BIOS RETURN FROM BIOS AH= 08HAH= attribute of text character BH= Active PageAL= ASCII character at cursor Location

18 18 int readChar (int page, char *attr) { reg.h.ah= 8; reg.h.bh= page; int86 (0x10, ®, ®); *attr = reg.h.ah; return (reg.h.al); }

19 19 CLOSING Mahasiswa mampu menghasilkan program grafik dengan instruksi primitif dan penggunaan dengan bahasa pemrograman C/C++ dalam Grafika Komputer.(OpenGl)


Download ppt "1 Pertemuan 5 Pemrograman Grafik dengan instruksi primitif dan dengan bahasa pemrograman C/C++ dalam grafika komputer. Matakuliah: T0074 / Grafika Komputer."

Presentasi serupa


Iklan oleh Google