Rev 134 | Rev 485 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 134 | Rev 139 | ||
---|---|---|---|
Line 2... | Line 2... | ||
2 | ; |
2 | ; |
3 | ; Written in pure assembler by Ivushkin Andrey aka Willow |
3 | ; Written in pure assembler by Ivushkin Andrey aka Willow |
4 | ; |
4 | ; |
5 | ; Created: December 16, 2004 |
5 | ; Created: December 16, 2004 |
6 | ; |
6 | ; |
7 | ; Last changed: February 2, 2005 |
7 | ; Last changed: August 27, 2006 |
8 | ; |
8 | ; |
9 | ; Compile with FASM |
9 | ; Compile with FASM |
Line 10... | Line 10... | ||
10 | 10 | ||
11 | ; BGI constants |
11 | ; BGI constants |
Line 235... | Line 235... | ||
235 | .fload: |
235 | .fload: |
236 | mov dword[.font],edx ; filename |
236 | mov dword[.font],edx ; filename |
237 | mov esi,edi ; esi->FontName |
237 | mov esi,edi ; esi->FontName |
238 | mov [.dest],edi ; ptr to load font |
238 | mov [.dest],edi ; ptr to load font |
239 | if ~ BGI_LEVEL eq KERNEL |
239 | if ~ BGI_LEVEL eq KERNEL |
240 | mov [.fsize],1 |
- | |
241 | mov eax,58 |
240 | mov eax, 70 |
242 | mov ebx,.fontinfo |
241 | mov ebx, .fontattr |
243 | int 0x40 |
242 | int 0x40 |
244 | test eax,eax |
243 | test eax, eax |
245 | jnz .fail |
244 | jnz .fail |
246 | dps2 '1' |
245 | dps2 '1' |
247 | shr ebx,9 |
246 | mov eax, [.fileattr+32] |
248 | inc ebx |
- | |
249 | mov [.fsize],ebx |
247 | mov [.fsize], eax |
250 | mov ebx,.fontinfo |
248 | mov ebx,.fontinfo |
251 | mov eax,58 |
249 | mov eax,70 |
252 | int 0x40 ; ebx - file size |
250 | int 0x40 ; ebx - file size |
253 | else |
251 | else |
254 | push edi esi edx |
252 | push edi esi edx |
255 | mov eax,.font |
253 | mov eax,.font |
256 | xor ebx,ebx |
254 | xor ebx,ebx |
Line 338... | Line 336... | ||
338 | 336 | ||
339 | if ~ BGI_LEVEL eq KERNEL |
337 | if ~ BGI_LEVEL eq KERNEL |
340 | .fontinfo: |
338 | .fontinfo: |
341 | dd 0 |
339 | dd 0 |
- | 340 | dd 0 |
|
342 | dd 0 |
341 | dd 0 |
343 | .fsize dd 0 |
342 | .fsize dd 0 |
344 | .dest dd 0 |
343 | .dest dd 0 |
345 | dd 0x10000 |
344 | .fontfullname: |
346 | db BGIFONT_PATH |
345 | db BGIFONT_PATH |
- | 346 | .font db 'FONT.CHR',0 |
|
- | 347 | ||
- | 348 | .fontattr: |
|
- | 349 | dd 5 |
|
- | 350 | dd 0 |
|
- | 351 | dd 0 |
|
- | 352 | dd 0 |
|
- | 353 | dd .fileattr |
|
- | 354 | db 0 |
|
- | 355 | dd .fontfullname |
|
347 | .font db 'FONT.CHR',0 |
356 | .fileattr rd 40/4 |
348 | else |
357 | else |
349 | .dest dd 0 |
358 | .dest dd 0 |
350 | .font db 'FONT CHR' |
359 | .font db 'FONT CHR' |
351 | .okflag db ' ',0 |
360 | .okflag db ' ',0 |