Commit Graph

122 Commits

Author SHA1 Message Date
Rus
66658538e4 Reorganization interrupts handlers part 2.
(I hope, I didn't something stupid.)
Fixed bug in get_pid function.
Added copyright in com mouse driver.
Fixed incorrect comment inscription in boot\ru.inc .

git-svn-id: svn://kolibrios.org@774 a494cfbc-eb01-0410-851d-a64ba20cac60
2008-03-18 17:19:08 +00:00
Rus
07985443ea Com mouse cod moved to driver.
Begin of reorganization interrupts handlers Part 1.
Some dead code deleted.

git-svn-id: svn://kolibrios.org@769 a494cfbc-eb01-0410-851d-a64ba20cac60
2008-03-13 20:23:15 +00:00
Rus
064055e18f New organization of irq buffer, now its ring buffer. Its faster about 4.5 times.
*Warning! its debug version which can have many bugs, because I cannot test it all. I tested byte's receive on little size of data. If you can test it on big data size, and word's receive - do it! :)

git-svn-id: svn://kolibrios.org@759 a494cfbc-eb01-0410-851d-a64ba20cac60
2008-02-27 18:05:09 +00:00
Sergey Semyonov (Serge)
2c7785b277 PE loader: error checking
git-svn-id: svn://kolibrios.org@740 a494cfbc-eb01-0410-851d-a64ba20cac60
2008-02-15 16:15:47 +00:00
Evgeny Grechnikov (Diamond)
ebeed28881 * V86 manager
* support of drives visible by BIOS through V86 mode
* shutdown fixes
* background redraw fixes
* when booting from CD/DVD, load all floppy by tracks, not only used sectors

git-svn-id: svn://kolibrios.org@709 a494cfbc-eb01-0410-851d-a64ba20cac60
2008-02-04 15:31:59 +00:00
Evgeny Grechnikov (Diamond)
e02112ea70 deleting cross registers in system calls, part 2
git-svn-id: svn://kolibrios.org@684 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-12-17 11:04:07 +00:00
Iliya Mihailov (Ghost)
8eaf6e2fcb * code clearing
* bug fix in "show_error_parameters", now registers value correctly show


git-svn-id: svn://kolibrios.org@658 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-10-19 15:42:11 +00:00
Mihail Semenyako (mike.dld)
a30801ba4b Fix in DEBUGF (incorrect output of eax..edi with %x)
New show_error_parameters (core/sys32.inc) from Ghost

git-svn-id: svn://kolibrios.org@656 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-10-19 11:04:39 +00:00
Mihail Semenyako (mike.dld)
92f657f440 Revision numbering fix
git-svn-id: svn://kolibrios.org@593 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-07-27 13:52:03 +00:00
Sergey Semyonov (Serge)
5ddaca390b sound.asm: patch BIOS bug for ICH0
add USE_IRQ_REMAP conditional directive

git-svn-id: svn://kolibrios.org@566 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-07-06 08:12:11 +00:00
Evgeny Grechnikov (Diamond)
925adfd15a changed background handling
git-svn-id: svn://kolibrios.org@546 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-06-18 16:39:42 +00:00
Evgeny Grechnikov (Diamond)
4f326f77c6 * efficient handling of file names substitution
* current directory support; new sysfunction 30
* fixed bug in load_file with files of size divisible by page size

git-svn-id: svn://kolibrios.org@521 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-05-24 11:27:05 +00:00
Mihail Semenyako (mike.dld)
56299dc76d Fixed FDO (seems like bug in FASM to me)
git-svn-id: svn://kolibrios.org@506 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-05-17 19:54:49 +00:00
kastigar
510a108c5d 1)ps2 mouse driver(removed from kernel)
2)new 2 modes for ps2-mouse (scrolling mouse and 5-button mouse)
3) added function 37.7 for mouse scrolling data

git-svn-id: svn://kolibrios.org@479 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-05-08 11:32:58 +00:00
Evgeny Grechnikov (Diamond)
441fcf143a * Unified COM1/COM2 mice handling.
* Corrected COM mouse detection.
* Mouse cursor can now be at right and bottom screen sides.
* Normal handling of "desktop background redraw" event.
  (Background redraw is faster now.)
