Subversion Repositories Kolibri OS

Rev

Rev 4617 | Rev 4623 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 4617 Rev 4622
Line 45... Line 45...
45
        jmp     dword[edi]
45
        jmp     dword[edi]
Line 46... Line 46...
46
 
46
 
Line -... Line 47...
-
 
47
 
-
 
48
server_commands:
-
 
49
 
-
 
50
        dd      '001 ', cmd_justprint
-
 
51
        dd      '002 ', cmd_justprint
-
 
52
        dd      '003 ', cmd_justprint
-
 
53
        dd      '004 ', cmd_justprint
-
 
54
        dd      '005 ', cmd_justprint
-
 
55
 
-
 
56
        dd      '250 ', cmd_justprint
-
 
57
        dd      '251 ', cmd_justprint
-
 
58
        dd      '252 ', cmd_justprint
-
 
59
        dd      '253 ', cmd_justprint
-
 
60
        dd      '254 ', cmd_justprint
-
 
61
        dd      '255 ', cmd_justprint
-
 
62
 
47
 
63
        dd      '265 ', cmd_justprint
48
server_commands:
64
        dd      '266 ', cmd_justprint
49
 
65
 
50
        dd      '322 ', cmd_322         ; RPL_LIST
66
        dd      '322 ', cmd_322         ; RPL_LIST
51
        dd      '323 ', cmd_323         ; RPL_LISTEND
67
        dd      '323 ', cmd_323         ; RPL_LISTEND
52
        dd      '324 ', cmd_324 ;;;;
68
        dd      '324 ', cmd_justprint
53
        dd      '328 ', cmd_328         ; RPL_CHANNEL_URL
69
        dd      '328 ', cmd_justprint   ; RPL_CHANNEL_URL
54
        dd      '329 ', cmd_329
70
        dd      '329 ', cmd_justprint
55
        dd      '332 ', cmd_topic
71
        dd      '332 ', cmd_topic
56
        dd      '333 ', cmd_333         ; nickname and time of topic
72
        dd      '333 ', cmd_333         ; nickname and time of topic
57
        dd      '353 ', cmd_353         ; name reply
73
        dd      '353 ', cmd_353         ; name reply
58
        dd      '366 ', cmd_366         ; end of names list
74
        dd      '366 ', cmd_366         ; end of names list
59
        dd      '372 ', cmd_372         ; motd
75
        dd      '372 ', cmd_justprint   ; motd
60
        dd      '375 ', cmd_375         ; start of motd
76
        dd      '375 ', cmd_justprint   ; start of motd
-
 
77
        dd      '376 ', cmd_justprint   ; end of motd
61
        dd      '376 ', cmd_376         ; end of motd
78
        dd      '421 ', cmd_justprint   ; unknown command
62
        dd      '421 ', cmd_421         ; unknown command
79
        dd      '433 ', cmd_justprint   ; nickname already in use
63
        dd      '433 ', cmd_433         ; nickname already in use
80
 
64
        dd      'join', cmd_join
81
        dd      'join', cmd_join
65
        dd      'kick', cmd_kick
82
        dd      'kick', cmd_kick
Line 149... Line -...
149
 
-
 
150
 
-
 
151
 
166
 
152
 
167
 
153
 
-
 
154
cmd_324:
-
 
155
cmd_329:
-
 
156
cmd_328:
-
 
157
cmd_421:
168
 
-
 
169
 
-
 
170
 
158
cmd_372:
171
cmd_justprint:
-
 
172
 
Line 159... Line 173...
159
cmd_375:
173
        add     esi, 4
Line 160... Line -...
160
cmd_376:
-
 
161
cmd_433:
-
 
Line 162... Line 174...
162
        add     esi, 4
174
        call    skip_parameter
-
 
175
        call    print_text2
163
        jmp     cmd_notice.loop
176
        mov     esi, str_newline
164
 
177
        call    print_text2
165
cmd_notice:
178
 
Line -... Line 179...
-
 
179
        ret
-
 
180
 
-
 
181
 
-
 
182
cmd_notice:
166
 
183
 
167
        cmp     byte[servercommand], ':'
184
        if TIMESTAMP
168
        jne     .gogogo
185
        call    print_timestamp
169
 
186
        end if
