Henri Verbeet
339ef6c252
ddraw: Use wined3d_get_adapter_display_mode() in d3d_device7_EnumTextureFormats().
2012-06-21 19:52:29 +02:00
Henri Verbeet
4905773baf
ddraw: Only initially enable color keying for version 1 devices.
2012-05-24 20:08:48 +02:00
Henri Verbeet
e3ecfa5974
wined3d: Store user clip planes as 4-component float vectors.
2012-05-22 18:07:02 +02:00
Henri Verbeet
fae3a6430d
ddraw: Get rid of IDirect3DVertexBufferImpl.
2012-04-12 20:36:53 +02:00
Henri Verbeet
4d1a659c3a
ddraw: Get rid of IDirect3DExecuteBufferImpl.
2012-04-11 18:14:41 +02:00
Henri Verbeet
daedd0077d
ddraw: Get rid of IDirect3DDeviceImpl.
2012-04-10 16:21:25 +02:00
Henri Verbeet
96fa113513
ddraw: Properly retrieve an interface pointer in IDirect3DDeviceImpl_7_GetTexture().
2012-04-10 16:21:25 +02:00
Henri Verbeet
cf30899f1a
ddraw: Version 1 devices are aggregated by the surface that created them.
2012-04-06 20:11:17 +02:00
Henri Verbeet
e13de0adf8
ddraw: Fix querying device interfaces in IDirect3DDeviceImpl_7_QueryInterface().
...
Version 7 devices can only return the version 7 interface. The other versions
can only return earlier interfaces.
2012-04-06 20:11:13 +02:00
Henri Verbeet
1a98c339ca
ddraw: Remove some interfaces from IDirect3DDeviceImpl_7_QueryInterface().
2012-04-04 17:22:30 +02:00
Henri Verbeet
cd8508a915
ddraw: Replace an ERR in IDirect3DDeviceImpl_7_QueryInterface() with a WARN.
2012-04-04 17:22:23 +02:00
Henri Verbeet
4f91eb3fe1
ddraw: Keep track of the ddraw version used to create a device.
...
This also obsoletes the "from_surface" device field.
2012-04-04 17:22:19 +02:00
Henri Verbeet
fefb5a943d
ddraw: Get rid of IDirect3DMaterialImpl.
2012-03-16 11:09:07 +01:00
Henri Verbeet
0c11c316bb
ddraw: Get rid of IDirect3DViewportImpl.
2012-03-15 19:52:05 +01:00
Henri Verbeet
9157006fc1
ddraw: Don't return a pointer to the implementation in IDirect3DDeviceImpl_7_QueryInterface().
2012-03-14 11:48:32 +01:00
Henri Verbeet
5f43cd2631
ddraw: Get rid of IDirectDrawSurfaceImpl.
2012-03-12 10:44:01 +01:00
Henri Verbeet
1cee1891fd
ddraw: Get rid of IDirectDrawImpl.
2012-03-09 11:32:35 +01:00
Henri Verbeet
3769afa33d
wined3d: Get rid of the WINED3DSURFTYPE typedef.
2012-01-20 13:31:33 +01:00
Henri Verbeet
e53a277305
wined3d: Get rid of the WINED3DPOOL typedef.
2012-01-18 12:37:38 +01:00
Henri Verbeet
6a5a098b23
wined3d: Get rid of the WINED3DRESOURCETYPE typedef.
2012-01-18 12:37:38 +01:00
Henri Verbeet
cf636cc3b3
ddraw: Allow querying the surface interface if a device was created from a surface.
2012-01-18 12:37:38 +01:00
Henri Verbeet
e70990041b
wined3d: Get rid of the WINED3DTEXTUREFILTERTYPE typedef.
2012-01-13 17:34:31 +01:00
Henri Verbeet
f38e94af7c
wined3d: Get rid of the WINED3DTRANSFORMSTATETYPE typedef.
2012-01-12 12:37:18 +01:00
Henri Verbeet
b6431d9493
wined3d: Get rid of the WINED3DTEXTUREOP typedef.
2012-01-11 17:47:22 +01:00
Henri Verbeet
43fcbcb36e
wined3d: Get rid of the WINED3DTEXTURESTAGESTATETYPE typedef.
2012-01-10 10:47:27 +01:00
Henri Verbeet
08545dc739
wined3d: Get rid of the WINED3DSAMPLERSTATETYPE typedef.
2012-01-09 12:22:12 +01:00
Henri Verbeet
00096c82fd
wined3d: Get rid of the WINED3DZBUFFERTYPE typedef.
2011-12-22 10:08:48 +01:00
Henri Verbeet
4a30db74b1
ddraw: Handle the Direct3D clipspace transformation.
...
Direct3D3 and earlier have an extra transformation to scale clipspace. It's
controlled by the extra viewport parameters in those versions.
2011-12-22 10:07:59 +01:00
Henri Verbeet
3082c1a9de
wined3d: Get rid of the WINED3DRENDERSTATETYPE typedef.
2011-12-20 10:11:47 +01:00
Henri Verbeet
67bca436ee
wined3d: Get rid of the WINED3DDEVTYPE typedef.
2011-12-13 18:58:58 +01:00
Henri Verbeet
52231bc467
wined3d: Get rid of the WineDirect3DVertexStridedData typedef.
2011-12-08 10:27:50 +01:00
Henri Verbeet
4c3dfa1bca
wined3d: Get rid of the WineDirect3DStridedData typedef.
2011-12-07 17:49:56 +01:00
Stefan Dösinger
d4f504c698
ddraw/tests: Add a IDirect3DDevice7 GetCaps test.
2011-12-05 17:40:11 +01:00
Stefan Dösinger
cc06d182fb
ddraw: Size handling fixes for IDirect3DDevice::GetCaps.
2011-12-05 17:40:04 +01:00
Henri Verbeet
22d41e2c3f
ddraw: Rename the wineD3D field in IDirectDrawImpl to wined3d.
2011-11-29 13:23:00 +01:00
Henri Verbeet
0f10ac9358
ddraw: Create the wined3d swapchain when setting the cooperative level.
2011-11-29 13:22:54 +01:00
Henri Verbeet
21bd722c46
ddraw: Set the render target to the wined3d frontbuffer on D3D device cleanup.
...
We don't need any specific render target here, since without a D3D device we
can't do any rendering anyway. We just want to avoid pointing to something
that was free'd.
2011-11-24 17:09:48 +01:00
Matteo Bruni
ca83e14aba
ddraw: Reorder formats in EnumTextureFormats.
2011-11-23 09:13:28 +01:00
Henri Verbeet
be8917cd91
wined3d: Get rid of the WINED3DVIEWPORT typedef.
2011-11-22 10:52:40 +01:00
Henri Verbeet
02bb70fc3b
wined3d: Get rid of the WINED3DMATERIAL typedef.
2011-11-21 11:01:02 +01:00
Henri Verbeet
f597359727
wined3d: Get rid of the WINED3DLIGHT typedef.
2011-11-21 11:00:57 +01:00
Henri Verbeet
37a0f7ad65
wined3d: Get rid of the WINED3DMATRIX typedef.
2011-11-18 14:26:16 +01:00
Henri Verbeet
18a7653c78
wined3d: Get rid of the WINED3DDISPLAYMODE typedef.
2011-11-17 11:37:26 +01:00
Henri Verbeet
e0a0d611af
wined3d: Pass a wined3d_color struct to wined3d_device_clear().
2011-11-16 09:41:53 +01:00
Henri Verbeet
a2963b662c
ddraw: Use wined3d_mutex_lock() / wined3d_mutex_unlock() for locking.
2011-11-14 15:25:21 +01:00
Henri Verbeet
5193f6704c
ddraw: Implement copy_mipmap_chain() on top of wined3d_surface_blt().
2011-10-31 16:46:19 +01:00
Ričardas Barkauskas
472a8f7a67
ddraw: COM cleanup for IDirect3DDevice7 interface.
2011-10-17 18:24:58 +02:00
Ričardas Barkauskas
7dc08745d1
ddraw: Use impl_from_IDirect3DDevice7 for application provided interfaces.
2011-10-17 18:24:42 +02:00
Ričardas Barkauskas
31cf68dd95
ddraw: Use unsafe_impl_from_IDirect3DDevice7 for application provided interfaces.
2011-10-17 18:24:30 +02:00
Ričardas Barkauskas
6b7e3e77d0
ddraw: COM cleanup for IDirect3DDevice3 interface.
2011-10-17 18:24:21 +02:00
Ričardas Barkauskas
bd530d3aba
ddraw: Rename device_from_device3 to impl_from_IDirect3DDevice3.
2011-10-17 18:24:10 +02:00
Ričardas Barkauskas
a90b2ad002
ddraw: Use unsafe_impl_from_IDirect3DDevice3 for application provided interfaces.
2011-10-17 18:23:51 +02:00
Ričardas Barkauskas
d32df839ac
ddraw: COM cleanup for IDirect3DDevice2 interface.
2011-10-17 18:23:42 +02:00
Ričardas Barkauskas
1c045cbb28
ddraw: Rename device_from_device2 to impl_from_IDirect3DDevice2.
2011-10-17 18:23:33 +02:00
Ričardas Barkauskas
a870753dba
ddraw: Use unsafe_impl_from_IDirect3DDevice2 for application provided interfaces.
2011-10-17 18:23:18 +02:00
Ričardas Barkauskas
d5912c533f
ddraw: COM cleanup for IDirect3DDevice interface.
2011-10-17 18:23:09 +02:00
Ričardas Barkauskas
a0c9ab7894
ddraw: Rename device_from_device1 to impl_from_IDirect3DDevice.
2011-10-17 18:22:56 +02:00
Ričardas Barkauskas
d19e416dee
ddraw: Use unsafe_impl_from_IDirect3DDevice for application provided interfaces.
2011-10-17 18:22:44 +02:00
Ričardas Barkauskas
38982ddf11
ddraw: Use unsafe_impl_from_IDirect3DViewport2 for application provided interfaces.
2011-10-04 15:25:31 -05:00
Ričardas Barkauskas
25bf0e914c
ddraw: Use unsafe_impl_from_IDirect3DViewport for application provided interfaces.
2011-10-04 15:25:25 -05:00
Ričardas Barkauskas
6253d319cb
ddraw: COM cleanup for IDirect3DViewport3 interface.
2011-10-04 15:25:20 -05:00
Ričardas Barkauskas
f44734b724
ddraw: Use unsafe_impl_from_IDirect3DViewport3 for application provided interfaces.
2011-10-04 15:25:00 -05:00
Ričardas Barkauskas
c1aaacd58c
ddraw: Change IDirect3DTexture2_vtbl to IDirect3DTexture2_iface.
2011-07-29 19:19:32 +02:00
Ričardas Barkauskas
15f16e8f5e
ddraw: Use unsafe_impl_from_IDirect3DTexture2 for application provided interfaces.
2011-07-29 19:19:11 +02:00
Ričardas Barkauskas
0a3582865e
ddraw: Use unsafe_impl_from_IDirect3DTexture() for application provided interfaces.
2011-07-29 19:18:59 +02:00
Ričardas Barkauskas
f5c46b01f4
ddraw: Do not increase wined3d texture refcount in IDirect3DDevice7_GetTexture.
2011-07-29 18:47:18 +02:00
Michael Stefaniuc
faa269c42a
ddraw: Use unsafe_impl_from_IDirect3DExecuteBuffer for an app provided iface.
2011-07-08 14:45:23 +02:00
Michael Stefaniuc
663483e16e
ddraw: COM cleanup for the IDirect3DExecuteBuffer iface.
2011-07-08 14:45:19 +02:00
Henri Verbeet
ddc29c40e6
wined3d: Make D3DRS_ZBIAS work.
...
D3DRS_ZBIAS is poorly defined, but it makes sense that the bias should be
format independent. Looking at application behaviour, it seems to include a
slope scale factor as well. This fixes a couple of regressions introduced by
96b758f7b3
, although it was broken before as
well, just in a different way.
2011-07-05 13:46:07 +02:00
Ričardas Barkauskas
5f6d7021aa
ddraw: Separate IDirectDrawSurface and IDirectDrawSurface7 reference counts.
2011-06-28 11:57:50 -05:00
Ričardas Barkauskas
9190d349d2
ddraw: Separate IDirectDrawSurface4 reference count.
2011-06-28 11:57:50 -05:00
Ričardas Barkauskas
3b50ad82ad
ddraw: Fix SetRenderTarget behaviour on failure.
2011-06-28 11:57:50 -05:00
Michael Stefaniuc
d7768739ec
ddraw: COM cleanup for the IDirect3DVertexBuffer7 iface.
2011-06-15 20:04:39 +02:00
Michael Stefaniuc
8e27274163
ddraw: Use unsafe_impl_from_IDirect3DVertexBuffer() for app provided ifaces.
2011-06-15 20:04:39 +02:00
Ričardas Barkauskas
f3ae1b99f6
ddraw: Separate IDirectDrawSurface vtable.
2011-06-10 15:26:52 +02:00
Ričardas Barkauskas
27063ffeaa
ddraw: Use unsafe_impl_from_IDirectDrawSurface() for application provided interfaces.
2011-06-10 15:26:29 +02:00
Ričardas Barkauskas
bb063b994c
ddraw: Separate IDirectDrawSurface4 vtable.
2011-06-06 21:49:23 +02:00
Ričardas Barkauskas
4582562f55
ddraw: Use unsafe_impl_from_IDirectDrawSurface4.
2011-06-06 21:49:23 +02:00
Ričardas Barkauskas
2f02bbb41f
ddraw: Change lpVtbl to IDirectDrawSurface7_iface.
2011-06-06 21:49:23 +02:00
Ričardas Barkauskas
4074dd7615
ddraw: Avoid IDirectDrawSurfaceX to IDirectDrawSurface7 casts.
2011-06-06 21:49:23 +02:00
Ričardas Barkauskas
93dfe5afc3
ddraw: Use impl_from_IDirectDrawSurface7() instead of casts.
2011-06-06 21:49:23 +02:00
Ričardas Barkauskas
705548a6ef
ddraw: Separate conversion from IDirectDrawSurface7 iface to object and conversion to other iface.
2011-06-06 21:49:22 +02:00
Ričardas Barkauskas
28ce1c00a7
ddraw: Use unsafe_impl_from_IDirectDrawSurface7() for application provided interfaces.
2011-06-06 21:49:22 +02:00
Ričardas Barkauskas
6d5be5033e
ddraw: Change IDirectDrawSurface3_vtbl to IDirectDrawSurface3_iface.
2011-05-31 19:24:10 +02:00
Henri Verbeet
8d4ca1f815
wined3d: Remove COM from the device implementation.
2011-05-17 10:06:18 +02:00
Henri Verbeet
979e3744f7
wined3d: Remove state management methods from the IWineD3DDevice interface.
2011-05-17 10:06:15 +02:00
Henri Verbeet
00a5f38595
wined3d: Remove object creation methods from the IWineD3DDevice interface.
2011-05-11 14:56:48 +02:00
Stefan Dösinger
a1519e62f4
ddraw: Map ZBIAS values to a smaller depth range.
2011-05-10 14:04:55 +02:00
Marcus Meissner
6d144cf012
ddraw: Added missing break (Coverity).
2011-05-02 12:37:25 +02:00
Henri Verbeet
1c1de920e3
wined3d: Remove COM from the surface implementation.
2011-04-29 16:52:13 +02:00
Stefan Dösinger
96b758f7b3
d3d: Map D3DRS_ZBIAS to WINED3DRS_DEPTHBIAS.
...
ZBIAS was removed in d3d9 and replaced with DEPTHBIAS. Currently
wined3d implements both independently which will cause trouble if we
want to set the depthbias value depending on the depth stencil format.
2011-04-22 17:51:29 +02:00
Henri Verbeet
fd1aac3e75
ddraw: Replace the viewport list with a standard Wine list.
2011-04-20 13:07:00 +02:00
Henri Verbeet
f1de9ad621
ddraw: Unset the viewports active device in IDirect3DDeviceImpl_3_DeleteViewport().
2011-04-20 13:06:49 +02:00
Henri Verbeet
d429aaa9e9
ddraw: Verify the viewport belongs to the device on execute buffer execution.
2011-04-19 13:29:42 +02:00
Henri Verbeet
9edeb22c34
ddraw: Verify the viewport belongs to the device in IDirect3DDeviceImpl_3_SetCurrentViewport().
2011-04-19 13:29:39 +02:00
Henri Verbeet
358f14ee20
ddraw: Fix a typo in a comment.
2011-04-04 11:53:39 +02:00
Henri Verbeet
024b5c2245
ddraw: Do not unset the index buffer on D3D device destruction.
2011-04-04 11:53:35 +02:00
Henri Verbeet
fd8e18bd2b
wined3d: Remove COM from the texture implementation.
2011-03-28 17:08:52 +02:00
Henri Verbeet
adb1e10979
wined3d: Get rid of wined3d_buffer_get_desc().
2011-03-11 11:40:47 +01:00
Henri Verbeet
4fd03150f6
wined3d: Get rid of IWineD3DBaseTexture::GetSubResourceDesc().
2011-03-10 12:53:13 +01:00
Henri Verbeet
63b72d789d
wined3d: Move the GetLevelDesc() functions to the IWineD3DBaseTexture interface.
2011-03-09 12:29:04 +01:00
Henri Verbeet
756fdb7c5a
wined3d: Merge the various resource desc structures.
2011-03-09 12:28:58 +01:00
Henri Verbeet
a27ee75ed2
wined3d: Remove COM from the buffer implementation.
2011-03-04 16:25:58 +01:00
Henri Verbeet
b7c427b483
ddraw: Just pass NULL as index buffer parent.
...
Since the parent is just an opaque pointer instead of a COM object now, it can
just be NULL instead of needing IParent hacks.
2011-03-04 16:25:58 +01:00
Henri Verbeet
36d4268e3c
wined3d: Remove COM from IWineD3D.
2011-02-02 12:22:42 +01:00
Henri Verbeet
4b109ff1f8
wined3d: Remove COM from the stateblock.
2011-01-31 12:24:58 +01:00
Michael Stefaniuc
4a2ac6c8bd
ddraw: Drop "Thunk_" from the names of the IDirect3DDevice3 methods.
2011-01-20 12:22:16 +01:00
Michael Stefaniuc
120678c261
ddraw: Drop "Thunk_" from the names of the IDirect3DDevice2 methods.
2011-01-20 12:22:10 +01:00
Michael Stefaniuc
f4acb9bb53
ddraw: Drop "Thunk_" from the names of the IDirect3DDevice methods.
2011-01-20 12:22:04 +01:00
Michael Stefaniuc
9745108096
ddraw: COM cleanup for the IDirectDraw7 iface.
2011-01-19 12:32:06 +01:00
Michael Stefaniuc
cd8c18e83c
ddraw: COM cleanup for the IDirectDraw4 iface.
2011-01-19 12:32:00 +01:00
Michael Stefaniuc
4202f09100
ddraw: COM cleanup for the IDirectDraw2 iface.
2011-01-19 12:31:45 +01:00
Michael Stefaniuc
a59347fcd2
ddraw: COM cleanup for the IDirectDraw iface.
2011-01-19 12:31:12 +01:00
Michael Stefaniuc
497944f2bd
ddraw: COM cleanup for the IDirect3D7 iface.
2011-01-19 12:31:04 +01:00
Michael Stefaniuc
97f9b02a26
ddraw: COM cleanup for the IDirect3D3 iface.
2011-01-19 12:30:58 +01:00
Michael Stefaniuc
2b80213578
ddraw: COM cleanup for the IDirect3D2 iface.
2011-01-18 13:29:59 +01:00
Michael Stefaniuc
8255d464db
ddraw: COM cleanup for the IDirect3D iface.
2011-01-18 13:29:58 +01:00
Michael Stefaniuc
b3ced2fa8a
ddraw: Avoid some unsafe IDirect3D7 iface to IDirectDrawImpl transitions.
2011-01-18 13:29:57 +01:00
David Adam
f8690a6bda
ddraw: Remove a useless function.
2010-10-21 16:18:05 +02:00
Henri Verbeet
70f4e66f84
wined3d: IWineD3DBuffer_Unmap() can't fail.
2010-10-15 16:19:54 +02:00
Stefan Dösinger
7cfaf611d0
ddraw: Don't try to enumerate WINED3DFMT_R8G8B8A8_SNORM.
...
There is no ddraw equivalent for this format, as ddraw only supports 2
bump channels. Trying to enumerate this format will only lead to a
confusing (but correct) ERR message
2010-10-06 16:12:02 +02:00
Henri Verbeet
5fa84c56c3
ddraw: Remove another hack.
...
It breaks actual front buffer / back buffer flips.
2010-10-05 15:16:52 +02:00
Rico Schüller
e6d52c0c8b
wined3d: Add argument check for Type to Get/SetTextureStageState().
2010-09-14 13:32:00 -05:00
Henri Verbeet
fd7c1cbf05
wined3d: IWineD3DBuffer_GetDesc() should never fail.
2010-09-14 09:43:22 -05:00
Henri Verbeet
b1a385db11
ddraw: Remove some stray tabs.
2010-09-08 13:32:00 +02:00
Henri Verbeet
83ff5b5041
ddraw: Handle D3DRENDERSTATE_TEXTUREHANDLE and D3DRENDERSTATE_TEXTUREMAPBLEND in d3d7.
2010-09-03 11:05:35 +02:00
Henri Verbeet
6c4c351791
wined3d: Don't require wined3d object parents to be COM objects.
2010-09-01 14:01:02 +02:00
Henri Verbeet
4005eb2a18
wined3d: Get rid of WINED3DRECT.
2010-08-31 14:23:47 +02:00
Henri Verbeet
cc5271d1b7
wined3d: Rename WINED3DFORMAT to wined3d_format_id.
2010-08-24 12:25:01 +02:00
Henri Verbeet
c3cdebcf44
ddraw: Make some lookup tables const.
2010-08-23 12:04:31 +02:00
Henri Verbeet
20a42b4c98
ddraw: Add / improve TRACEs.
2010-08-20 13:21:24 +02:00
Henri Verbeet
584cb331a9
ddraw: Add a separate function for execute buffer initialization.
2010-08-20 13:21:22 +02:00
Henri Verbeet
a60c493986
ddraw: Add a separate function for device initialization.
2010-08-20 13:21:21 +02:00
Henri Verbeet
c5a14085d4
ddraw: Remove unused / redundant includes.
2010-08-19 11:17:41 +02:00
Henri Verbeet
fee9c1f2b5
ddraw: Remove a useless viewport callback.
2010-08-18 09:41:01 +02:00
Henri Verbeet
14399f6130
ddraw: Remove a useless material callback.
2010-08-18 09:40:55 +02:00
Henri Verbeet
3ad82a82bb
wined3d: The stateblock doesn't have a parent.
2010-07-30 11:36:03 +02:00
Henri Verbeet
51a315386e
ddraw: Use a less offensive handle table implementation for surfaces.
2010-07-30 11:36:03 +02:00
Henri Verbeet
91193b6eec
ddraw: Use a less offensive handle table implementation for stateblocks.
2010-07-30 11:36:02 +02:00
Henri Verbeet
941aeade01
ddraw: Use a less offensive handle table implementation for matrices.
2010-07-29 17:33:36 +02:00
Henri Verbeet
0cb4de4542
ddraw: Use a less offensive handle table implementation for materials.
2010-07-29 17:33:35 +02:00
Henri Verbeet
6fb9ee0ee7
ddraw: Merge the ddraw thunks into ddraw.c.
...
Note how both ddraw 1 and ddraw 7 used the same IDirectDrawImpl_XXX naming
convention.
2010-07-20 13:13:04 +02:00
Mikko Rasa
f18cb4c2f4
ddraw: Grow index buffer as needed.
2010-06-30 16:19:13 +02:00
Henri Verbeet
f97a9e3c0f
ddraw: Fix and clarify texture filter state mappings.
2010-04-06 11:48:59 +02:00
Henri Verbeet
1289842da3
wined3d: Move handling of the unimplemented WINED3DRS_STIPPLEPATTERN states to ddraw.
2010-04-02 10:36:06 +02:00
Henri Verbeet
2e5976a8c5
wined3d: Move handling of the unimplemented WINED3DRS_BORDERCOLOR state to ddraw.
2010-04-02 10:35:54 +02:00
Christian Costa
720aa5bf23
ddraw: Fix D3DTBLEND_MODULATE emulation.
...
Alpha source should be selected with WINED3DTSS_ALPHAOP and not by changing the source itself.
2010-02-15 12:51:09 +01:00
Stefan Dösinger
90e443758a
wined3d: Add a parameter for SetRenderTarget viewport setup.
2009-11-03 21:21:30 +01:00
Stefan Dösinger
e80144c403
d3d: Make EndScene calls hookable.
2009-10-14 12:21:06 +02:00
Henri Verbeet
47c84f4f7f
wined3d: Use the DXGI naming convention for all formats.
2009-09-25 15:15:44 +02:00