* Fixed error in stretch background function for VESA 2.0.

git-svn-id: svn://kolibrios.org@473 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-05-02 12:06:10 +00:00
Sergey Semyonov (Serge)
fef69aab20 merge flat kernel
git-svn-id: svn://kolibrios.org@465 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-04-18 06:37:14 +00:00
Evgeny Grechnikov (Diamond)
c58d3fcbd1 Normal stack handling for sysenter/syscall; trap gate for int 0x40
git-svn-id: svn://kolibrios.org@434 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-03-28 14:51:04 +00:00
Sergey Semyonov (Serge)
5b119159d4 copyrights
git-svn-id: svn://kolibrios.org@431 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-03-26 12:18:08 +00:00
Sergey Semyonov (Serge)
e779187e24 update read_file
git-svn-id: svn://kolibrios.org@429 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-03-23 03:11:34 +00:00
victor
21e4bc0233 added computing of current #revision for kernel *.inc and *.asm files
git-svn-id: svn://kolibrios.org@425 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-03-21 22:58:33 +00:00
Sergey Semyonov (Serge)
3764b8d630 fixed bug in init_LFB()
git-svn-id: svn://kolibrios.org@389 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-03-05 21:37:28 +00:00
Sergey Semyonov (Serge)
1ced1382c9 replace all vars whith symbolic constants
git-svn-id: svn://kolibrios.org@381 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-03-01 20:32:19 +00:00
Sergey Semyonov (Serge)
a90d0cfe1d replace vars 0x8000 0xC000 0xC004 0xD000 0x80000 whith symbolic constants
rename PROC_BASE -> SLOT_BASE


git-svn-id: svn://kolibrios.org@380 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-02-28 10:51:05 +00:00
Sergey Semyonov (Serge)
04929cf017 1)fixed wrong exported LFB address
2)replace 0x3000 0x3004 0x3010 0x3020 whith symbolic constants


git-svn-id: svn://kolibrios.org@379 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-02-28 08:52:06 +00:00
Sergey Semyonov (Serge)
02bcaaab53 drivers related modification
git-svn-id: svn://kolibrios.org@377 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-02-26 12:40:37 +00:00
Sergey Semyonov (Serge)
0f0c0aabfa reduce kernel memory
git-svn-id: svn://kolibrios.org@363 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-02-19 08:22:55 +00:00
Sergey Semyonov (Serge)
ee29610808 dynamic stack with fpu state area
git-svn-id: svn://kolibrios.org@357 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-02-17 10:09:23 +00:00
Sergey Semyonov (Serge)
1aafb8c866 small fix for kernel objects
git-svn-id: svn://kolibrios.org@345 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-02-14 01:16:07 +00:00
Sergey Semyonov (Serge)
075c0ea71a patch for terminate()
git-svn-id: svn://kolibrios.org@334 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-02-09 17:48:56 +00:00
Sergey Semyonov (Serge)
82fe412a09 cleanup kernel objects in terminate()
git-svn-id: svn://kolibrios.org@329 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-02-08 07:15:14 +00:00
Evgeny Grechnikov (Diamond)
1ace68286b * New sysfunction 70.9, create folder
* Deleted obsolete 58.4 (create folder 8.3 on hd)
* Updated docs
* Bugfixes (file system; core; direct screen access), improvements (sysfn 70.3)
* KFar 0.21, full error handling, folder creation (with new kernel)

git-svn-id: svn://kolibrios.org@321 a494cfbc-eb01-0410-851d-a64ba20cac60
2007-02-05 14:20:36 +00:00
Sergey Semyonov (Serge)
54e1aacfec kernel support for loading compressed apps - part 1
git-svn-id: svn://kolibrios.org@237 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-12-17 06:22:59 +00:00
Sergey Semyonov (Serge)
7f38fb4c37 1)fixed wrong SSE detection for old AMD chips
2)restore COM2 IRQ handler
3)added new fn 37.4 37.5