170
        mov     byte [esi-1], 0
187
 
Line 182... Line 199...
182
        call    print_text2
199
        call    print_text2
183
        pop     esi
200
        pop     esi
Line 184... Line 201...
184
 
201
 
185
  .gogogo:
202
  .gogogo:
186
        add     esi, 6
-
 
187
 
-
 
188
  .loop:
-
 
189
        inc     esi
203
        add     esi, 6
190
        cmp     byte [esi], 0
-
 
191
        je      .fail
-
 
192
        cmp     byte [esi], ' '
-
 
193
        jne     .loop
-
 
194
 
-
 
195
  .loop2:
-
 
196
        inc     esi
204
        call    skip_parameter
197
        cmp     byte [esi], 0
-
 
198
        je      .fail
-
 
199
        cmp     byte [esi], ' '
-
 
200
        je      .loop2
-
 
201
        cmp     byte [esi], ':'
-
 
202
        je      .loop2
-
 
203
 
-
 
204
  .fail:
205
        call    skip_parameter
-
 
206
        call    print_text2
205
        call    print_text2
207
 
206
        mov     esi, str_newline
208
        mov     esi, str_newline
Line 207... Line 209...
207
        call    print_text2
209
        call    print_text2
Line 825... Line 827...
825
cmd_mode:
827
cmd_mode:
Line 826... Line 828...
826
 
828
 
827
        cmp     byte [esi+4], ' '
829
        cmp     byte [esi+4], ' '
828
        jne     .fail
830
        jne     .fail
-
 
831
        add     esi, 5  ; skip 'MODE '
829
        add     esi, 5  ; skip 'MODE '
832
        push    esi
830
        call    window_find
833
        call    window_find
831
        test    ebx, ebx
834
        test    ebx, ebx
-
 
835
        jz      .user
832
        jz      .fail
836
        mov     [esp], esi
833
        mov     [window_print], ebx
-
 
Line 834... Line 837...
834
        push    esi
837
        mov     [window_print], ebx
835
 
838
 
836
        if TIMESTAMP
839
        if TIMESTAMP
Line 851... Line 854...
851
        call    print_text2
854
        call    print_text2
Line 852... Line 855...
852
 
855
 
853
        mov     esi, str_newline
856
        mov     esi, str_newline
Line 854... Line 857...
854
        call    print_text2
857
        call    print_text2
Line 855... Line 858...
855
 
858
 
-
 
859
; TODO: keep track of user modes in username list
-
 
860
 
-
 
861
  .fail:
-
 
862
        ret
-
 
863
 
-
 
864
 
-
 
865
  .user:
-
 
866
        if TIMESTAMP
-
 
867
        call    print_timestamp
-
 
868
        end if
-
 
869
 
-
 
870
        mov     esi, mode_header
-
 
871
        call    print_text2
-
 
872
 
-
 
873
        mov     eax, [esp]
-
 
874
        mov     dl, ' '
-
 
875
        call    print_text
-
 
876
 
-
 
877
        mov     esi, sets_mode
-
 
878
        call    print_text2
-
 
879
 
-
 
880
        pop     esi
-
 
881
        call    skip_parameter
-
 
882
        call    print_text2
Line 856... Line 883...
856
;;; TODO: change username if needed
883
 
Line 857... Line 884...
857
 
884
        mov     esi, str_newline
Line 940... Line 967...
940
 
967
 
Line 941... Line 968...
941
 
968
 
942
cmd_333:
969
cmd_333:
943
 
970
 
Line 944... Line 971...
944
        add     esi, 4          ; skip '333 '
971
        add     esi, 4          ; skip '333 '
945
        call    skip_parameter               ;;;;
972
        call    skip_parameter
946
        call    window_open
973
        call    window_open
Line 954... Line 981...
954
        call    print_text2
981
        call    print_text2
Line 955... Line 982...
955
 
982
 
956
        mov     esi, str_setby
983
        mov     esi, str_setby
Line 957... Line -...
957
        call    print_text2
-
 
958
 
-
 
959
;        pop     esi
-
 
960
;        call    print_text2
984
        call    print_text2
961
 
985
 
962
        pop     eax
986
        pop     eax
Line 963... Line 987...
963
        mov     dl, '!'
987
        mov     dl, '!'