Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 3520 → Rev 3519

/kernel/trunk/core/taskman.inc
550,7 → 550,7
 
xor edx, edx
push edx
mov eax, 0x1
mov eax, 0x2
mov ebx, [pg_dir]
.loop:
;eax = current slot of process
/kernel/trunk/core/dll.inc
142,11 → 142,7
cmp [edi+SRV.size], sizeof.SRV
jne .fail
 
; stdcall [edi+SRV.srv_proc], esi
mov eax, [edi+SRV.srv_proc]
test eax, eax
jz .fail
stdcall eax, esi
stdcall [edi+SRV.srv_proc], esi
ret
.fail:
xor eax, eax
178,11 → 174,7
cmp [eax+SRV.size], sizeof.SRV
jne .fail
 
; stdcall [eax+SRV.srv_proc], ecx
mov eax, [eax+SRV.srv_proc]
test eax, eax
jz .fail
stdcall eax, ecx
stdcall [eax+SRV.srv_proc], ecx
ret
.fail:
or eax, -1
221,31 → 213,9
ret
endp
 
reg_service:
xor eax, eax
mov ecx, [esp+8]
jecxz .nothing
push sizeof.SRV
push ecx
pushd [esp+12]
call reg_service_ex
.nothing:
ret 8
align 4
proc reg_service stdcall, name:dword, handler:dword
 
reg_usb_driver:
push sizeof.USBSRV
pushd [esp+12]
pushd [esp+12]
call reg_service_ex
test eax, eax
jz .nothing
mov ecx, [esp+12]
mov [eax+USBSRV.usb_func], ecx
.nothing:
ret 12
 
proc reg_service_ex stdcall, name:dword, handler:dword, srvsize:dword
 
push ebx
 
xor eax, eax
253,10 → 223,10
cmp [name], eax
je .fail
 
; cmp [handler], eax
; je .fail
cmp [handler], eax
je .fail
 
mov eax, [srvsize]
mov eax, sizeof.SRV
call malloc
test eax, eax
jz .fail
/kernel/trunk/kernel.asm
805,8 → 805,6
 
stdcall load_driver, szVidintel
 
call usb_init
 
; SET PRELIMINARY WINDOW STACK AND POSITIONS
 
mov esi, boot_windefs
/kernel/trunk/const.inc
634,17 → 634,6
srv_proc_ex dd ? ;+0x2C ;kernel mode service handler
ends
 
struct USBSRV
srv SRV
usb_func dd ?
ends
 
struct USBFUNC
strucsize dd ?
add_device dd ?
device_disconnect dd ?
ends
 
DRV_ENTRY equ 1
DRV_EXIT equ -1
 
/kernel/trunk/bus/usb/ehci.inc
File deleted
Property changes:
Deleted: svn:eol-style
-native
\ No newline at end of property
/kernel/trunk/bus/usb/uhci.inc
File deleted
Property changes:
Deleted: svn:eol-style
-native
\ No newline at end of property
/kernel/trunk/bus/usb/memory.inc
File deleted
Property changes:
Deleted: svn:eol-style
-native
\ No newline at end of property
/kernel/trunk/bus/usb/pipe.inc
File deleted
Property changes:
Deleted: svn:eol-style
-native
\ No newline at end of property
/kernel/trunk/bus/usb/hub.inc
File deleted
Property changes:
Deleted: svn:eol-style
-native
\ No newline at end of property
/kernel/trunk/bus/usb/scheduler.inc
File deleted
Property changes:
Deleted: svn:eol-style
-native
\ No newline at end of property
/kernel/trunk/bus/usb/protocol.inc
File deleted
Property changes:
Deleted: svn:eol-style
-native
\ No newline at end of property
/kernel/trunk/bus/usb/ohci.inc
File deleted
Property changes:
Deleted: svn:eol-style
-native
\ No newline at end of property
/kernel/trunk/bus/usb/hccommon.inc
File deleted
Property changes:
Deleted: svn:eol-style
-native
\ No newline at end of property
/kernel/trunk/bus/usb/init.inc
File deleted
Property changes:
Deleted: svn:eol-style
-native
\ No newline at end of property
/kernel/trunk/docs/usbapi.txt
File deleted
/kernel/trunk/drivers/usbhid.asm
File deleted
Property changes:
Deleted: svn:eol-style
-native
\ No newline at end of property
/kernel/trunk/drivers/usbstor.asm
File deleted
Property changes:
Deleted: svn:eol-style
-native
\ No newline at end of property
/kernel/trunk/drivers/fdo.inc
File deleted
Property changes:
Deleted: svn:eol-style
-native
\ No newline at end of property
/kernel/trunk/drivers/imports.inc
97,14 → 97,6
GetDisplay,\
SetScreen,\
\
RegUSBDriver,\
USBOpenPipe,\
USBNormalTransferAsync,\
USBControlTransferAsync,\
\
DiskAdd,\
DiskMediaChanged,\
DiskDel,\
\
TimerHS,\
CancelTimerHS
DiskDel
/kernel/trunk/kernel32.inc
220,9 → 220,6
 
include "bus/pci/pci32.inc"
 
; USB functions
include "bus/usb/init.inc"
 
; Floppy drive controller
 
include "blkdev/fdc.inc"
/kernel/trunk/detect/biosdisk.inc
7,7 → 7,6
 
; Detect all BIOS hard drives.
; diamond, 2008
; Do not include USB mass storages. CleverMouse, 2013
 
xor cx, cx
mov es, cx
25,40 → 24,21
test ah, ah
jz bddc
inc cx
; We are going to call int 13h/func 48h, Extended get drive parameters.
; The latest version of the EDD specification is 3.0.
; There are two slightly incompatible variants for version 3.0;
; original one from Phoenix in 1998, see e.g.
; http://www.t10.org/t13/technical/d98120r0.pdf, and T13 draft,
; http://www.t13.org/documents/UploadedDocuments/docs2004/d1572r3-EDD3.pdf
; T13 draft addresses more possible buses, so it gives additional 8 bytes
; for device path.
; Most BIOSes follow Phoenix, but T13 version is also known to be used
; (e.g. systems based on AMD Geode).
; Fortunately, there is an in/out length field, so
; it is easy to tell what variant was selected by the BIOS:
; Phoenix-3.0 has 42h bytes, T13-3.0 has 4Ah bytes.
; Note that 2.0 has 1Eh bytes, 1.1 has 1Ah bytes; both variants of 3.0 have
; the same structure for first 1Eh bytes, compatible with previous versions.
; Note also that difference between Phoenix-3.0 and T13-3.0 starts near the
; end of the structure, so the current code doesn't even need to distinguish.
; It needs, however, give at least 4Ah bytes as input and expect that BIOS
; could return 42h bytes as output while still giving all the information.
mov ah, 48h
push ds
push es
pop ds
mov si, 0xA000
mov word [si], 4Ah
mov word [si], 1Eh
mov ah, 48h
int 13h
pop ds
jc bddc2
inc byte [es:0x907F]
cmp word [es:si], 1Eh
jb .noide
jb bddl
cmp word [es:si+1Ah], 0xFFFF
jz .noide
inc byte [es:0x907F]
jz bddl
mov al, dl
stosb
push ds
81,15 → 61,7
stosw
pop ds
jmp bddc2
.noide:
cmp word [es:si], 42h
jb .nousb
cmp word [es:si+28h], 'US'
jnz .nousb
cmp byte [es:si+2Ah], 'B'
jz bddc2
.nousb:
inc byte [es:0x907F]
bddl:
mov al, dl
stosb
xor ax, ax