git-svn-id: svn://kolibrios.org@221 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-11-27 10:07:51 +00:00
Sergey Semyonov (Serge)
00b8fb388c 1)fixed bug with wrong lfb size on some old videocards
2)set fpu/sse to default state for new thread
3)added driver sceletone

git-svn-id: svn://kolibrios.org@214 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-11-20 07:06:00 +00:00
Sergey Semyonov (Serge)
c6d6567ec3 fixed: 1)uncleared fpu exceptions in fpu_save
2)fpu context lose in terminate

git-svn-id: svn://kolibrios.org@203 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-10-31 20:19:05 +00:00
Evgeny Grechnikov (Diamond)
fc4d6ab4af Kernel: support for kernel packer
kfar: updated to 0.14 (warning when deleting)

git-svn-id: svn://kolibrios.org@183 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-10-16 12:17:49 +00:00
Sergey Semyonov (Serge)
9395f92693 1)fixed memory size in fn 18.16 & 18.17
2)added fn 18.20 - get extended memory info

git-svn-id: svn://kolibrios.org@170 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-10-08 07:48:38 +00:00
Sergey Semyonov (Serge)
233c3e6435 complete SSE support. user-level SSE & FPU exceptions handling
git-svn-id: svn://kolibrios.org@168 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-10-07 09:47:03 +00:00
Sergey Semyonov (Serge)
b6950333ac new kernel
git-svn-id: svn://kolibrios.org@164 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-10-06 06:09:41 +00:00
Evgeny Grechnikov (Diamond)
393a43c2ba DMA access to HD
git-svn-id: svn://kolibrios.org@160 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-09-27 14:58:51 +00:00
Evgeny Grechnikov (Diamond)
7f1f402a78 File subsystem: fixed function 70.0 for CD
Window subsystem: now minimized windows are not activated when program terminates
@RB: now it ignores minimized windows
CMD: version from K0600 distro (modified to use fn 70.7 instead of 19) +
     redraw does not change window border


git-svn-id: svn://kolibrios.org@154 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-09-19 13:16:31 +00:00
Evgeny Grechnikov (Diamond)
990e3f745c Kernel: updated to Kolibri 0.6.0.0 distr
Programs from K0600 distr: CDP, KEYASCII

git-svn-id: svn://kolibrios.org@147 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-09-08 13:29:22 +00:00
Evgeny Grechnikov (Diamond)
7e19914ef4 Kernel: fixed work with zero-size windows
launcher, @rb: modified to use function 70

git-svn-id: svn://kolibrios.org@142 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-08-29 12:52:52 +00:00
Evgeny Grechnikov (Diamond)
ec76c66cd2 File system: new function 70.4 to set file size
Graphics: fixed error when putimage and drawrect do not draw pixels
          on right and bottom window sides
Processes: fixed kernel fault when program to load is too big
Programs: EYES: now it works with new kernel (rev. 130). Size optimization.
                Blinking deleted.

git-svn-id: svn://kolibrios.org@133 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-08-21 13:06:02 +00:00
Evgeny Grechnikov (Diamond)
d99e3ea921 keyboard.inc: deleted obsolete code for Alt+arrows
sys32.inc: small bugfix (IRQ reservation free)
@numcalc: sources added

git-svn-id: svn://kolibrios.org@118 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-08-11 13:30:23 +00:00
Ivan Poddubny
3e2bc5b35f Introduced APPDATA, TASKDATA, WNDDATA, RECT, BOX structures.
git-svn-id: svn://kolibrios.org@115 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-08-06 10:29:45 +00:00
Mihail Semenyako (mike.dld)
9a27b206b3 Added two flags to 0th function (edx = 0xXYRRGGBB, X = DCBAb)
A - window has a caption; if Y=3, then caption scting address could be passed in
      edi, otherwise use function 71/1
  B - treat all drawing performed to be relative to window client area
  D - use gradient fill for client area
