1,112 → 1,102 |
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
;; ;; |
;; DEVICE SETUP ;; |
;; ;; |
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
; version: 1.17 |
; last update: 30/07/2015 |
; changed by: Kiril Lipatov, aka Leency |
; changes: Mouse speed and mouse delay options moved to mouse_cfg |
;--------------------------------------------------------------------- |
; version: 1.16 |
; last update: 12/04/2014 |
; changed by: Yurii Shevtsov, aka gtament |
; changes: Fixed junk draw at the bottom of window |
;--------------------------------------------------------------------- |
; version: 1.15 |
; last update: 20/04/2012 |
; changed by: Marat Zakiyanov aka Mario79, aka Mario |
; changes: Add the flag of speaker mute. |
; Correcting setup.dat |
;--------------------------------------------------------------------- |
; version: 1.14 |
; last update: 20/03/2012 |
; changed by: Marat Zakiyanov aka Mario79, aka Mario |
; changes: optimisations and code refactoring |
;--------------------------------------------------------------------- |
; Authors: Ville - original version |
; A. Ivushkin - autostart (w launcher) |
; M. Lisovin - added many feauters (apply all, save all, set time...) |
; I. Poddubny - fixed russian keymap |
;14/08/06 Mario79 - added regulation of mouse features |
;------------------------------------------------------------------------------- |
;;;;;;;;;;;;;;;;;;;;;;; |
;; SYSTEM SETTINGS ;; |
;;;;;;;;;;;;;;;;;;;;;;; |
|
format binary as "" |
|
use32 |
org 0x0 |
org 0 |
|
db 'MENUET01' ; 8 byte identifier |
dd 0x01 ; header version |
dd START ; pointer to program start |
dd IM_END ; size of image |
dd I_END ; reguired amount of memory |
dd stack_area ; stack pointer (esp) |
dd boot_param ; boot parameters |
dd 0x0 ; path |
;------------------------------------------------------------------------------- |
db 'MENUET01' |
dd 1 |
dd START |
dd IM_END |
dd I_END |
dd stack_area |
dd boot_param |
dd 0 |
|
include '../../../macros.inc' |
;------------------------------------------------------------------------------- |
LLL equ (56+3) |
BBB equ 25 |
;------------------------------------------------------------------------------- |
apply_all: |
call _pci_acc ;12 |
call _syslang ;5 |
call _keyboard ;2 |
call _speaker_mute |
ret |
;------------------------------------------------------------------------------- |
apply_all_and_exit: |
mcall 70,read_fileinfo |
call apply_all |
jmp close |
;------------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
set_language_and_exit: |
mcall 26,2,9 |
cmp eax,1 |
je russian |
|
xor eax,eax |
;-------------------------------------- |
set_lang_now: |
@@: |
mov [keyboard],eax |
call _keyboard |
jmp close |
;-------------------------------------- |
russian: |
mov eax,3 |
jmp set_lang_now |
;------------------------------------------------------------------------------- |
jmp @b |
;--------------------------------------------------------------- |
set_syslanguage_and_exit: |
mcall 26,5 |
cmp eax,6 |
jne temp |
jne @f |
xor eax,eax |
;-------------------------------------- |
temp: |
@@: |
inc eax |
mov [syslang],eax |
call _syslang |
jmp close |
;------------------------------------------------------------------------------- |
get_setup_values: |
mcall 26,2,9 |
dec eax |
mov [keyboard],eax |
|
mcall 26,5 |
mov [syslang],eax |
|
mcall 26,11 |
mov [lba_read],eax |
|
mcall 26,12 |
mov [pci_acc],eax |
|
;--------------------------------------------------------------- |
apply_all_and_exit: |
mov byte[fileinfo],0 |
mcall 70,fileinfo |
call apply_all |
jmp close |
;--------------------------------------------------------------- |
apply_all: |
call fontApply |
call _syslang |
call _lba_read |
call _pci_acc |
call _speaker_mute |
call _keyboard |
ret |
;--------------------------------------------------------------- |
_syslang: |
mcall 21,5,[syslang] |
jmp loadtxt |
;--------------------------------------------------------------- |
_lba_read: |
mcall 21,11,[lba_read] |
ret |
;--------------------------------------------------------------- |
_pci_acc: |
mcall 21,12,[pci_acc] |
ret |
;--------------------------------------------------------------- |
fontApply: |
mcall 48,10,[fontSmoothing] |
ret |
;--------------------------------------------------------------- |
_speaker_mute: |
mcall 18,8,1 |
mov [speaker_mute],eax |
cmp [speaker_mute],eax |
je @f |
inc ecx |
mcall 18 |
@@: |
ret |
;------------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
_keyboard: |
mov ebp,[keyboard] |
mov edx,[ebp*4+keymapTab] |
mcall 21,2,1 |
inc ecx |
mov edx,[ebp*4+shiftKeymapTab] |
mcall 21 |
inc ecx |
mov edx,[ebp*4+altKeymapTab] |
mcall 21 |
mov edx,ebp |
inc edx |
mov cl, 9 |
mcall 21 |
ret |
;--------------------------------------------------------------- |
START: |
mov eax,boot_param |
cmp [eax],dword 'SLAN' |
117,488 → 107,213 |
|
cmp [eax],dword 'BOOT' |
je apply_all_and_exit |
|
call get_setup_values |
call loadtxt |
call draw_infotext |
;------------------------------------------------------------------------------- |
red: |
call draw_window |
;------------------------------------------------------------------------------- |
still: |
sysevent: |
mcall 23,8 ; wait here for event with timeout |
cmp eax,1 |
jz red |
|
cmp eax,2 |
jz key |
|
cmp eax,3 |
jz button |
|
jmp still |
;------------------------------------------------------------------------------- |
key: |
mcall 2 |
jmp still |
;------------------------------------------------------------------------------- |
button: |
mcall 17 |
cmp ah,99 |
jne nosaveall |
mcall 70,save_fileinfo |
jmp still |
;-------------------------------------- |
nosaveall: |
cmp ah,100 |
jne no_apply_all |
call apply_all |
jmp still |
;-------------------------------------- |
no_apply_all: |
cmp ah,1 ; CLOSE APPLICATION |
jne no_close |
;-------------------------------------- |
close: |
or eax,-1 |
mcall |
;-------------------------------------- |
no_close: |
cmp ah,4 ; SET KEYBOARD |
jnz nokm |
mov eax,[keyboard] |
test eax,eax |
je downuplbl |
; get current settings |
mcall 26,2,9 |
dec eax |
jmp nodownup |
;-------------------------------------- |
downuplbl: |
mov eax,7 |
;-------------------------------------- |
nodownup: |
mov [keyboard],eax |
call draw_infotext |
;-------------------------------------- |
nokm: |
cmp ah,5 |
jnz nokp |
mov eax,[keyboard] |
cmp eax,7 |
je updownlbl |
inc eax |
jmp noupdown |
;-------------------------------------- |
updownlbl: |
xor eax,eax |
;-------------------------------------- |
noupdown: |
mov [keyboard],eax |
call draw_infotext |
;-------------------------------------- |
nokp: |
cmp ah,92 ; SET LBA READ |
jne no_lba_d |
;-------------------------------------- |
slbal: |
btc [lba_read],0 |
call draw_infotext |
jmp still |
;-------------------------------------- |
no_lba_d: |
cmp ah,93 |
jne no_lba_i |
jmp slbal |
;-------------------------------------- |
no_lba_i: |
cmp ah,91 |
jne no_set_lba_read |
call _lba_read |
jmp still |
;-------------------------------------- |
no_set_lba_read: |
cmp ah,102 ; SET PCI ACCESS |
jne no_pci_d |
;-------------------------------------- |
pcip: |
btc [pci_acc],0 |
call draw_infotext |
jmp still |
;-------------------------------------- |
no_pci_d: |
cmp ah,103 |
jne no_pci_i |
jmp pcip |
;-------------------------------------- |
no_pci_i: |
cmp ah,101 |
jne no_set_pci_acc |
call _pci_acc |
jmp still |
;-------------------------------------- |
no_set_pci_acc: |
cmp ah,42 ; SET SYSTEM LANGUAGE BASE |
jnz nosysm |
mov eax,[syslang] |
dec eax |
jz still |
|
mcall 26,5 |
mov [syslang],eax |
call draw_infotext |
;-------------------------------------- |
nosysm: |
cmp ah,43 |
jnz nosysp |
mov eax,[syslang] |
cmp eax,6 |
je nosysp |
inc eax |
mov [syslang],eax |
call draw_infotext |
;-------------------------------------- |
nosysp: |
cmp ah,41 |
jnz nosyss |
call _syslang |
call cleantxt |
call loadtxt |
call draw_window |
;-------------------------------------- |
nosyss: |
;-------------------------------------- |
speakermute: |
cmp ah,152 ; SET SPEAKER |
jne no_speaker_d |
;-------------------------------------- |
speaker_p: |
btc [speaker_mute],0 |
call draw_infotext |
jmp still |
;-------------------------------------- |
no_speaker_d: |
cmp ah,153 |
jne no_speaker_i |
jmp speaker_p |
;-------------------------------------- |
no_speaker_i: |
cmp ah,151 |
jne .noapply |
call _speaker_mute |
jmp still |
;-------------------------------------- |
.noapply: |
cmp ah,3 ; SET KEYMAP |
jne still |
call _keyboard |
jmp still |
;------------------------------------------------------------------------------- |
_keyboard: |
cmp [keyboard],0 ; english |
jnz nosetkeyle |
|
mcall 21,2,1,en_keymap |
mcall 26,11 |
mov [lba_read],eax |
|
inc ecx |
mcall 21,,,en_keymap_shift |
mcall 26,12 |
mov [pci_acc],eax |
|
mcall 21,,9,1 |
call alt_gen |
;-------------------------------------- |
nosetkeyle: |
cmp [keyboard],1 ; finnish |
jnz nosetkeylfi |
mcall 18,8,1 |
mov [speaker_mute],eax |
|
mcall 21,2,1,fi_keymap |
mcall 48,9 |
mov [fontSmoothing],eax |
|
inc ecx |
mcall 21,,,fi_keymap_shift |
call loadtxt |
|
mcall 21,,9,2 |
call alt_gen |
;-------------------------------------- |
nosetkeylfi: |
cmp [keyboard],2 ; german |
jnz nosetkeylge |
draw_infotext: |
mov eax,[syslang] |
mov edi,[text] |
lea esi,[eax*8+langs-8] |
add edi,28 |
movsd |
movsd |
|
mcall 21,2,1,ge_keymap |
mov eax,[keyboard] |
add edi,LLL-8 |
lea esi,[eax*8+langs] |
movsd |
movsd |
add edi,LLL-8 |
|
inc ecx |
mcall 21,,,ge_keymap_shift |
mov eax,[lba_read] |
call onoff |
mov [edi],ebx |
|
mcall 21,,9,3 |
call alt_gen |
;-------------------------------------- |
nosetkeylge: |
cmp [keyboard],3 ; russian |
jnz nosetkeylru |
mov eax,[pci_acc] |
call onoff |
mov [edi+LLL],ebx |
|
mcall 21,2,1,ru_keymap |
mov eax,[speaker_mute] |
call onoff |
mov [edi+LLL*2],ebx |
|
inc ecx |
mcall 21,,,ru_keymap_shift |
mov ebx,'SUBP' |
mov ecx,'IXEL' |
cmp [fontSmoothing],2 |
jz @f |
mov eax,[fontSmoothing] |
call onoff |
mov ecx,' ' |
@@: |
mov [edi+LLL*3],ebx |
mov [edi+LLL*3+4],ecx |
|
mcall 21,,9,4 |
call alt_gen |
;-------------------------------------- |
nosetkeylru: |
cmp [keyboard],4 ;french |
jnz nosetkeylfr |
|
mcall 21,2,1,fr_keymap |
|
inc ecx |
mcall 21,,,fr_keymap_shift |
|
inc ecx |
mcall 21,,,fr_keymap_alt_gr |
|
mcall 21,,9,5 |
;-------------------------------------- |
nosetkeylfr: |
cmp [keyboard],5 ; estonian |
jnz nosetkeylet |
|
mcall 21,2,1,et_keymap |
|
inc ecx |
mcall 21,,,et_keymap_shift |
|
mcall 21,,9,6 |
call alt_gen |
;-------------------------------------- |
nosetkeylet: |
cmp [keyboard],6 ;belgian |
jnz nosetkeylit |
|
mcall 21,2,1,be_keymap |
|
inc ecx |
mcall 21,,,be_keymap_shift |
|
inc ecx |
mcall 21,,,be_keymap_alt_gr |
|
mcall 21,,9,7 |
;-------------------------------------- |
nosetkeylit: |
cmp [keyboard],7 ;italian |
jnz nosetkeylbe |
|
mcall 21,2,1,it_keymap |
|
inc ecx |
mcall 21,,,it_keymap_shift |
|
inc ecx |
mcall 21,,,it_keymap_alt_gr |
|
mcall 21,,9,8 |
;-------------------------------------- |
|
nosetkeylbe: |
ret |
;------------------------------------------------------------------------------- |
alt_gen: |
mcall 21,,3,alt_general |
ret |
;------------------------------------------------------------------------------- |
draw_buttons: |
pusha |
shl ecx,16 |
add ecx,12 |
mcall 8,<(350-57),(46+BBB)> |
|
draw_window: |
mcall 12,1 |
mov ecx,50*65536+32*(4+stringsAmount) |
mcall 0,<50,700>,,0xB4111199,0,title |
; Main buttons |
mov eax,8 |
mov ecx,6*65536+26 |
mov edx,4 |
mov esi,0x5580c0 |
mov ebp,stringsAmount |
@@: |
mcall ,<490,24> |
inc edx |
mcall ,<(350-85),9> |
|
mcall ,<526,24> |
inc edx |
mcall ,<(350-73),9> |
|
popa |
ret |
;------------------------------------------------------------------------------- |
; ******************************************** |
; ******* WINDOW DEFINITIONS AND DRAW ******* |
; ******************************************** |
draw_window: |
pusha |
mcall 12,1 |
|
mcall 0,<40,(355+BBB)>,<40,(10*16)>,0xB4111199,0,title ; DRAW WINDOW |
|
mcall 9,procinfo,-1 |
|
mov eax,[ebx+70] ;status of window |
test eax,100b |
jne .end |
|
mcall 8,<(350-85),100>,<(5+16*6),12>,100,0x005588dd ; APPLY ALL |
|
add ecx,16*65536 ; SAVE ALL |
mcall ,<562,120> |
inc edx |
add ecx,32*65536 |
dec ebp |
jnz @b |
; APPLY ALL |
add ecx,32*65536 |
mcall ,<514,168>,,3,0x005588dd |
; SAVE ALL |
add ecx,32*65536 |
dec edx |
mcall |
|
mov esi,0x5580c0 |
|
mov edx,41 |
mov ecx,5+0*8 |
call draw_buttons |
|
mov edx,3 |
mov ecx,5+2*8 |
call draw_buttons |
|
mov edx,91 |
mov ecx,5+4*8 |
call draw_buttons |
|
mov edx,101 |
mov ecx,5+6*8 |
call draw_buttons |
|
mov edx,151 |
mov ecx,5+8*8 |
call draw_buttons |
|
call draw_infotext |
.end: |
mcall 12,2 |
popa |
ret |
;------------------------------------------------------------------------------- |
draw_infotext: |
pusha |
mov eax,[keyboard] ; KEYBOARD |
test eax,eax |
jnz noen |
mov [text00+LLL*1+28],dword 'ENGL' |
mov [text00+LLL*1+32],dword 'ISH ' |
;-------------------------------------- |
noen: |
cmp eax,1 |
jnz nofi |
mov [text00+LLL*1+28],dword 'FINN' |
mov [text00+LLL*1+32],dword 'ISH ' |
;-------------------------------------- |
nofi: |
cmp eax,2 |
jnz noge |
mov [text00+LLL*1+28],dword 'GERM' |
mov [text00+LLL*1+32],dword 'AN ' |
;-------------------------------------- |
noge: |
cmp eax,3 |
jnz nogr |
mov [text00+LLL*1+28],dword 'RUSS' |
mov [text00+LLL*1+32],dword 'IAN ' |
;-------------------------------------- |
nogr: |
cmp eax,4 |
jnz nofr |
mov [text00+LLL*1+28],dword 'FREN' |
mov [text00+LLL*1+32],dword 'CH ' |
;-------------------------------------- |
nofr: |
cmp eax,5 |
jnz noet |
mov [text00+LLL*1+28],dword 'EEST' |
mov [text00+LLL*1+32],dword 'I ' |
;-------------------------------------- |
noet: |
cmp eax,6 |
jnz nobe |
mov [text00+LLL*1+28],dword 'BELG' |
mov [text00+LLL*1+32],dword 'IAN ' |
;-------------------------------------- |
nobe: |
cmp eax,7 |
jnz noit |
mov [text00+LLL*1+28],dword 'ITAL' |
mov [text00+LLL*1+32],dword 'IAN' |
;-------------------------------------- |
noit: |
mov eax,[syslang] ; SYSTEM LANGUAGE |
dec eax |
test eax,eax |
jnz noen5 |
mov [text00+LLL*0+28],dword 'ENGL' |
mov [text00+LLL*0+32],dword 'ISH ' |
;-------------------------------------- |
noen5: |
cmp eax,1 |
jnz nofi5 |
mov [text00+LLL*0+28],dword 'FINN' |
mov [text00+LLL*0+32],dword 'ISH ' |
;-------------------------------------- |
nofi5: |
cmp eax,2 |
jnz noge5 |
mov [text00+LLL*0+28],dword 'GERM' |
mov [text00+LLL*0+32],dword 'AN ' |
;-------------------------------------- |
noge5: |
cmp eax,3 |
jnz nogr5 |
mov [text00+LLL*0+28],dword 'RUSS' |
mov [text00+LLL*0+32],dword 'IAN ' |
;-------------------------------------- |
nogr5: |
cmp eax,4 |
jne nofr5 |
mov [text00+LLL*0+28],dword 'FREN' |
mov [text00+LLL*0+32],dword 'CH ' |
;-------------------------------------- |
nofr5: |
cmp eax,5 |
jne noet5 |
mov [text00+LLL*0+28],dword 'EEST' |
mov [text00+LLL*0+32],dword 'I ' |
;-------------------------------------- |
noet5: |
mov eax,[lba_read] |
call onoff ; LBA READ |
mov [text00+LLL*2+28],ebx |
|
mov eax,[pci_acc] |
call onoff ; PCI ACCESS |
mov [text00+LLL*3+28],ebx |
|
mov eax,[speaker_mute] |
call onoff ; SPEAKER |
mov [text00+LLL*4+28],ebx |
|
call text_out |
|
popa |
ret |
;------------------------------------------------------------------------------- |
text_out: |
mcall 13,<165,85>,<0,(14*8)>,0x80111199 ;0x80111199-19 |
|
mov edx,text00 |
mov ebx,3*65536+7 |
; text |
mov eax,4 |
mov ecx,0xffffff |
mov ebx,6*65536+11 |
mov ecx,1ffffffh |
mov edx,[text] |
mov esi,LLL |
mov ebp,text1_strings |
;-------------------------------------- |
mov ebp,stringsAmount |
newline: |
mcall |
add ebx,8+8 |
add ebx,32 |
add edx,esi |
dec ebp |
jnz newline |
|
mov ebp,text2_strings |
add ebx,8+8 |
;-------------------------------------- |
mov ebp,2 |
add ebx,32 |
@@: |
mcall |
add ebx,8+8 |
add ebx,32 |
add edx,esi |
dec ebp |
jnz @b |
|
mcall 12,2 |
|
still: |
mcall 10 |
cmp eax,1 |
jz draw_window |
|
cmp eax,2 |
jz key |
|
cmp eax,3 |
jz button |
|
jmp still |
;--------------------------------------------------------------- |
key: |
mcall 2 |
jmp still |
;--------------------------------------------------------------- |
button: |
mcall 17 |
shr eax,8 |
call dword[eax*4+buttonTab-4] |
jmp draw_infotext |
close: |
pop eax |
mcall -1 |
saveAll: |
mov byte[fileinfo],2 |
mcall 70,fileinfo |
ret |
;------------------------------------------------------------------------------- |
language1: |
dec [syslang] |
jnz @f |
mov [syslang],6 |
ret |
language2: |
inc [syslang] |
cmp [syslang],7 |
jnz @f |
mov [syslang],1 |
ret |
layout1: |
dec [keyboard] |
jns @f |
mov [keyboard],7 |
ret |
layout2: |
inc [keyboard] |
cmp [keyboard],8 |
jnz @f |
mov [keyboard],0 |
ret |
LBA1: |
btr [lba_read],0 |
ret |
LBA2: |
bts [lba_read],0 |
ret |
PCI1: |
btr [pci_acc],0 |
ret |
PCI2: |
bts [pci_acc],0 |
ret |
SPEAKER1: |
btr [speaker_mute],0 |
ret |
SPEAKER2: |
bts [speaker_mute],0 |
ret |
font1: |
cmp [fontSmoothing],0 |
jz @f |
dec [fontSmoothing] |
ret |
font2: |
cmp [fontSmoothing],2 |
jz @f |
inc [fontSmoothing] |
@@: |
ret |
;--------------------------------------------------------------- |
loadtxt: |
cmp [syslang],4 |
jne @f |
mov [text],textrus |
ret |
@@: |
cmp [syslang],6 |
jne @f |
mov [text],textet |
ret |
@@: |
mov [text],texteng |
ret |
;--------------------------------------------------------------- |
onoff: |
cmp [syslang],4 |
jne norus1 |
615,149 → 330,128 |
je exitsub |
mov ebx,'VÄL.' |
ret |
;-------------------------------------- |
noet1: |
mov ebx,'ON ' |
cmp eax,1 |
je exitsub |
mov ebx,'OFF ' |
;-------------------------------------- |
exitsub: |
ret |
;------------------------------------------------------------------------------- |
_lba_read: |
mcall 21,11,[lba_read] |
ret |
;------------------------------------------------------------------------------- |
_pci_acc: |
mcall 21,12,[pci_acc] |
ret |
;------------------------------------------------------------------------------- |
_syslang: |
mcall 21,5,[syslang] |
ret |
;------------------------------------------------------------------------------- |
_speaker_mute: |
mcall 18,8,1 |
cmp [speaker_mute],eax |
je @f |
inc ecx |
mcall 18 |
;-------------------------------------- |
@@: |
ret |
;------------------------------------------------------------------------------- |
loadtxt: |
mov edi,text00 |
mov ecx,LLL*(text1_strings + text2_strings)/4+1 |
cmp [syslang],4 |
jne loadet |
;--------------------------------------------------------------- |
align 4 |
buttonTab: ; button handler pointers: -,+,apply |
dd close |
dd saveAll |
dd apply_all |
dd language1 |
dd language2 |
dd _syslang |
dd layout1 |
dd layout2 |
dd _keyboard |
dd LBA1 |
dd LBA2 |
dd _lba_read |
dd PCI1 |
dd PCI2 |
dd _pci_acc |
dd SPEAKER1 |
dd SPEAKER2 |
dd _speaker_mute |
dd font1 |
dd font2 |
dd fontApply |
keymapTab: |
dd en_keymap |
dd fi_keymap |
dd ge_keymap |
dd ru_keymap |
dd fr_keymap |
dd et_keymap |
dd be_keymap |
dd it_keymap |
shiftKeymapTab: |
dd en_keymap_shift |
dd fi_keymap_shift |
dd ge_keymap_shift |
dd ru_keymap_shift |
dd fr_keymap_shift |
dd et_keymap_shift |
dd be_keymap_shift |
dd it_keymap_shift |
altKeymapTab: |
dd alt_general |
dd alt_general |
dd alt_general |
dd alt_general |
dd fr_keymap_alt_gr |
dd alt_general |
dd be_keymap_alt_gr |
dd it_keymap_alt_gr |
|
mov esi,textrus |
jmp sload |
loadet: |
mov edi,text00 |
mov ecx,LLL*(text1_strings + text2_strings)/4+1 |
cmp [syslang],6 |
jne norus |
mov esi,textet |
jmp sload |
;-------------------------------------- |
norus: |
mov esi,texteng |
;-------------------------------------- |
sload: |
rep movsd |
ret |
;------------------------------------------------------------------------------- |
cleantxt: |
xor eax,eax |
mov ecx,LLL*(text1_strings + text2_strings)/4 |
cld |
mov edi,text00 |
rep stosd |
mov [text00+1711],byte 'x' |
ret |
;------------------------------------------------------------------------------- |
; DATA AREA |
count: db 0x0 |
blinkpar: dd 0x0 |
time: dw 0x0 |
date: dd 0x0 |
;------------------------------------------------------------------------------- |
setup.dat: ; file structure |
syslang dd 0 |
keyboard dd 0 |
lba_read dd 0 |
pci_acc dd 0 |
speaker_mute dd 0 |
fontSmoothing dd 0 |
|
fileinfo: |
dd 0 |
dd 0 |
dd 0 |
dd 4*6 |
dd setup.dat |
db '/SYS/SETTINGS/SETUP.DAT',0 |
|
title db 'System settings',0 |
hex db '0123456789ABCDEF' |
|
LLL = 56 |
stringsAmount = 6 |
|
align 4 |
text dd 0 |
langs: |
db 'ENGLISH FINNISH GERMAN RUSSIAN FRENCH ESTONIANBELGIAN ITALIAN ' |
|
textrus: |
db '§ëª á¨á⥬ë : ENGLISH - + ਬ¥¨âì' |
db ' ᪫ ¤ª ª« ¢¨ âãàë : ENGLISH - + ਬ¥¨âì' |
db 'ª«îç¨âì LBA : OFF - + ਬ¥¨âì' |
db '®áâ㯠ª 訥 PCI : OFF - + ਬ¥¨âì' |
db '몫îç¨âì SPEAKER : OFF - + ਬ¥¨âì' |
db '§ëª á¨á⥬ë : < > ਬ¥¨âì' |
db ' ᪫ ¤ª ª« ¢¨ âãàë : < > ਬ¥¨âì' |
db 'ª«îç¨âì LBA : - + ਬ¥¨âì' |
db '®áâ㯠ª 訥 PCI : - + ਬ¥¨âì' |
db '몫îç¨âì SPEAKER : - + ਬ¥¨âì' |
db '£« ¦¨¢ ¨¥ èà¨ä⮢ : - + ਬ¥¨âì' |
|
db '
: ਬ¥¨âì ¢á¥ ' |
db '
®åà ¨âì ¢á¥ ' |
;------------------------------------------------------------------------------- |
|
texteng: |
db 'System language : ENGLISH - + Apply ' |
db 'Keyboard layout : ENGLISH - + Apply ' |
db 'LBA read enabled : OFF - + Apply ' |
db 'PCI access for appl. : OFF - + Apply ' |
db 'SPEAKER disabled : OFF - + Apply ' |
text1_strings = 5 |
db 'System language : < > Apply ' |
db 'Keyboard layout : < > Apply ' |
db 'LBA read enabled : - + Apply ' |
db 'PCI access for appl. : - + Apply ' |
db 'SPEAKER disabled : - + Apply ' |
db 'Font smoothing : - + Apply ' |
|
db 'NOTE: Apply all ' |
db 'SAVE YOUR SETTINGS BEFORE QUITING KOLIBRI Save all ' |
|
textet: |
db 'Süsteemi keel : ENGLISH - + Kinnita ' |
db 'Klaviatuuri paigutus : ENGLISH - + Kinnita ' |
db 'LBA lugemine lubatud : VÄL. - + Kinnita ' |
db 'PCI juurdepääs programm. : VÄL. - + Kinnita ' |
db 'SPEAKER disabled : VÄL. - + Kinnita ' |
db 'Süsteemi keel : < > Kinnita ' |
db 'Klaviatuuri paigutus : < > Kinnita ' |
db 'LBA lugemine lubatud : - + Kinnita ' |
db 'PCI juurdepääs programm. : - + Kinnita ' |
db 'SPEAKER disabled : - + Kinnita ' |
db 'Font smoothing : - + Kinnita ' |
|
db 'MÄRKUS: Kinnita kõik' |
db 'SALVESTA SEADED ENNE KOLIBRIST VÄLJUMIST Salvesta kõik' |
text2_strings = 2 |
;------------------------------------------------------------------------------- |
title db 'System setup',0 |
|
hex db '0123456789ABCDEF' |
;------------------------------------------------------------------------------- |
include 'keymaps.inc' |
;------------------------------------------------------------------------------- |
read_fileinfo: |
dd 0 |
dd 0 |
dd 0 |
dd 28 |
dd keyboard |
db 0 |
dd file_name |
;------------------------------------------------------------------------------- |
save_fileinfo: |
dd 2 |
dd 0 |
dd 0 |
dd 28 |
dd keyboard |
file_name: db '/SYS/SETTINGS/SETUP.DAT',0 |
;------------------------------------------------------------------------------- |
keyboard dd 0x0 |
syslang dd 0x4 ; 4 - rus |
lba_read dd 0x1 |
pci_acc dd 0x1 |
speaker_mute dd 0 ; 0 - enable, 1 - disable |
;----------------------------------------------------------------------------- |
IM_END: |
;----------------------------------------------------------------------------- |
align 4 |
text00: |
rb LLL*(text1_strings + text2_strings)+4 |
;----------------------------------------------------------------------------- |
align 4 |
boot_param: |
procinfo: |
rb 1024 |
;----------------------------------------------------------------------------- |
align 4 |
rb 0x1000 |
stack_area: |
;----------------------------------------------------------------------------- |
I_END: |
;------------------------------------------------------------------------------- |
I_END: |