Commit Graph

558 Commits

Author SHA1 Message Date
simon.kagstrom
4a7efdbb68 Add function to unqueue the current sound info (for the client).
Still needs code to actually push the data to the client!
2009-11-05 06:24:36 +00:00
simon.kagstrom
441e9f4890 Encode sound buffers, still untested 2009-11-04 20:09:04 +00:00
simon.kagstrom
2ac3409df4 OOps, correct type 2009-11-04 17:43:05 +00:00
simon.kagstrom
977f3042f0 Implement some of the sound stuff (not working) 2009-11-04 17:41:54 +00:00
simon.kagstrom
3a72e6a87c Remove current sound implementation (doesn't work anyway) 2009-11-04 17:12:20 +00:00
simon.kagstrom
3ba94e90c5 delay_cycles in 16 bits 2009-11-04 17:00:56 +00:00
simon.kagstrom
8964f2ec03 Add image generator and check for interestingness 2009-11-04 16:50:24 +00:00
simon.kagstrom
a16a2c3d18 Cleanup: Remove most references of "Network::is_master" and make it
non-static. C64::network_connection_state should be used instead
2009-11-04 16:43:47 +00:00
simon.kagstrom
3029688fc6 Some cleanup 2009-11-04 16:29:58 +00:00
simon.kagstrom
c7fddd94f6 Make that three columns instead 2009-11-03 20:36:41 +00:00
simon.kagstrom
5deb489b18 Keep countries in two columns 2009-11-03 20:21:52 +00:00
simon.kagstrom
e83e24f785 Add sound structures, fix build of menu.h 2009-11-03 17:27:21 +00:00
simon.kagstrom
6b27bcbb86 Generate html at startup 2009-11-03 17:26:28 +00:00
simon.kagstrom
45ee58ac8d (Untested) refactor menu code a bit - move stuff to menu.c instead 2009-11-02 06:36:25 +00:00
simon.kagstrom
2ee1b5a907 Heading 2009-11-02 06:35:31 +00:00
simon.kagstrom
b42a538329 Better HTML 2009-11-01 16:12:22 +00:00
simon.kagstrom
d5eec1ef2f Correct HTML generation (not finished) 2009-11-01 11:15:37 +00:00
simon.kagstrom
2c69ce49cf Correct network broker and remove printouts 2009-11-01 09:28:02 +00:00
simon.kagstrom
9d19e9c876 Fix network connection from the command-line 2009-11-01 08:44:34 +00:00
simon.kagstrom
958eddfd37 Correct struct unpack 2009-11-01 08:43:18 +00:00
simon.kagstrom
3518863b67 More networking work 2009-11-01 08:38:13 +00:00
simon.kagstrom
7be94b966a Rework network handling to let go of the server/client approach
You now connect and become server/client on demand.
2009-10-28 18:04:30 +00:00
simon.kagstrom
76c522249c Bump network protocol version 2009-10-28 17:49:30 +00:00
simon.kagstrom
0179f2dbf5 Implement new networking support for the broker: no need to connect
as client/server any more.
2009-10-28 17:48:49 +00:00
simon.kagstrom
a8385ec53c Use define 2009-10-27 16:59:05 +00:00
simon.kagstrom
24d5e6fa91 Fix build on host (no need to build the Frodo binary, it wont work anyway) 2009-10-27 16:55:14 +00:00
simon.kagstrom
51b44d48be Disable SAM for v11 2009-04-26 09:41:52 +00:00
simon.kagstrom
66cf5202e5 Quit back to the homebrew channel by default, but not if networking has been
enabled
2009-04-26 06:02:57 +00:00
simon.kagstrom
b90e393ac6 Rebind F10 to taunt 2009-04-26 05:49:17 +00:00
simon.kagstrom
4b9cd36929 Fix colors 2009-04-25 06:15:59 +00:00
simon.kagstrom
c356513c4e Correct handling of joystick swap 2009-04-20 18:39:46 +00:00
simon.kagstrom
d81a7452e7 Use stat instead of de->d_type - allows compilation for wii 2009-04-20 16:14:06 +00:00
simon.kagstrom
bd0cf31bf5 Correct saving of games 2009-04-19 14:12:54 +00:00
simon.kagstrom
bfa4addd70 Cleanup messages 2009-04-19 13:32:11 +00:00
simon.kagstrom
e9ef645cb0 Add titles 2009-04-19 13:24:27 +00:00
simon.kagstrom
ea81cac4c3 Make display smaller again 2009-04-19 13:12:13 +00:00
simon.kagstrom
430009723d Whitespace 2009-04-19 13:02:24 +00:00
simon.kagstrom
3f000cb343 Fix select_one 2009-04-19 13:00:59 +00:00
simon.kagstrom
b424598a6b Integrate new menu system from Holger 2009-04-19 12:57:29 +00:00
simon.kagstrom
fb7de09d4c Full screen 2009-04-19 08:26:37 +00:00
simon.kagstrom
f7ce5a861e Added ability to select a D64 file 2009-04-19 07:29:59 +00:00
simon.kagstrom
334bdd6f89 Show contents of d64's, fix code for reading D64s 2009-04-18 14:27:35 +00:00
simon.kagstrom
37235f0a4d Compile errors (will make a .c though) 2009-04-18 14:14:29 +00:00
simon.kagstrom
ba5f525aec Removed kbin 2009-04-18 12:41:20 +00:00
simon.kagstrom
ca91cdf86c Allow recursing into directories 2009-04-18 11:21:40 +00:00
simon.kagstrom
4c440d304e Cleanup file extension code 2009-04-18 10:35:03 +00:00
simon.kagstrom
4236bd59e2 Reading d64 files (not used yet) 2009-04-18 10:34:40 +00:00
simon.kagstrom
f7f838d04d Refactor selection of file names 2009-04-18 10:15:08 +00:00
simon.kagstrom
218fba704c Removed 2009-04-18 09:59:25 +00:00
simon.kagstrom
06992b8f2c Added (but will remove) 2009-04-18 09:58:55 +00:00
simon.kagstrom
25c14e4381 Must pass rc to _sized 2009-04-18 09:54:53 +00:00
simon.kagstrom
89be22ac69 Move more messages 2009-04-18 06:24:20 +00:00
simon.kagstrom
b74c99b2b5 Move menu texts to their own file 2009-04-18 06:14:52 +00:00
simon.kagstrom
964e70a627 Smaller options window 2009-04-18 06:05:13 +00:00
simon.kagstrom
65088e89f9 Imported Hogers menu.cpp (the rest is not active yet) 2009-04-18 05:54:33 +00:00
simon.kagstrom
a45b99e86c Added 2009-04-16 19:33:39 +00:00
simon.kagstrom
86e66fb0a6 Bump network protocol version, adjust 110 speed 2009-04-14 18:17:46 +00:00
simon.kagstrom
b539510a64 Correct quit 2009-04-13 16:35:16 +00:00
simon.kagstrom
729898019b Lower network kbps 2009-04-13 10:57:01 +00:00
simon.kagstrom
7a4666a35f Rearranged the menus 2009-04-13 10:46:30 +00:00
simon.kagstrom
029c4fc7a1 Correct displaying of text messages on the other end 2009-04-13 10:10:08 +00:00
simon.kagstrom
30b1d1601d Implemented text coding (but actual transfer doesn't work yet) 2009-04-13 08:57:31 +00:00
simon.kagstrom
e1926ecd0a Sound doesn't work, ignore it 2009-04-13 08:57:01 +00:00
simon.kagstrom
ae24458864 Handle text messages 2009-04-13 07:49:19 +00:00
simon.kagstrom
7b4b2fa3a9 Misc cleanup and fixes 2009-04-13 07:44:27 +00:00
simon.kagstrom
c159d07116 Convert keycode to character 2009-04-13 07:01:51 +00:00
simon.kagstrom
0680b1d8e0 Add text message stuff (not used yet), simplified some function calls 2009-04-13 06:31:12 +00:00
simon.kagstrom
d9171701f8 Whitespace 2009-04-13 05:45:20 +00:00
simon.kagstrom
7c216605bc Transfer only larger sound buffers 2009-04-11 11:50:10 +00:00
simon.kagstrom
852c6d546a Correct hostname 2009-04-10 12:01:22 +00:00
simon.kagstrom
a7fd065e14 Printouts be gone 2009-04-10 11:47:15 +00:00
simon.kagstrom
13ebe272a4 Add handling of RLE encoded sound data, correct handling of throttled data,
implement network transfer of sound for the wii. No testing.
2009-04-10 11:39:46 +00:00
simon.kagstrom
cb1da59a0d Depend on Linux 2009-04-10 08:08:28 +00:00
simon.kagstrom
42a6e19e0d Implemented sound transfer over the network (for Linux). This hasn't
been even the least tested yet, so don't try this code. You have been
warned!
2009-04-09 13:42:49 +00:00
simon.kagstrom
189833e30f Add timestamp 2009-04-08 16:33:10 +00:00
simon.kagstrom
15cc35e478 Fix check 2009-04-05 15:04:32 +00:00
simon.kagstrom
bb77c8f23b Fix the sound crack problem in v9 2009-04-05 14:38:04 +00:00
simon.kagstrom
7cccd49c40 Just set the name to unset 2009-04-04 13:04:15 +00:00
simon.kagstrom
41433858cc Use SDL_GetTicks for message time keeping 2009-04-04 11:28:22 +00:00
simon.kagstrom
4722d9f028 Good error message if no servers 2009-04-04 11:18:03 +00:00
simon.kagstrom
fb56639526 Handle joystick updates on the host as well 2009-04-04 10:21:35 +00:00
simon.kagstrom
9e3f75c4f4 Oops, take back broker name 2009-04-04 10:00:59 +00:00
simon.kagstrom
0c563eb137 Make the network server be non-blocking, i.e., allow continuing to play
while waiting for someone to connect. Also fix a buffer overflow in the
network transfer string...
2009-04-04 08:23:51 +00:00
simon.kagstrom
5ab6b38e6c Add versioning to the peer list 2009-04-04 07:40:17 +00:00
simon.kagstrom
ac1796e168 Count the total number of connections 2009-03-31 17:27:47 +00:00
simon.kagstrom
b23dbc74ab Oops, removed echo again... 2009-03-31 17:17:30 +00:00
simon.kagstrom
d5e5d740fd Produce HTML output from the server 2009-03-31 17:16:10 +00:00
simon.kagstrom
7d0453cd5c Dead code from NetworkUnix.h 2009-03-29 17:42:31 +00:00
simon.kagstrom
c730b2b185 No need to call net_init 2009-03-29 17:42:12 +00:00
simon.kagstrom
2cc9a827c3 Even more dead code 2009-03-29 17:31:48 +00:00
simon.kagstrom
70ad18ab1d Remove some dead code 2009-03-29 17:31:04 +00:00
simon.kagstrom
d7b06cdbef Forgot to use define :-) 2009-03-29 17:23:27 +00:00
simon.kagstrom
98b6ad2e55 No need to use net_bind 2009-03-29 16:46:55 +00:00
simon.kagstrom
2e429f2418 Better wording 2009-03-29 14:26:34 +00:00
simon.kagstrom
731faf709c Skip the country code 2009-03-29 13:02:25 +00:00
simon.kagstrom
794a8abf03 ... Correct ip->country again... 2009-03-29 13:00:44 +00:00
simon.kagstrom
6388778cfb Correct addr 2009-03-29 12:57:44 +00:00
simon.kagstrom
67b3abc248 Oops, correct ip lookup 2009-03-29 12:49:18 +00:00
simon.kagstrom
f56252c045 On the Wii, don't map arrow keys to the joystick 2009-03-29 12:45:12 +00:00
simon.kagstrom
2881a4111a Do country lookup and improve logging. And don't echo always! 2009-03-29 12:44:35 +00:00
simon.kagstrom
5c4e39cae7 Add hash-bang 2009-03-29 08:10:45 +00:00
simon.kagstrom
eb8344fe5b Rename to a bit more logical name... 2009-03-29 08:09:54 +00:00
simon.kagstrom
240994427e Make executable 2009-03-29 08:09:21 +00:00
simon.kagstrom
9965a8de82 Add explaining message 2009-03-29 08:07:07 +00:00
simon.kagstrom
1c3d1a45cc No debug output 2009-03-28 16:49:27 +00:00
simon.kagstrom
93b7c1eb4b Translate packet numbers to names 2009-03-28 15:23:54 +00:00
simon.kagstrom
bc6bc61cf0 Implemented ping / ack between the broker and the peers. Every 5 seconds
the broker will try to ping the peers, and if the peer hasn't replied
within 15 seconds, it is removed lazily when a client connects.
2009-03-28 15:18:50 +00:00
simon.kagstrom
c79f6195ad Small corrections of refreshing + byte ordering 2009-03-28 13:03:50 +00:00
simon.kagstrom
55cbd752c6 Also fix network byte order on the broker side 2009-03-28 13:02:24 +00:00
simon.kagstrom
f5f6f20113 More fixing of network byte ordering problems 2009-03-28 12:55:11 +00:00
simon.kagstrom
bd757f9479 Periodically refresh the screen if bandwidth allows 2009-03-28 12:37:06 +00:00
simon.kagstrom
61108c59a0 Correct marshalling of peers 2009-03-28 11:32:59 +00:00
simon.kagstrom
2536022038 Correct quit when the wii is using networking, move network init to Network.cpp 2009-03-28 09:34:31 +00:00
simon.kagstrom
d18dd25eb6 Use poll instead of select 2009-03-28 07:59:20 +00:00
simon.kagstrom
0916f0025d Send at most 4096 bytes so that wii networking *can* work. The Wii can now
connect at least, but the connection (through the broker) still doesn't
work. Well, well, might be some other problem.
2009-03-16 20:56:04 +00:00
simon.kagstrom
7ab7e97502 Some cleanup and refactoring 2009-03-09 19:28:20 +00:00
simon.kagstrom
835d481221 Correct some key binding issues 2009-03-09 18:54:43 +00:00
simon.kagstrom
0298df2061 Lots of wii network fixes, updated changelog 2009-03-08 19:02:19 +00:00
simon.kagstrom
ca77dcfb1d Handle classic analogue parts, refactoring 2009-03-08 09:46:20 +00:00
simon.kagstrom
470d14d24a Nunchuk fire, some cleanup 2009-03-08 09:03:45 +00:00
simon.kagstrom
b634d52637 Python 2.4 support 2009-03-08 09:00:13 +00:00
simon.kagstrom
f42186e0ef Add nunchuk support (Aaron Morris) 2009-03-08 08:59:29 +00:00
simon.kagstrom
2bbbe035ff Make the stuff compile for Wii, removed some cruft and correct the network key 2009-03-01 15:47:50 +00:00
simon.kagstrom
ae2a0a2fb2 Network cleanup (merge some stuff into the wii part) 2009-03-01 14:41:18 +00:00
simon.kagstrom
a81356aee7 Allow setting host on local connections 2009-03-01 14:27:17 +00:00
simon.kagstrom
cca6c03c00 Handle errors, better logging of sent messages 2009-03-01 14:26:40 +00:00
simon.kagstrom
34359ec7bb Implement the user interface for the network support. You can now
connect from the menu as well and also abort connections.
2009-03-01 11:04:47 +00:00
simon.kagstrom
4e2de3ac50 Whitespace 2009-03-01 11:03:29 +00:00
simon.kagstrom
e65ac515f7 Handle network settings in the menu 2009-03-01 08:27:53 +00:00
simon.kagstrom
fa543ac596 Log from the daemon 2009-03-01 07:47:22 +00:00
simon.kagstrom
b6010f9508 Classic + and - reversed 2009-03-01 07:15:53 +00:00
simon.kagstrom
efb8cbd0a1 Removed some printouts 2009-02-28 19:52:41 +00:00
simon.kagstrom
20d7d7cb87 Correct handling of server id to allow multiple connects 2009-02-28 19:42:11 +00:00
simon.kagstrom
ee84f8f727 First working version of the network broker + UDP hole punching. Well, at
least locally on the machine :-)
2009-02-28 18:45:26 +00:00
simon.kagstrom
aa7c41770b Correct shifted key bindings 2009-02-28 11:26:57 +00:00
simon.kagstrom
049a3846b4 Fix binding bug 2009-02-28 11:13:00 +00:00
simon.kagstrom
4c4c43991e Exit to the menu (for Wads) 2009-02-23 18:24:36 +00:00
simon.kagstrom
e92e166f77 Speed changes - AGAIN 2009-02-21 13:05:29 +00:00
simon.kagstrom
54c033bc61 Correct key bindings for directions 2009-02-21 09:49:20 +00:00
simon.kagstrom
f02a2d7055 Fix case when multiple buttons are bound to the same key 2009-02-21 09:01:33 +00:00
simon.kagstrom
ed13ce7073 Re-fix Wii compile 2009-02-21 07:59:45 +00:00
simon.kagstrom
4e90dad903 The network stuff should be finsihed now. But it's untested still 2009-02-16 19:20:00 +00:00
simon.kagstrom
18b0f333f5 Even more menu simplification 2009-02-13 07:58:33 +00:00
simon.kagstrom
b2ca587041 Implemented broker communication (untested, might not compile) 2009-02-13 07:57:40 +00:00
simon.kagstrom
debf526c38 Implement binding of keys to any wiimote direction or button. If it
works? Who knows :-)

