wine
12 years agod3dx9: Improve ID3DXConstantTable::GetConstantByName().
Rico Schüller [Sat, 25 Aug 2012 14:28:12 +0000 (16:28 +0200)] 
d3dx9: Improve ID3DXConstantTable::GetConstantByName().

12 years agowinedbg: Add register data processing operators to Thumb2 disassembler.
André Hentschel [Sun, 26 Aug 2012 16:41:57 +0000 (18:41 +0200)] 
winedbg: Add register data processing operators to Thumb2 disassembler.

12 years agowinedbg: Add store operators to Thumb2 disassembler.
André Hentschel [Sun, 26 Aug 2012 16:30:29 +0000 (18:30 +0200)] 
winedbg: Add store operators to Thumb2 disassembler.

12 years agomsxml3: Implement xmldecl-version property for a reader.
Nikolay Sivov [Mon, 27 Aug 2012 05:39:43 +0000 (09:39 +0400)] 
msxml3: Implement xmldecl-version property for a reader.

12 years agowmi: Implement SystemName property for service class.
Nikolay Sivov [Mon, 27 Aug 2012 04:29:21 +0000 (08:29 +0400)] 
wmi: Implement SystemName property for service class.

12 years agowmi: Implement StartMode property for service class.
Nikolay Sivov [Sun, 26 Aug 2012 17:29:29 +0000 (21:29 +0400)] 
wmi: Implement StartMode property for service class.

12 years agodinput: Fix incorrect check in device_disabled_registry.
Gerald Pfeifer [Sat, 25 Aug 2012 00:18:14 +0000 (02:18 +0200)] 
dinput: Fix incorrect check in device_disabled_registry.

12 years agogdiplus: Correct signature/mask info for the GIF codec.
Dmitry Timoshkov [Mon, 27 Aug 2012 03:04:31 +0000 (12:04 +0900)] 
gdiplus: Correct signature/mask info for the GIF codec.

12 years agojoy.cpl: Make Enable/Disable buttons wider for translations.
Lauri Kenttä [Sat, 25 Aug 2012 18:29:19 +0000 (21:29 +0300)] 
joy.cpl: Make Enable/Disable buttons wider for translations.

12 years agopo: Update Finnish translation.
Lauri Kenttä [Sat, 25 Aug 2012 18:29:18 +0000 (21:29 +0300)] 
po: Update Finnish translation.

12 years agopo: Update German translation.
André Hentschel [Sat, 25 Aug 2012 11:40:32 +0000 (13:40 +0200)] 
po: Update German translation.

12 years agopo: Update Lithuanian translation.
Aurimas Fišeras [Fri, 24 Aug 2012 19:13:34 +0000 (22:13 +0300)] 
po: Update Lithuanian translation.

12 years agodssenh/tests: Added key exchange tests for the DSSENH cryptographic service provider.
Marek Chmiel [Sat, 18 Aug 2012 05:02:33 +0000 (00:02 -0500)] 
dssenh/tests: Added key exchange tests for the DSSENH cryptographic service provider.

12 years agodinput: SetActionMap saving mappings.
Lucas Zawacki [Fri, 24 Aug 2012 17:04:52 +0000 (14:04 -0300)] 
dinput: SetActionMap saving mappings.

12 years agodinput8/tests: Added tests for saving and retrieving settings with SetActionMap.
Lucas Zawacki [Fri, 24 Aug 2012 17:04:51 +0000 (14:04 -0300)] 
dinput8/tests: Added tests for saving and retrieving settings with SetActionMap.

12 years agogdiplus: Make GdipMeasureCharacterRanges use common font transformation code.
Dmitry Timoshkov [Fri, 24 Aug 2012 06:43:45 +0000 (15:43 +0900)] 
gdiplus: Make GdipMeasureCharacterRanges use common font transformation code.

12 years agogdiplus: Do not convert range_rect.X twice.
Dmitry Timoshkov [Fri, 24 Aug 2012 06:42:47 +0000 (15:42 +0900)] 
gdiplus: Do not convert range_rect.X twice.

12 years agoriched20/tests: Use proper method macros.
Nikolay Sivov [Fri, 24 Aug 2012 09:03:56 +0000 (13:03 +0400)] 
riched20/tests: Use proper method macros.