Added function 71:
  subfunction 1 - set window caption string address (in ecx)
  subfunction 2 - get window caption into buffer (not implemented yet)
Updated sysfuncr.txt, added sysfuncs.txt

git-svn-id: svn://kolibrios.org@114 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-08-03 19:30:32 +00:00
Evgeny Grechnikov (Diamond)
7a1e29cbc9 Small bugfixes with DF in debug subsystem; small improvement in function 70.0 for floppies
git-svn-id: svn://kolibrios.org@113 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-08-02 14:34:15 +00:00
Ivan Poddubny
849b393cad 1. faster GUI: calculatescreen
2. fixed sysfunc 1 - put pixel which was completely broken

git-svn-id: svn://kolibrios.org@112 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-08-01 14:09:42 +00:00
Ivan Poddubny
82859246df Direct window activation without osloop/checkwindows, straightforward window minimizing
git-svn-id: svn://kolibrios.org@105 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-07-25 10:48:35 +00:00
Ivan Poddubny
c5b30426a8 1. a little fix for scheduler + correct comments
2. refactored window activation/ process termination/ getting active process
3. deleted dead code in checkwindows
4. eliminated almost all accesses to 0x3020+...+0xe, changed to direct process number
5. cli/sti in vesa12 and vga drivers and in calculatescreen
6. skipping dead windows in some funcs in window.inc

git-svn-id: svn://kolibrios.org@102 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-07-23 14:47:32 +00:00
Evgeny Grechnikov (Diamond)
56d23ae060 Hotkeys are now supported
git-svn-id: svn://kolibrios.org@92 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-06-30 12:23:15 +00:00
Marat Zakiyanov (Mario79)
c9d4558817 Mihaylov Iliya Andreevich aka Ghost
Advanced Power Management
SYSTEM CALL
eax = 49
dx = number of the function APM BIOS (Is similar AX in real mode)
Others registers (bx, cx) on the specification (see. docs/apm.zip>apm.txt)
Result: on the specification (including CF), the high part 32 bit registers is not defined


git-svn-id: svn://kolibrios.org@76 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-05-06 14:34:30 +00:00
Evgeny Grechnikov (Diamond)
17da7e7f7a File system: read folders with long names and in new standard
System functions: many small corrections

git-svn-id: svn://kolibrios.org@75 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-05-05 12:40:02 +00:00
Evgeny Grechnikov (Diamond)
aa7be4e6f1 Debug subsystem: added DRx registers support
git-svn-id: svn://kolibrios.org@66 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-04-10 15:20:34 +00:00
Marat Zakiyanov (Mario79)
0e57fd1908 Fixed bug - COM modem completely does not work.
git-svn-id: svn://kolibrios.org@58 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-03-11 18:10:47 +00:00
Andrey Halyavin (halyavin)
f4fbaa166e *Reduced size of boot code. (diamond)
*Debug API added. (diamond)

git-svn-id: svn://kolibrios.org@40 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-01-25 13:19:21 +00:00
Marat Zakiyanov (Mario79)
333b0bbae6 1) Parallel processing of mouses: PS2, COM1, COM2
2) Detection PS2 mouse.
3) Switching FPU in PM with reset.
4) Click on the application button - works only if during release of a up-button mouse the cursor is on the button application. Realization Victor Alberto Gil Hanla (vhanla). Version 1.1
5) Return of focus (activated window) on previous application at completion of the active application
6) Change skin of header of windows type 4, at loss and return of focus (activated window).

git-svn-id: svn://kolibrios.org@33 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-01-06 11:46:26 +00:00
Marat Zakiyanov (Mario79)
e66db56977 Fixed irq6 handler in sys32.inc
git-svn-id: svn://kolibrios.org@23 a494cfbc-eb01-0410-851d-a64ba20cac60
2005-11-12 08:49:39 +00:00
Ivan Poddubny
182a9c6899 fixed a bug in sched.inc (speaker)
fixed exception handlers - shows correct EIP of a terminated process

some corrections to memmap.inc

