Rev 109 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 109 | Rev 195 | ||
---|---|---|---|
Line 7... | Line 7... | ||
7 | ;; ;; |
7 | ;; ;; |
8 | ;; Compile with FASM for Menuet ;; |
8 | ;; Compile with FASM for Menuet ;; |
9 | ;; ;; |
9 | ;; ;; |
10 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
10 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
Line 11... | Line 11... | ||
11 | 11 | ||
Line 12... | Line 12... | ||
12 | version equ '0.3' |
12 | version equ '0.4' |
Line 13... | Line 13... | ||
13 | 13 | ||
Line 20... | Line 20... | ||
20 | dd START ; program start |
20 | dd START ; program start |
21 | dd I_END ; program image size |
21 | dd I_END ; program image size |
22 | dd 0x100000 ; required amount of memory |
22 | dd 0x100000 ; required amount of memory |
23 | dd 0x100000 |
23 | dd 0x100000 |
24 | dd 0,0 |
24 | dd 0,0 |
- | 25 | ||
25 | include "lang.inc" |
26 | include "lang.inc" |
26 | include "macros.inc" |
27 | ;include "macros.inc" |
Line 27... | Line 28... | ||
27 | 28 | ||
Line 28... | Line 29... | ||
28 | irc_server_ip db 192,168,1,1 |
29 | irc_server_ip db 83,149,74,246 ;server: kolibrios.org |
29 | 30 | ||
Line 30... | Line 31... | ||
30 | user_nick dd 4 ; length |
31 | user_nick dd 12 ; length |
31 | db 'airc ' ; string |
32 | db 'kolibri_user ' ; string |
Line 32... | Line 33... | ||
32 | 33 | ||
Line 33... | Line 34... | ||
33 | user_real_name dd 8 ; length |
34 | user_real_name dd 14 ; length |
Line 421... | Line 422... | ||
421 | 422 | ||
Line -... | Line 423... | ||
- | 423 | ||
- | 424 | start_user_list_at dd 0x0 |
|
- | 425 | ||
- | 426 | ||
- | 427 | recode_to_cp1251: |
|
- | 428 | push esi edx |
|
- | 429 | .loop: |
|
- | 430 | lodsb |
|
- | 431 | cmp al,0x80 |
|
- | 432 | jb @f |
|
- | 433 | and eax,0x7F |
|
- | 434 | mov al,[cp866_table+eax] |
|
- | 435 | @@: mov [esi-1],al |
|
Line 422... | Line 436... | ||
422 | 436 | dec edx |
|
Line 423... | Line 437... | ||
423 | start_user_list_at dd 0x0 |
437 | jnz .loop |
Line 499... | Line 513... | ||
499 | 513 | ||
500 | mov esi,send_string |
514 | mov esi,send_string |
501 | mov edx,[xpos] |
515 | mov edx,[xpos] |
Line -... | Line 516... | ||
- | 516 | inc edx |
|
- | 517 | ||
502 | inc edx |
518 | call recode_to_cp1251 |
503 | 519 | ||
504 | mov eax, 53 ; write message |
520 | mov eax, 53 ; write message |
505 | mov ebx, 7 |
521 | mov ebx, 7 |
Line 1628... | Line 1644... | ||
1628 | 1644 | ||
1629 | popa |
1645 | popa |
Line -... | Line 1646... | ||
- | 1646 | ret |
|
- | 1647 | ||
- | 1648 | ||
- | 1649 | cp1251_table: |
|
- | 1650 | db '?','?','?','?','?','?','?','?' , '?','?','?','?','?','?','?','?' ; 8 |
|
- | 1651 | db '?','?','?','?','?','?','?','?' , '?','?','?','?','?','?','?','?' ; 9 |
|
- | 1652 | db '?','?','?','?','?','?','?','?' , $F0,'?','?','?','?','?','?','?' ; A |
|
- | 1653 | db '?','?','?','?','?','?','?','?' , $F1,'?','?','?','?','?','?','?' ; B |
|
- | 1654 | db $80,$81,$82,$83,$84,$85,$86,$87 , $88,$89,$8A,$8B,$8C,$8D,$8E,$8F ; C |
|
- | 1655 | db $90,$91,$92,$93,$94,$95,$96,$97 , $98,$99,$9A,$9B,$9C,$9D,$9E,$9F ; D |
|
- | 1656 | db $A0,$A1,$A2,$A3,$A4,$A5,$A6,$A7 , $A8,$A9,$AA,$AB,$AC,$AD,$AE,$AF ; E |
|
- | 1657 | db $E0,$E1,$E2,$E3,$E4,$E5,$E6,$E7 , $E8,$E9,$EA,$EB,$EC,$ED,$EE,$EF ; F |
|
- | 1658 | ||
- | 1659 | cp866_table: |
|
- | 1660 | db $C0,$C1,$C2,$C3,$C4,$C5,$C6,$C7 , $C8,$C9,$CA,$CB,$CC,$CD,$CE,$CF ; 8 |
|
- | 1661 | db $D0,$D1,$D2,$D3,$D4,$D5,$D6,$D7 , $D8,$D9,$DA,$DB,$DC,$DD,$DE,$DF ; 9 |
|
- | 1662 | db $E0,$E1,$E2,$E3,$E4,$E5,$E6,$E7 , $E8,$E9,$EA,$EB,$EC,$ED,$EE,$EF ; A |
|
- | 1663 | db '?','?','?','?','?','?','?','?' , '?','?','?','?','?','?','?','?' ; B |
|
- | 1664 | db '?','?','?','?','?','?','?','?' , '?','?','?','?','?','?','?','?' ; C |
|
- | 1665 | db '?','?','?','?','?','?','?','?' , '?','?','?','?','?','?','?','?' ; D |
|
Line 1630... | Line 1666... | ||
1630 | ret |
1666 | db $F0,$F1,$F2,$F3,$F4,$F5,$F6,$F7 , $F8,$F9,$FA,$FB,$FC,$FD,$FE,$FF ; E |
Line 1631... | Line 1667... | ||
1631 | 1667 | db $A8,$B8,'?','?','?','?','?','?' , '?','?','?','?','?','?','?','?' ; F |
|
Line 1747... | Line 1783... | ||
1747 | 1783 | ||
1748 | popa |
1784 | popa |
Line 1749... | Line -... | ||
1749 | ret |
- | |
1750 | 1785 | ret |
|
Line 1751... | Line 1786... | ||
1751 | 1786 | ||
1752 | 1787 | ||
1753 | read_incoming_byte: |
1788 | read_incoming_byte: |
Line 1765... | Line 1800... | ||
1765 | mov eax, 53 |
1800 | mov eax, 53 |
1766 | mov ebx, 3 |
1801 | mov ebx, 3 |
1767 | mov ecx, [socket] |
1802 | mov ecx, [socket] |
1768 | int 0x40 |
1803 | int 0x40 |
Line -... | Line 1804... | ||
- | 1804 | ||
- | 1805 | cmp bl,0x80 |
|
- | 1806 | jb @f |
|
- | 1807 | and ebx,0x7F |
|
- | 1808 | mov bl,[cp1251_table+ebx] |
|
- | 1809 | @@: |
|
1769 | 1810 | ||
Line 1770... | Line 1811... | ||
1770 | mov ecx,0 |
1811 | mov ecx,0 |
Line 1771... | Line 1812... | ||
1771 | 1812 | ||
Line 1872... | Line 1913... | ||
1872 | main_button dd 0x6565cc |
1913 | main_button dd 0x6565cc |
Line 1873... | Line 1914... | ||
1873 | 1914 | ||
Line 1874... | Line 1915... | ||
1874 | 1915 | ||
1875 | text: |
1916 | text: |
1876 | 1917 | ||
1877 | db ' Real name : Joe User - change with eg /areal Jill User ' |
1918 | db ' Real name : KolibriOS User - change with eg /areal Jill User ' |
1878 | db ' Nick : AIRC - change with eg /anick Jill ' |
1919 | db ' Nick : kolibri_user - change with eg /anick Jill ' |
1879 | db ' Server : 192.168.1.1 - change with eg /aserv 192.168.1.24 ' |
1920 | db ' Server : 83.149.74.246 - change with eg /aserv 192.168.1.24 ' |
1880 | db ' ' |
1921 | db ' ' |
1881 | db ' 1) Open socket 2) Send userinfo Close socket ' |
1922 | db ' 1) Open socket 2) Send userinfo Close socket ' |
1882 | db ' ' |
1923 | db ' ' |
1883 | db ' Commands after established connection: ' |
1924 | db ' Commands after established connection: ' |
1884 | db ' ' |
1925 | db ' ' |
1885 | db ' /join #ChannelName - eg /join #menuet ' |
1926 | db ' /join #ChannelName - eg /join #general ' |
Line 1886... | Line 1927... | ||
1886 | db ' /part #ChannelName - eg /part #linux ' |
1927 | db ' /part #ChannelName - eg /part #windows ' |
Line 1887... | Line 1928... | ||
1887 | db ' /query Nickname - eg /query Mary ' |
1928 | db ' /query Nickname - eg /query Mary ' |
Line 2278... | Line 2319... | ||
2278 | action_header_blue db 10,'*** ',0 |
2319 | action_header_blue db 10,'*** ',0 |
2279 | action_header_red db 10,'*** ',0 |
2320 | action_header_red db 10,'*** ',0 |
Line 2280... | Line 2321... | ||
2280 | 2321 | ||
Line 2281... | Line 2322... | ||
2281 | action_header_short db 10,'* ',0 |
2322 | action_header_short db 10,'* ',0 |
2282 | 2323 | ||
2283 | has_left_channel db ' left channel ',0 |
2324 | has_left_channel db ' has left ',0 |
2284 | joins_channel db ' joined channel ',0 |
2325 | joins_channel db ' has joined ',0 |
2285 | is_now_known_as db ' is now known as ',0 |
2326 | is_now_known_as db ' is now known as ',0 |
2286 | has_quit_irc db ' has quit irc',0 |
2327 | has_quit_irc db ' has quit IRC',0 |
Line 2287... | Line 2328... | ||
2287 | sets_mode db ' sets mode ',0 |
2328 | sets_mode db ' sets mode ',0 |
2288 | kicked db ' kicked from ',0 |
2329 | kicked db ' kicked from ',0 |