12 years agoqmgr: Use proper method macros.
Nikolay Sivov [Fri, 24 Aug 2012 08:52:18 +0000 (12:52 +0400)] 
qmgr: Use proper method macros.

12 years agowshom.ocx/tests: Use proper method macro.
Nikolay Sivov [Fri, 24 Aug 2012 09:23:43 +0000 (13:23 +0400)] 
wshom.ocx/tests: Use proper method macro.

12 years agoshell32/tests: Use proper method macros.
Nikolay Sivov [Fri, 24 Aug 2012 09:17:20 +0000 (13:17 +0400)] 
shell32/tests: Use proper method macros.

12 years agoquartz/tests: Use proper method macros.
Nikolay Sivov [Fri, 24 Aug 2012 09:01:11 +0000 (13:01 +0400)] 
quartz/tests: Use proper method macros.

12 years agomsdaps: Use proper method macro.
Nikolay Sivov [Fri, 24 Aug 2012 08:39:51 +0000 (12:39 +0400)] 
msdaps: Use proper method macro.

12 years agojoy.cpl: Disable joysticks using joy.cpl.
Lucas Zawacki [Fri, 24 Aug 2012 07:55:08 +0000 (04:55 -0300)] 
joy.cpl: Disable joysticks using joy.cpl.

12 years agodinput: Disable linuxinput or linux joysticks based on registry key.
Lucas Zawacki [Fri, 24 Aug 2012 07:55:07 +0000 (04:55 -0300)] 
dinput: Disable linuxinput or linux joysticks based on registry key.

12 years agodinput: Append driver name to dinput joysticks on Linux.
Lucas Zawacki [Fri, 24 Aug 2012 07:55:06 +0000 (04:55 -0300)] 
dinput: Append driver name to dinput joysticks on Linux.

12 years agooleaut32: Fix VectorFromBstr call in VARIANT_CoerceArray.
Roman Dadkov [Thu, 23 Aug 2012 14:36:46 +0000 (18:36 +0400)] 
oleaut32: Fix VectorFromBstr call in VARIANT_CoerceArray.

12 years agod3dx9: Improve is_valid_constant().
Rico Schüller [Thu, 23 Aug 2012 19:36:58 +0000 (21:36 +0200)] 
d3dx9: Improve is_valid_constant().

12 years agod3dx9: Parse structs and sub constants in ID3DXConstantTable.
Rico Schüller [Thu, 23 Aug 2012 19:36:50 +0000 (21:36 +0200)] 
d3dx9: Parse structs and sub constants in ID3DXConstantTable.

12 years agod3dx9: Don't use an index as variable handle, it's not useable for subvariables.
Rico Schüller [Thu, 23 Aug 2012 19:36:46 +0000 (21:36 +0200)] 
d3dx9: Don't use an index as variable handle, it's not useable for subvariables.

12 years agod3dx9: Add a fixme for flags in D3DXGetShaderConstantTableEx().
Rico Schüller [Thu, 23 Aug 2012 19:36:36 +0000 (21:36 +0200)] 
d3dx9: Add a fixme for flags in D3DXGetShaderConstantTableEx().

12 years agod3dx9: Remove ctab_constant typedef.
Rico Schüller [Thu, 23 Aug 2012 19:36:27 +0000 (21:36 +0200)] 
d3dx9: Remove ctab_constant typedef.

12 years agodsound: Cleanup IKsPrivatePropertySetImpl_Create().
Michael Stefaniuc [Thu, 23 Aug 2012 23:47:14 +0000 (01:47 +0200)] 
dsound: Cleanup IKsPrivatePropertySetImpl_Create().

12 years agowinedbg: Add load word operators to Thumb2 disassembler.
André Hentschel [Thu, 23 Aug 2012 21:39:55 +0000 (23:39 +0200)] 
winedbg: Add load word operators to Thumb2 disassembler.

12 years agogdiplus: Filter tabs out until they are properly supported using stringformat.
Dmitry Timoshkov [Thu, 23 Aug 2012 01:24:22 +0000 (10:24 +0900)] 
gdiplus: Filter tabs out until they are properly supported using stringformat.

12 years agogdiplus: Clarify in the tests where 1/3 of extra text height comes from.
Dmitry Timoshkov [Thu, 23 Aug 2012 06:27:35 +0000 (15:27 +0900)] 
gdiplus: Clarify in the tests where 1/3 of extra text height comes from.