git-svn-id: svn://kolibrios.org@22 a494cfbc-eb01-0410-851d-a64ba20cac60
2005-11-10 17:59:41 +00:00
Marat Zakiyanov (Mario79)
5c9d9d79c0 corrected handler irq6 in sys32.inc
git-svn-id: svn://kolibrios.org@20 a494cfbc-eb01-0410-851d-a64ba20cac60
2005-11-07 10:46:04 +00:00
Ivan Poddubny
38d714f47e * fixed show_error_parameters in sys32.inc
uses the stack instead of TSS

git-svn-id: svn://kolibrios.org@16 a494cfbc-eb01-0410-851d-a64ba20cac60
2005-10-28 16:37:38 +00:00
Ivan Poddubny
d927fb6877 * A bug with floppy IRQ has been finally fixed (EOI added)
* optimised i40 handler

git-svn-id: svn://kolibrios.org@15 a494cfbc-eb01-0410-851d-a64ba20cac60
2005-10-28 16:16:47 +00:00
Ivan Poddubny
2a96dafd9f Bugfixes
1) Bug in task switching (0xffff = 1 without task switch)
2) Bug with IRQ6 (floppy) - "call fdc_irq" was deleted earlier

git-svn-id: svn://kolibrios.org@11 a494cfbc-eb01-0410-851d-a64ba20cac60
2005-10-24 17:14:59 +00:00
Ivan Poddubny
cda72a8906 Small fixes for sched.inc & sys32.inc
Less code, same work.

Updated memmap.inc

git-svn-id: svn://kolibrios.org@10 a494cfbc-eb01-0410-851d-a64ba20cac60
2005-10-17 15:53:11 +00:00
Andrey Halyavin (halyavin)
c57ff1bc79 Small optimizations in shed.
Fixed memory leak when not enough memory for starting application.
Deleted old code writing to TSS of system call handler.

git-svn-id: svn://kolibrios.org@9 a494cfbc-eb01-0410-851d-a64ba20cac60
2005-10-17 15:38:11 +00:00
Ivan Poddubny
bd15d25cab No task gates in the IDT.
No TSSs for interrupt handlers.
More free memory.
Faster task switch and interrupt handling.
Smaller sys32.inc.

git-svn-id: svn://kolibrios.org@8 a494cfbc-eb01-0410-851d-a64ba20cac60
2005-10-16 13:30:23 +00:00
Ivan Poddubny
2e93336e82 All exceptions use Interrupt Gate
Better FPU exception handler
Code cleanups
Correct save_registers for i40 handler (syscall trace)
Updated memmap.inc

git-svn-id: svn://kolibrios.org@6 a494cfbc-eb01-0410-851d-a64ba20cac60
2005-10-13 17:50:36 +00:00
Andrey Halyavin (halyavin)
bc47ee30d7 Mario79 fixes:
Application can determine own path now.
Some boot messages changed (it is version Kolibri 5.1.0 now).
Some rd functions updated (thanks to michael).
Switch to another bank-switching procedure.

git-svn-id: svn://kolibrios.org@5 a494cfbc-eb01-0410-851d-a64ba20cac60
2005-10-13 05:34:10 +00:00
Ivan Poddubny
b420f2df50 Code cleanups.
Two GDT descriptors for all applications.
Unnecessary interrupt masking from commouse.inc has beed deleted.

git-svn-id: svn://kolibrios.org@4 a494cfbc-eb01-0410-851d-a64ba20cac60
2005-10-12 11:35:35 +00:00
Andrey Halyavin (halyavin)
b37db20eb6 More correct build_ru.bat and build_en.bat
Now kernel uses interrupt gates for i40 handler instead of task gates. 
So i40 handler TSS can be removed.

git-svn-id: svn://kolibrios.org@3 a494cfbc-eb01-0410-851d-a64ba20cac60
2005-10-10 16:57:18 +00:00
msu-se
d5c0fed779 moving to kernel directory
git-svn-id: svn://kolibrios.org@2 a494cfbc-eb01-0410-851d-a64ba20cac60
2005-10-07 04:39:30 +00:00