Also some comments about what network should do.
2009-02-11 20:07:28 +00:00
simon.kagstrom
331320c6e5 Don't wait forever 2009-02-08 11:52:09 +00:00
simon.kagstrom
09bca43d1c Yet another refactoring of the network stuff. When will this end? Who knows? 2009-02-08 11:27:56 +00:00
simon.kagstrom
63e7cab880 Naming 2009-02-08 08:22:15 +00:00
simon.kagstrom
1daa74debe Remove some gibberish and german 2009-02-07 18:50:01 +00:00
simon.kagstrom
ef79dac020 Fixed network communication with UDP now. Connection is still ad-hoc so this
isn't really finished yet. Well, well. We'll see about that :-)
2009-02-07 18:24:50 +00:00
simon.kagstrom
1f1c7da4ef Unbreak Wii again 2009-02-07 11:28:29 +00:00
simon.kagstrom
b714e699fb lots of very broken network stuff 2009-02-07 11:08:50 +00:00
simon.kagstrom
138854cc88 Moved network data structures out of the union, added some future defines 2009-02-03 18:10:09 +00:00
simon.kagstrom
568e6eb5b7 Sound network stuff (not working yet) 2009-02-02 19:51:58 +00:00
simon.kagstrom
a0a3097dec Throttle before encoding display, otherwise updates can be missed 2009-02-02 18:36:51 +00:00
simon.kagstrom
8c73c900df Refactored the network implementation. It's now based on a
singleton/factory pattern where peers are equal (almost!). This has
simplified the code a bit and also in theory allows clients to
"re-export" connections to third/fourth/... parties.
2009-02-01 19:47:21 +00:00
simon.kagstrom
2ab9d452dc Prepare for the future... 2009-02-01 10:52:32 +00:00
simon.kagstrom
c593cd43dd Allow setting hostname 2009-02-01 09:04:46 +00:00
simon.kagstrom
1a29531f81 Added binding of joystick directions, add throttling info to the traffic meter 2009-01-31 07:51:23 +00:00
simon.kagstrom
f317afd4e8 Implemented traffic throttling (skipping frames if needed). There is
probably some work to do to get a steady transfer state working well.
2009-01-30 17:49:47 +00:00
simon.kagstrom
47f73f2b83 Minor refactoring, only send joystick data on changes 2009-01-30 15:37:15 +00:00
simon.kagstrom
5a0941ff7e Send joystick data over the network as well, games are mostly playable now 2009-01-29 21:11:04 +00:00
simon.kagstrom
3c3d364190 Actually receive disconnects, allow server updates 2009-01-29 20:48:58 +00:00
simon.kagstrom
1fc28d9bbf Small bug fix, close socket 2009-01-29 20:35:06 +00:00
simon.kagstrom
978f0ce537 Do network vblank last, correct spelling 2009-01-29 20:26:40 +00:00
simon.kagstrom
f8f469ddaa Disconnection code, some refactoring, sock opts (broken) 2009-01-29 18:04:31 +00:00
simon.kagstrom
0a40441b46 This is now dead code. Bye bye 2009-01-28 20:59:37 +00:00
simon.kagstrom
bdcad56361 Merged the display encoding 2009-01-28 20:57:48 +00:00
simon.kagstrom
5eca531105 Corrected the diff implementation, refactored the networking
implementation
2009-01-26 21:00:23 +00:00
simon.kagstrom
404dfdc409 Added diff update as well, more frequent kb/s updates 2009-01-25 10:07:51 +00:00
simon.kagstrom
c2a49cde0f Add display string for the transfer speed 2009-01-25 07:22:44 +00:00
simon.kagstrom
83d797ede3 Somewhat working networking (hey - hardcoding!) 2009-01-24 20:57:23 +00:00
simon.kagstrom
f31320b774 Various networking stuff 2009-01-24 15:48:43 +00:00
simon.kagstrom
7215eb3a07 Handle reset 2009-01-24 09:55:11 +00:00
simon.kagstrom
7611af0e16 Correct listing 2009-01-24 09:21:45 +00:00
simon.kagstrom
a2725ef19f Simplified menu code 2009-01-24 08:54:38 +00:00
simon.kagstrom
2ee93bab27 Add ability to type with the virtual keyboard 2009-01-24 08:36:47 +00:00
simon.kagstrom
a063dfe18d Simplified faking key sequences and do this through the virtual keyboard 2009-01-24 07:30:06 +00:00
simon.kagstrom
c7f2c6e943 ... and drawing of the string. All done 2009-01-23 21:07:53 +00:00
simon.kagstrom
f6dc84ce30 More C64-like kbd, layout fixes, code cleanup 2009-01-23 20:55:17 +00:00
simon.kagstrom
f3c87f4bc1 Unused get_string added, handle -2 2009-01-23 20:49:00 +00:00
simon.kagstrom
1ee6fe673e Even further simplfication 2009-01-23 18:29:09 +00:00
simon.kagstrom
fa07068d04 Handle empty spots more intelligently 2009-01-23 18:26:34 +00:00
simon.kagstrom
4799e2e91b No need to pass shifted out 2009-01-23 18:19:10 +00:00
simon.kagstrom
1e3e2778ab Moved key-to-string to virtualkeyboard 2009-01-22 21:05:04 +00:00
simon.kagstrom
7f262477fa Implemented virtual keyboard 2009-01-22 20:34:33 +00:00
simon.kagstrom
a12f84ac28 Added a virtual keyboard 2009-01-22 18:59:59 +00:00
simon.kagstrom
6fbc179cb1 Network variable fix, build it 2009-01-20 17:42:21 +00:00
simon.kagstrom
6656508cd0 Read only non-zero sized files 2009-01-20 17:21:17 +00:00
simon.kagstrom
435014ecdb Added, probably not be used 2009-01-19 06:44:19 +00:00
simon.kagstrom
dd756b9df9 Fixed wiimote HOME bug and removed yohanes SDL 2009-01-16 19:24:55 +00:00
simon.kagstrom
47cfca1a0c Fixed speed 2009-01-16 17:16:23 +00:00
simon.kagstrom
44ff382b17 Fixed t64 tempfile bug again and make a proper fix of the multiple-keybindings bug 2009-01-16 16:56:56 +00:00
simon.kagstrom
31ecb6920d Oops, fixed key press bug 2009-01-15 20:33:13 +00:00
simon.kagstrom
6a6cc774ca Fixed host makefile (build sc), clenaup 2009-01-15 19:33:52 +00:00
simon.kagstrom
c28060672c Fixed list disks 2009-01-15 17:33:55 +00:00
simon.kagstrom
23980fe396 No printouts please 2009-01-15 17:28:44 +00:00
simon.kagstrom
5ca8e056f4 Oops, corrected speed (...) 2009-01-14 20:45:20 +00:00
simon.kagstrom
dea652c4b6 More bindable keys, fixed Makefile 2009-01-14 20:34:54 +00:00
simon.kagstrom
674687554d No need to escape these... 2009-01-14 20:34:09 +00:00
simon.kagstrom
647f2b9f1f More autoload opts, some code cleanup 2009-01-14 19:59:14 +00:00
simon.kagstrom
4acdda22ef Save prefs with save games 2009-01-14 17:48:04 +00:00
simon.kagstrom
5f29cb10aa Oops. Remove printout 2009-01-14 17:32:50 +00:00
simon.kagstrom
f9ced0143e Show current key binding 2009-01-14 17:31:30 +00:00
simon.kagstrom
9e1a87b790 Deps 2009-01-14 17:30:53 +00:00
simon.kagstrom
e7d62d7186 Implemented 1541 emul 2009-01-14 06:39:48 +00:00
simon.kagstrom
f1a69d67b6 Better classic menu control 2009-01-13 19:02:39 +00:00
simon.kagstrom
2f24529488 Make frodo CVS the current trunk 2009-01-13 18:46:42 +00:00