12 years agoopengl32: Generate null driver entry points for all extension functions.
Alexandre Julliard [Thu, 23 Aug 2012 19:23:09 +0000 (21:23 +0200)] 
opengl32: Generate null driver entry points for all extension functions.

12 years agoconfigure: Only enable -gdwarf-2 if -g was specified.
Alexandre Julliard [Thu, 23 Aug 2012 10:28:41 +0000 (12:28 +0200)] 
configure: Only enable -gdwarf-2 if -g was specified.

12 years agoopengl32/tests: Do not pass NULL attrib list to wglCreatePBufferARB.
Jérôme Gardou [Wed, 22 Aug 2012 08:18:14 +0000 (10:18 +0200)] 
opengl32/tests: Do not pass NULL attrib list to wglCreatePBufferARB.

12 years agogdiplus: GdipMeasureCharacterRanges should respect device units and transformations.
Dmitry Timoshkov [Wed, 22 Aug 2012 06:35:21 +0000 (15:35 +0900)] 
gdiplus: GdipMeasureCharacterRanges should respect device units and transformations.

12 years agogdiplus: GdipMeasureCharacterRanges shouldn't treat empty layout rectangle as infinit...
Dmitry Timoshkov [Wed, 22 Aug 2012 06:34:38 +0000 (15:34 +0900)] 
gdiplus: GdipMeasureCharacterRanges shouldn't treat empty layout rectangle as infinite bounds.

12 years agogdiplus: Add a bunch of tests for GdipMeasureCharacterRanges.
Dmitry Timoshkov [Wed, 22 Aug 2012 06:33:48 +0000 (15:33 +0900)] 
gdiplus: Add a bunch of tests for GdipMeasureCharacterRanges.

12 years agooleaut32: Record DocString field in ITypeInfoImpl structure in function ITypeLib2_Con...
Roman Dadkov [Tue, 21 Aug 2012 14:00:38 +0000 (18:00 +0400)] 
oleaut32: Record DocString field in ITypeInfoImpl structure in function ITypeLib2_Constructor_SLTG.

12 years agontdll: Catch bad pointers in RtlWow64EnableFsRedirectionEx.
André Hentschel [Tue, 21 Aug 2012 19:58:17 +0000 (21:58 +0200)] 
ntdll: Catch bad pointers in RtlWow64EnableFsRedirectionEx.

12 years agokernel32: Add GetConsoleFontSize stub.
Alistair Leslie-Hughes [Mon, 20 Aug 2012 04:45:03 +0000 (14:45 +1000)] 
kernel32: Add GetConsoleFontSize stub.

12 years agokernel32: Add GetCurrentConsoleFont stub.
Alistair Leslie-Hughes [Mon, 20 Aug 2012 04:20:16 +0000 (14:20 +1000)] 
kernel32: Add GetCurrentConsoleFont stub.

12 years agokernel32/tests: "en" is not a valid locale on some platforms.
Alexandre Julliard [Wed, 22 Aug 2012 10:03:34 +0000 (12:03 +0200)] 
kernel32/tests: "en" is not a valid locale on some platforms.

12 years agouser32: Don't limit time needed for WM_DDE_INITIATE processing.
Piotr Caban [Wed, 22 Aug 2012 08:12:19 +0000 (10:12 +0200)] 
user32: Don't limit time needed for WM_DDE_INITIATE processing.

12 years agopo: A spelling fix in the French translation.
Francois Gouget [Wed, 22 Aug 2012 07:12:52 +0000 (09:12 +0200)] 
po: A spelling fix in the French translation.

12 years agoxcopy: Fix spelling and slightly reword the usage message.
Francois Gouget [Wed, 22 Aug 2012 06:55:47 +0000 (08:55 +0200)] 
xcopy: Fix spelling and slightly reword the usage message.

12 years agoreadme: Wine no longer supports Mac OS X 10.4.
Austin English [Tue, 21 Aug 2012 20:08:33 +0000 (13:08 -0700)] 
readme: Wine no longer supports Mac OS X 10.4.

12 years agowinealsa.drv: Special-case copying common sample sizes in a tight loop.
Andrew Eikum [Tue, 21 Aug 2012 18:38:44 +0000 (13:38 -0500)] 
winealsa.drv: Special-case copying common sample sizes in a tight loop.

