Rev 3169 | Rev 3194 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
431 | serge | 1 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
2 | ;; ;; |
||
2047 | art_zh | 3 | ;; Copyright (C) KolibriOS team 2004-2011. All rights reserved. ;; |
431 | serge | 4 | ;; Copyright (C) MenuetOS 2000-2004 Ville Mikael Turjanmaa ;; |
5 | ;; Distributed under terms of the GNU General Public License ;; |
||
6 | ;; ;; |
||
7 | ;; BOOTCODE.INC ;; |
||
8 | ;; ;; |
||
2047 | art_zh | 9 | ;; Kolibri-A auxiliary 16-bit code, ;; |
10 | ;; based on bootcode for KolibriOS ;; |
||
431 | serge | 11 | ;; ;; |
12 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
||
1 | ha | 13 | |
593 | mikedld | 14 | $Revision: 3176 $ |
1 | ha | 15 | |
3169 | art_zh | 16 | boot_dev db 0 ; 0=floppy, 1=hd |
1 | ha | 17 | |
18 | |||
19 | ;========================================================================= |
||
20 | ; |
||
21 | ; 16 BIT CODE |
||
22 | ; |
||
23 | ;========================================================================= |
||
24 | |||
3169 | art_zh | 25 | diff16 "start_of_code: ",0,$ |
1 | ha | 26 | |
27 | start_of_code: |
||
1683 | art_zh | 28 | cld |
1 | ha | 29 | |
29 | halyavin | 30 | ; set up stack |
1683 | art_zh | 31 | mov ax, 3000h |
32 | mov ss, ax |
||
33 | mov sp, 0EC00h |
||
29 | halyavin | 34 | ; set up segment registers |
1683 | art_zh | 35 | push cs |
36 | pop ds |
||
37 | push cs |
||
38 | pop es |
||
1 | ha | 39 | |
40 | |||
1703 | art_zh | 41 | cpugood: |
3176 | art_zh | 42 | xor ax, ax |
43 | push ax |
||
1683 | art_zh | 44 | popf |
45 | sti |
||
465 | serge | 46 | |
29 | halyavin | 47 | ; set up esp |
1683 | art_zh | 48 | movzx esp, sp |
1 | ha | 49 | |
3176 | art_zh | 50 | push ax |
1683 | art_zh | 51 | pop es |
3176 | art_zh | 52 | mov [es:0x9031], ax |
160 | diamond | 53 | |
3169 | art_zh | 54 | ; --------------- APM - removed-------------------- |
1683 | art_zh | 55 | and word [es:0x9044], 0 ; ver = 0.0 (APM not found) |
164 | serge | 56 | |
29 | halyavin | 57 | cfgmanager: |
713 | Lrz | 58 | |
59 | |||
3176 | art_zh | 60 | ; DMA ACCESS TO HD |
713 | Lrz | 61 | |
3176 | art_zh | 62 | mov al, 1 |
63 | mov [es:0x901F], al |
||
2014 | art_zh | 64 | |
1 | ha | 65 | ; GRAPHICS ACCELERATION |
346 | diamond | 66 | ; force yes |
3176 | art_zh | 67 | mov [es:0x901C], al |
1 | ha | 68 | |
69 | |||
70 | ; VRR_M USE |
||
71 | |||
3176 | art_zh | 72 | mov [es:0x9030], byte 2 |
73 | mov [es:0x901E], al |
||
1 | ha | 74 | |
75 | ; BOOT DEVICE |
||
76 | |||
3176 | art_zh | 77 | xor ax, ax |
1683 | art_zh | 78 | mov [boot_dev], al |
3176 | art_zh | 79 | mov es, ax |
1 | ha | 80 | |
1103 | diamond | 81 | |
1 | ha | 82 | ; SET GRAPHICS |
83 | |||
3163 | art_zh | 84 | mov ax, 0xA000 ; AtomBIOS Fn00 |
85 | mov cx, 0x550A ; 1024x768, 32bpp, ARGB8888 |
||
412 | serge | 86 | setgr: |
1683 | art_zh | 87 | int 0x10 |
88 | test ah, ah |
||
1703 | art_zh | 89 | jnz $ |
3163 | art_zh | 90 | mov ax, 0xA006 ; AtomBIOS Fn06 |
91 | int 0x10 |
||
92 | mov [es:0x9018], ebx ; LFB |
||
93 | |||
412 | serge | 94 | gmok2: |
1683 | art_zh | 95 | push ds |
96 | pop es |