12 years agod3dx9_36: Add a trailing '\n' to a couple of Wine traces.
Francois Gouget [Tue, 21 Aug 2012 11:35:19 +0000 (13:35 +0200)] 
d3dx9_36: Add a trailing '\n' to a couple of Wine traces.

12 years agopo: Remove an unwanted trailing full stop in the Lithuanian translation.
Francois Gouget [Tue, 21 Aug 2012 11:38:32 +0000 (13:38 +0200)] 
po: Remove an unwanted trailing full stop in the Lithuanian translation.

12 years agopo: A couple of British spelling fixes for the start usage message.
Francois Gouget [Tue, 21 Aug 2012 11:36:55 +0000 (13:36 +0200)] 
po: A couple of British spelling fixes for the start usage message.

12 years agodssenh/tests: add a trailing '\n' to a couple of ok() calls.
Francois Gouget [Tue, 21 Aug 2012 11:32:14 +0000 (13:32 +0200)] 
dssenh/tests: add a trailing '\n' to a couple of ok() calls.

12 years agomsvcp100: VTBL_WRAPPER(60) is unused so remove it.
Francois Gouget [Tue, 21 Aug 2012 11:31:55 +0000 (13:31 +0200)] 
msvcp100: VTBL_WRAPPER(60) is unused so remove it.

12 years agomsvcrt/tests: Add a trailing '\n' to a win_skip().
Francois Gouget [Tue, 21 Aug 2012 11:31:49 +0000 (13:31 +0200)] 
msvcrt/tests: Add a trailing '\n' to a win_skip().

12 years agodsound: Make dumpCooperativeLevel() static.
Francois Gouget [Tue, 21 Aug 2012 11:31:39 +0000 (13:31 +0200)] 
dsound: Make dumpCooperativeLevel() static.

12 years agojoy.cpl: Prevent crash on IDirectInputEffect_Release.
Lucas Zawacki [Mon, 20 Aug 2012 06:39:07 +0000 (03:39 -0300)] 
joy.cpl: Prevent crash on IDirectInputEffect_Release.

12 years agod3dx9: Implement ID3DXConstantTable::SetMatrixTransposePointerArray.
Józef Kucia [Tue, 21 Aug 2012 12:52:20 +0000 (14:52 +0200)] 
d3dx9: Implement ID3DXConstantTable::SetMatrixTransposePointerArray.

12 years agod3dx9: Implement ID3DXConstantTable::SetMatrixPointerArray.
Józef Kucia [Tue, 21 Aug 2012 12:52:19 +0000 (14:52 +0200)] 
d3dx9: Implement ID3DXConstantTable::SetMatrixPointerArray.

12 years agod3dx9: Implement ID3DXConstantTable::SetMatrixTranspose.
Józef Kucia [Tue, 21 Aug 2012 12:52:18 +0000 (14:52 +0200)] 
d3dx9: Implement ID3DXConstantTable::SetMatrixTranspose.

12 years agod3dx9: Implement ID3DXConstantTable::SetMatrixTransposeArray.
Józef Kucia [Tue, 21 Aug 2012 12:52:17 +0000 (14:52 +0200)] 
d3dx9: Implement ID3DXConstantTable::SetMatrixTransposeArray.

12 years agod3dx9: ID3DXConstantTable::SetFloat shouldn't change the value of matrix and vector...
Józef Kucia [Tue, 21 Aug 2012 12:52:16 +0000 (14:52 +0200)] 
d3dx9: ID3DXConstantTable::SetFloat shouldn't change the value of matrix and vector constants.

12 years agod3dx9: ID3DXConstantTable::SetVector shouldn't change the value of matrix constants.
Józef Kucia [Tue, 21 Aug 2012 12:52:15 +0000 (14:52 +0200)] 
d3dx9: ID3DXConstantTable::SetVector shouldn't change the value of matrix constants.

12 years agod3dx9: ID3DXConstantTable::SetMatrix should set scalar constants.
Józef Kucia [Tue, 21 Aug 2012 12:52:14 +0000 (14:52 +0200)] 
d3dx9: ID3DXConstantTable::SetMatrix should set scalar constants.

12 years agod3dx9: Avoid TRUE : FALSE conditional expression.
Rico Schüller [Tue, 21 Aug 2012 10:26:45 +0000 (12:26 +0200)] 
d3dx9: Avoid TRUE : FALSE conditional expression.

12 years agod3dx9: Remove not needed TRACE.
Rico Schüller [Tue, 21 Aug 2012 10:26:40 +0000 (12:26 +0200)] 
d3dx9: Remove not needed TRACE.

12 years agod3dx9: Identify D3DTSS_CONSTANT and FVF states.
Rico Schüller [Tue, 21 Aug 2012 10:26:33 +0000 (12:26 +0200)] 
d3dx9: Identify D3DTSS_CONSTANT and FVF states.

12 years agod3dx9: Don't double check the technique.
Rico Schüller [Tue, 21 Aug 2012 10:26:22 +0000 (12:26 +0200)] 
d3dx9: Don't double check the technique.

12 years agogdi32: Allow removing a driver from the stack based on its function table.
Alexandre Julliard [Tue, 21 Aug 2012 10:59:18 +0000 (12:59 +0200)] 
gdi32: Allow removing a driver from the stack based on its function table.

12 years agogdi32: Add a helper function to find a specific driver in the DC stack.
Alexandre Julliard [Tue, 21 Aug 2012 10:54:01 +0000 (12:54 +0200)] 
gdi32: Add a helper function to find a specific driver in the DC stack.

12 years agoadvapi32: RegSetValueExW should not crash when passed 1 instead of L"1".
Dan Kegel [Mon, 20 Aug 2012 16:12:18 +0000 (09:12 -0700)] 
advapi32: RegSetValueExW should not crash when passed 1 instead of L"1".

12 years agontdll: Add support for Windows 8 version.
André Hentschel [Mon, 20 Aug 2012 18:37:53 +0000 (20:37 +0200)] 
ntdll: Add support for Windows 8 version.

12 years agogdiplus: Use set_rect_empty() helper to make the code slightly more compact and readable.
Dmitry Timoshkov [Tue, 21 Aug 2012 02:02:13 +0000 (11:02 +0900)] 
gdiplus: Use set_rect_empty() helper to make the code slightly more compact and readable.

12 years agogdiplus: Rename roundr() to gdip_round() to make it clearer that it's an internal...
Dmitry Timoshkov [Tue, 21 Aug 2012 02:02:06 +0000 (11:02 +0900)] 
gdiplus: Rename roundr() to gdip_round() to make it clearer that it's an internal helper.

12 years agowineoss: Fix variable types so pointer is not truncated on 64bit.
Nikolay Sivov [Tue, 21 Aug 2012 03:55:45 +0000 (07:55 +0400)] 
wineoss: Fix variable types so pointer is not truncated on 64bit.

12 years agowinecoreaudio: Fix variable types so pointer is not truncated on 64bit.
Nikolay Sivov [Tue, 21 Aug 2012 03:54:50 +0000 (07:54 +0400)] 
winecoreaudio: Fix variable types so pointer is not truncated on 64bit.

12 years agowinealsa: Fix variable types so pointer is not truncated on 64bit.
Nikolay Sivov [Tue, 21 Aug 2012 03:53:00 +0000 (07:53 +0400)] 
winealsa: Fix variable types so pointer is not truncated on 64bit.

12 years agowined3d: Use BOOL instead of char in shader_load_constants().
Matteo Bruni [Mon, 20 Aug 2012 20:34:59 +0000 (22:34 +0200)] 
wined3d: Use BOOL instead of char in shader_load_constants().

12 years agowined3d: Force ARB shader programs reselection on bool/int constant changes.
Matteo Bruni [Mon, 20 Aug 2012 20:34:58 +0000 (22:34 +0200)] 
wined3d: Force ARB shader programs reselection on bool/int constant changes.

The ARB shader backend hardcodes some constant-dependent state in the shader
itself (e.g. branch taken/not taken). So, we have to make sure to update the
selected ARB shader when the application modifies non-float constants.

12 years agowined3d: Fix blending test expected results.
Matteo Bruni [Mon, 20 Aug 2012 20:34:57 +0000 (22:34 +0200)] 
wined3d: Fix blending test expected results.

12 years agomscoree: Avoid calling mono_image_open_from_module_handle for libraries.
Vincent Povirk [Mon, 20 Aug 2012 16:15:33 +0000 (11:15 -0500)] 
mscoree: Avoid calling mono_image_open_from_module_handle for libraries.

12 years agopo: Update Korean translation.
Hwang YunSong [Mon, 20 Aug 2012 02:14:36 +0000 (11:14 +0900)] 
po: Update Korean translation.

12 years agowininet: Fix initialization in test_cert_struct.
Gerald Pfeifer [Sat, 18 Aug 2012 22:41:48 +0000 (00:41 +0200)] 
wininet: Fix initialization in test_cert_struct.

12 years agowindowscodecs: Implement IWICImagingFactory::CreateBitmapFromSource.
Vincent Povirk [Tue, 14 Aug 2012 21:41:50 +0000 (16:41 -0500)] 
windowscodecs: Implement IWICImagingFactory::CreateBitmapFromSource.

12 years agowindowscodecs: Allow CopyPixels to succeed without padding from the last row.
Vincent Povirk [Tue, 14 Aug 2012 21:40:33 +0000 (16:40 -0500)] 
windowscodecs: Allow CopyPixels to succeed without padding from the last row.

12 years agooleaut32: Added more tests.
Jacek Caban [Mon, 20 Aug 2012 15:42:53 +0000 (17:42 +0200)] 
oleaut32: Added more tests.

12 years agooleaut32: Ensure that the right interface is passed to the callee in ITypeInfo::Invoke.
Jacek Caban [Mon, 20 Aug 2012 15:42:40 +0000 (17:42 +0200)] 
oleaut32: Ensure that the right interface is passed to the callee in ITypeInfo::Invoke.

12 years agomshtml: Added IHTMLWindow6::get_sessionStorage implementation.
Jacek Caban [Mon, 20 Aug 2012 14:19:41 +0000 (16:19 +0200)] 
mshtml: Added IHTMLWindow6::get_sessionStorage implementation.

12 years agogdiplus: StringFormatFlagsLineLimit doesn't allow line wrapping.
Dmitry Timoshkov [Mon, 20 Aug 2012 03:08:34 +0000 (12:08 +0900)] 
gdiplus: StringFormatFlagsLineLimit doesn't allow line wrapping.

12 years agogdiplus: Add a test for extra space added by GdipMeasureString.
Dmitry Timoshkov [Mon, 20 Aug 2012 03:08:26 +0000 (12:08 +0900)] 
gdiplus: Add a test for extra space added by GdipMeasureString.

12 years agogdiplus: GdipGetImageThumbnail should return image in 32bppPARGB format.
Dmitry Timoshkov [Mon, 20 Aug 2012 03:08:17 +0000 (12:08 +0900)] 
gdiplus: GdipGetImageThumbnail should return image in 32bppPARGB format.

12 years agogdiplus: Return error code of the failed API to the caller.
Dmitry Timoshkov [Mon, 20 Aug 2012 03:08:05 +0000 (12:08 +0900)] 
gdiplus: Return error code of the failed API to the caller.

12 years agogdiplus: Round the layout rectangle down instead of up in gdip_format_string().
Dmitry Timoshkov [Mon, 20 Aug 2012 03:07:57 +0000 (12:07 +0900)] 
gdiplus: Round the layout rectangle down instead of up in gdip_format_string().

12 years agogdiplus: Add a test for measuring string that doesn't fit into layout rectangle.
Dmitry Timoshkov [Mon, 20 Aug 2012 03:07:47 +0000 (12:07 +0900)] 
gdiplus: Add a test for measuring string that doesn't fit into layout rectangle.

12 years agogdiplus: If there is no hbitmap associated with GpBitmap then create one.
Dmitry Timoshkov [Mon, 20 Aug 2012 03:07:32 +0000 (12:07 +0900)] 
gdiplus: If there is no hbitmap associated with GpBitmap then create one.

12 years agomsvcrt/tests: Execute c++ related tests on 64-bit systems.
Piotr Caban [Mon, 20 Aug 2012 10:47:51 +0000 (12:47 +0200)] 
msvcrt/tests: Execute c++ related tests on 64-bit systems.

12 years agomsvcrt: Fixed vector destructors implementation on 64-bit systems.
Piotr Caban [Mon, 20 Aug 2012 10:47:04 +0000 (12:47 +0200)] 
msvcrt: Fixed vector destructors implementation on 64-bit systems.