Subversion Repositories Kolibri OS

Rev

Rev 485 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 485 Rev 661
Line 4... Line 4...
4
;
4
;
5
;    Compile with FASM for Menuet
5
;    Compile with FASM for Menuet
6
;
6
;
Line 7... Line 7...
7
 
7
 
8
use32
8
use32
9
 org	0x0
9
 org    0x0
10
 db	'MENUET01'    ; header
10
 db     'MENUET01'    ; header
11
 dd	0x01	      ; header version
11
 dd     0x01          ; header version
12
 dd	START	      ; entry point
12
 dd     START         ; entry point
13
 dd	I_END	      ; image size
13
 dd     I_END         ; image size
14
 dd	I_END+0x10000 ; required memory
14
 dd     I_END+0x10000 ; required memory
15
 dd	I_END+0x10000 ; esp
15
 dd     I_END+0x10000 ; esp
Line 16... Line 16...
16
 dd	0x0 , 0x0     ; I_Param , I_Path
16
 dd     0x0 , 0x0     ; I_Param , I_Path
17
 
17
 
Line 18... Line 18...
18
 
18
 
Line 19... Line 19...
19
include 'lang.inc'
19
include 'lang.inc'
20
include '..\..\..\macros.inc'
20
include 'macros.inc'
21
 
21
 
22
START:				; start of execution
22
START:                          ; start of execution
Line 41... Line 41...
41
 
41
 
42
    mov     ebx, [socket_status]
42
    mov     ebx, [socket_status]
Line 43... Line 43...
43
    mov     [socket_status], eax
43
    mov     [socket_status], eax
44
 
44
 
Line 45... Line 45...
45
    cmp     eax, ebx
45
    cmp     eax, ebx
46
    je	    waitev
46
    je      waitev
Line 47... Line 47...
47
 
47
 
48
red:
48
red:
49
    call    draw_window
49
    call    draw_window
50
 
50
 
Line 51... Line 51...
51
waitev:
51
waitev:
52
    mov  eax,23 		; wait here for event
52
    mov  eax,23                 ; wait here for event
53
    mov  ebx,20
53
    mov  ebx,20
54
    mcall
54
    mcall
55
 
55
 
56
    cmp  eax,1			; redraw request ?
56
    cmp  eax,1                  ; redraw request ?
Line 57... Line 57...
57
    je	 red
57
    je   red
Line 58... Line 58...
58
    cmp  eax,2			; key in buffer ?
58
    cmp  eax,2                  ; key in buffer ?
59
    je	 key
59
    je   key
Line 103... Line 103...
103
    ; just reject them all.
103
    ; just reject them all.
104
    ; Telnet options start with the byte 0xff and are 3 bytes long.
104
    ; Telnet options start with the byte 0xff and are 3 bytes long.
Line 105... Line 105...
105
 
105
 
106
    mov     al, [telnetstate]
106
    mov     al, [telnetstate]
107
    cmp     al, 0
107
    cmp     al, 0
108
    je	    state0
108
    je      state0
109
    cmp     al, 1
109
    cmp     al, 1
110
    je	    state1
110
    je      state1
111
    cmp     al, 2
111
    cmp     al, 2
112
    je	    state2
112
    je      state2
Line 113... Line 113...
113
    jmp     hd001
113
    jmp     hd001
114
 
114
 
115
state0:
115
state0:
Line 136... Line 136...
136
    mov     esi, telnetrep
136
    mov     esi, telnetrep
137
    mcall
137
    mcall
138
    ret
138
    ret
Line 139... Line 139...
139
 
139
 
140
hd001:
140
hd001:
141
    cmp  bl,13				; BEGINNING OF LINE
141
    cmp  bl,13                          ; BEGINNING OF LINE
142
    jne  nobol
142
    jne  nobol
143
    mov  ecx,[pos]
143
    mov  ecx,[pos]
144
    add  ecx,1
144
    add  ecx,1
145
  boll1:
145
  boll1:
Line 152... Line 152...
152
    jne  boll1
152
    jne  boll1
153
    mov  [pos],ecx
153
    mov  [pos],ecx
154
    jmp  newdata
154
    jmp  newdata
155
  nobol:
155
  nobol:
Line 156... Line 156...
156
 
156
 
157
    cmp  bl,10				  ; LINE DOWN
157
    cmp  bl,10                            ; LINE DOWN
158
    jne  nolf
158
    jne  nolf
159
   addx1:
159
   addx1:
160
    add  [pos],dword 1
160
    add  [pos],dword 1
161
    mov  eax,[pos]
161
    mov  eax,[pos]
Line 166... Line 166...
166
    jnz  addx1
166
    jnz  addx1
167
    mov  eax,[pos]
167
    mov  eax,[pos]
168
    jmp  cm1
168
    jmp  cm1
169
  nolf:
169
  nolf:
Line 170... Line 170...
170
 
170
 
171
    cmp  bl,8				 ; BACKSPACE
171
    cmp  bl,8                            ; BACKSPACE
172
    jne  nobasp
172
    jne  nobasp
173
    mov  eax,[pos]
173
    mov  eax,[pos]
174
    dec  eax
174
    dec  eax
175
    mov  [pos],eax
175
    mov  [pos],eax
176
    mov  [eax+text],byte 32
176
    mov  [eax+text],byte 32
177
    mov  [eax+text+60*80],byte 0
177
    mov  [eax+text+60*80],byte 0
178
    jmp  newdata
178
    jmp  newdata
Line 179... Line 179...
179
   nobasp:
179
   nobasp:
180
 
180
 
181
    cmp  bl,15				 ; CHARACTER
181
    cmp  bl,15                           ; CHARACTER
182
    jbe  newdata
182
    jbe  newdata
183
    mov  eax,[pos]
183
    mov  eax,[pos]
184
    mov  [eax+text],bl
184
    mov  [eax+text],bl
185
    mov  eax,[pos]
185
    mov  eax,[pos]
186
    add  eax,1
186
    add  eax,1
187
  cm1:
187
  cm1:
188
    mov  ebx,[scroll+4]
188
    mov  ebx,[scroll+4]
189
    imul ebx,80
189
    imul ebx,80
190
    cmp  eax,ebx
190
    cmp  eax,ebx
191
    jb	 noeaxz
191
    jb   noeaxz
192
    mov  esi,text+80
192
    mov  esi,text+80
193
    mov  edi,text
193
    mov  edi,text
194
    mov  ecx,ebx
194
    mov  ecx,ebx
Line 199... Line 199...
199
  noeaxz:
199
  noeaxz:
200
    mov  [pos],eax
200
    mov  [pos],eax
201
  newdata:
201
  newdata:
202
    ret
202
    ret
Line 203... Line 203...
203
 
203
 
204
  key:				; KEY
204
  key:                          ; KEY
205
    mov  eax,2			; send to modem
205
    mov  eax,2                  ; send to modem
Line 206... Line 206...
206
    mcall
206
    mcall
207
 
207
 
208
    mov     ebx, [socket_status]
208
    mov     ebx, [socket_status]
Line 209... Line 209...
209
    cmp     ebx, 4		; connection open?
209
    cmp     ebx, 4              ; connection open?
210
    jne     still		; no, so ignore key
210
    jne     still               ; no, so ignore key
211
 
211
 
212
    shr  eax,8
212
    shr  eax,8
213
    cmp  eax,178		; ARROW KEYS
213
    cmp  eax,178                ; ARROW KEYS
214
    jne  noaup
214
    jne  noaup
215
    mov  al,'A'
215
    mov  al,'A'
Line 238... Line 238...
238
 
238
 
Line 239... Line 239...
239
    call    to_modem
239
    call    to_modem
Line 240... Line 240...
240
 
240
 
241
    jmp  still
241
    jmp  still
242
 
242
 
243
  button:			; BUTTON
243
  button:                       ; BUTTON
244
    mov  eax,17
244
    mov  eax,17
Line 245... Line 245...
245
    mcall
245
    mcall
246
    cmp  ah,1			; CLOSE PROGRAM
246
    cmp  ah,1                   ; CLOSE PROGRAM
247
    jne  noclose
247
    jne  noclose
248
 
248
 
Line 249... Line 249...
249
    mov  eax,53
249
    mov  eax,53
250
    mov  ebx,8
250
    mov  ebx,8
251
    mov  ecx,[socket]
251
    mov  ecx,[socket]
252
    mcall
252
    mcall
253
 
253
 
Line 254... Line 254...
254
     or   eax,-1
254
     or   eax,-1
255
     mcall
255
     mcall
256
  noclose:
256
  noclose:
Line 265... Line 265...
265
    mov   edi,ip_address
265
    mov   edi,ip_address
266
    xor   eax,eax
266
    xor   eax,eax
267
   ip1:
267
   ip1:
268
    inc   esi
268
    inc   esi
269
    cmp   [esi],byte '0'
269
    cmp   [esi],byte '0'
270
    jb	  ip2
270
    jb    ip2
271
    cmp   [esi],byte '9'
271
    cmp   [esi],byte '9'
272
    jg	  ip2
272
    jg    ip2
273
    imul  eax,10
273
    imul  eax,10
274
    movzx ebx,byte [esi]
274
    movzx ebx,byte [esi]
275
    sub   ebx,48
275
    sub   ebx,48
276
    add   eax,ebx
276
    add   eax,ebx
277
    jmp   ip1
277
    jmp   ip1
Line 285... Line 285...
285
 
285
 
Line 286... Line 286...
286
 
286
 
287
    jmp     still
287
    jmp     still
288
 
288
 
Line 289... Line 289...
289
notip:
289
notip:
290
    cmp     ah, 3		; set port
290
    cmp     ah, 3               ; set port
291
    jne     notport
291
    jne     notport
Line 298... Line 298...
298
    mov   edi,port
298
    mov   edi,port
299
    xor   eax,eax
299
    xor   eax,eax
300
   ip11:
300
   ip11:
301
    inc   esi
301
    inc   esi
302
    cmp   [esi],byte '0'
302
    cmp   [esi],byte '0'
303
    jb	  ip21
303
    jb    ip21
304
    cmp   [esi],byte '9'
304
    cmp   [esi],byte '9'
305
    jg	  ip21
305
    jg    ip21
306
    imul  eax,10
306
    imul  eax,10
307
    movzx ebx,byte [esi]
307
    movzx ebx,byte [esi]
308
    sub   ebx,48
308
    sub   ebx,48
309
    add   eax,ebx
309
    add   eax,ebx
310
    jmp   ip11
310
    jmp   ip11
Line 316... Line 316...
316
 
316
 
Line 317... Line 317...
317
 
317
 
318
    jmp     still
318
    jmp     still
319
 
319
 
Line 320... Line 320...
320
notport:
320
notport:
321
    cmp     ah, 4		; connect
321
    cmp     ah, 4               ; connect
322
    jne     notcon
322
    jne     notcon
323
 
323
 
Line 324... Line 324...
324
    mov     eax, [socket_status]
324
    mov     eax, [socket_status]
Line 325... Line 325...
325
    cmp     eax, 4
325
    cmp     eax, 4
326
    je	   still
326
    je     still
327
    call    connect
327
    call    connect
Line 328... Line 328...
328
 
328
 
329
    jmp     still
329
    jmp     still
Line 330... Line 330...
330
 
330
 
331
notcon:
331
notcon:
332
    cmp     ah,5		; disconnect
332
    cmp     ah,5                ; disconnect
Line 333... Line 333...
333
    jne     notdiscon
333
    jne     notdiscon
334
 
334
 
Line 374... Line 374...
374
    mov     esi, tx_buff
374
    mov     esi, tx_buff
375
    mcall
375
    mcall
376
    pop     bx
376
    pop     bx
377
    mov     al, [echo]
377
    mov     al, [echo]
378
    cmp     al, 0
378
    cmp     al, 0
379
    je	    tm_001
379
    je      tm_001
Line 380... Line 380...
380
 
380
 
381
    push    bx
381
    push    bx
382
    call    handle_data
382
    call    handle_data
Line 407... Line 407...
407
 
407
 
408
 
408
 
Line 409... Line 409...
409
connect:
409
connect:
Line 410... Line 410...
410
    pusha
410
    pusha
411
 
411
 
412
 mov	 ecx, 1000  ; local port starting at 1000
412
 mov     ecx, 1000  ; local port starting at 1000
413
 
413
 
414
getlp:
414
getlp:
415
 inc	 ecx
415
 inc     ecx
416
 push ecx
416
 push ecx
417
 mov	 eax, 53
417
 mov     eax, 53
418
 mov	 ebx, 9
418
 mov     ebx, 9
Line 419... Line 419...
419
 mcall
419
 mcall
420
 pop	 ecx
420
 pop     ecx
421
 cmp	 eax, 0   ; is this local port in use?
421
 cmp     eax, 0   ; is this local port in use?
422
 jz  getlp	; yes - so try next
422
 jz  getlp      ; yes - so try next
Line 429... Line 429...
429
    shl     edx, 8
429
    shl     edx, 8
430
    mov     dl, [ip_address + 1]
430
    mov     dl, [ip_address + 1]
431
    shl     edx, 8
431
    shl     edx, 8
432
    mov     dl, [ip_address]
432
    mov     dl, [ip_address]
433
    mov     esi, edx
433
    mov     esi, edx
434
    movzx   edx, word [port]	  ; telnet port id
434
    movzx   edx, word [port]      ; telnet port id
435
    mov     edi,1      ; active open
435
    mov     edi,1      ; active open
436
    mcall
436
    mcall
437
    mov     [socket], eax
437
    mov     [socket], eax
Line 438... Line 438...
438
 
438
 
Line 453... Line 453...
453
 
453
 
454
    mov  eax,12
454
    mov  eax,12
455
    mov  ebx,1
455
    mov  ebx,1
Line 456... Line 456...
456
    mcall
456
    mcall
457
 
457
 
458
    xor  eax,eax		     ; DRAW WINDOW
458
    xor  eax,eax                     ; DRAW WINDOW
459
    mov  ebx,100*65536+491 + 8 +15
459
    mov  ebx,100*65536+491 + 8 +15
460
    mov  ecx,100*65536+270 + 20     ; 20 for status bar
460
    mov  ecx,100*65536+270 + 20     ; 20 for status bar
461
    mov  edx,0x13000000
461
    mov  edx,0x14000000
Line 462... Line 462...
462
    mov  edi,title
462
    mov  edi,title
463
    mcall
463
    mcall
464
 
464
 
465
    ; draw status bar
465
    ; draw status bar
466
    mov     eax, 13
466
    mov     eax, 13
467
    mov     ebx, 4*65536+484 + 8 +15
467
    mov     ebx, 4*65536+484 + 8 +15
Line 468... Line 468...
468
    mov     ecx, 270*65536 + 3
468
    mov     ecx, 270*65536 + 3
469
    mov     edx, 0x00557799
469
    mov     edx, 0x00557799
470
    mcall
470
    mcall
471
 
471
 
472
    mov  eax,8			   ; BUTTON 2: SET IP
472
    mov  eax,8                     ; BUTTON 2: SET IP
473
    mov  ebx,4*65536+70
473
    mov  ebx,4*65536+70
Line 474... Line 474...
474
    mov  ecx,273*65536+12
474
    mov  ecx,273*65536+12
475
    mov     esi, 0x00557799
475
    mov     esi, 0x00557799
476
    mov  edx,2
476
    mov  edx,2
477
    mcall
477
    mcall
478
 
478
 
479
    mov  eax,4			   ; Button text
479
    mov  eax,4                     ; Button text
Line 480... Line 480...
480
    mov  ebx,6*65536+276
480
    mov  ebx,6*65536+276
481
    mov  ecx,0x00ffffff
481
    mov  ecx,0x00ffffff
482
    mov  edx,setipt
482
    mov  edx,setipt
483
    mov  esi,setiplen-setipt
483
    mov  esi,setiplen-setipt
484
    mcall
484
    mcall
485
 
485
 
486
 
486
 
487
    mov  eax,47
487
    mov  eax,47
488
    mov  edi,ip_address 	    ; display IP address
488
    mov  edi,ip_address             ; display IP address
489
    mov  edx,78*65536+276
489
    mov  edx,78*65536+276
490
    mov  esi,0x00ffffff
490
    mov  esi,0x00ffffff
491
    mov  ebx,3*65536
491
    mov  ebx,3*65536
Line 492... Line 492...
492
  ipdisplay:
492
  ipdisplay:
493
    movzx ecx,byte [edi]
493
    movzx ecx,byte [edi]
494
    mcall
494
    mcall
495
    add  edx,6*4*65536
495
    add  edx,6*4*65536
496
    inc  edi
496
    inc  edi
497
    cmp  edi,ip_address+4
497
    cmp  edi,ip_address+4
Line 498... Line 498...
498
    jb	 ipdisplay
498
    jb   ipdisplay
499
 
499
 
500
    mov  eax,8			   ; BUTTON 3: SET PORT
500
    mov  eax,8                     ; BUTTON 3: SET PORT
501
    mov  ebx,173*65536+38
501
    mov  ebx,173*65536+38
502
    mov  ecx,273*65536+12
502
    mov  ecx,273*65536+12
503
    mov  edx,3
503
    mov  edx,3
Line 504... Line 504...
504
    mov     esi, 0x00557799
504
    mov     esi, 0x00557799
505
    mcall
505
    mcall
506
 
506
 
507
    mov  eax,4			   ; Button text
507
    mov  eax,4                     ; Button text
508
    mov  ebx,178*65536+276
508
    mov  ebx,178*65536+276
509
    mov  ecx,0x00ffffff
509
    mov  ecx,0x00ffffff
Line 510... Line 510...
510
    mov  edx,setportt
510
    mov  edx,setportt
511
    mov  esi,setportlen-setportt
511
    mov  esi,setportlen-setportt
512
    mcall
512
    mcall
513
 
513
 
514
 
514
 
515
    mov  edx,216*65536+276	     ; display port
515
    mov  edx,216*65536+276           ; display port
Line 516... Line 516...
516
    mov  esi,0x00ffffff
516
    mov  esi,0x00ffffff
517
    mov  ebx,4*65536
517
    mov  ebx,4*65536
518
    mov  eax,47
518
    mov  eax,47
519
    movzx  ecx,word [port]
519
    movzx  ecx,word [port]
520
    mcall
520
    mcall
521
 
521
 
Line 522... Line 522...
522
    mov  eax,8			   ; BUTTON 4: Connect
522
    mov  eax,8                     ; BUTTON 4: Connect
523
    mov  ebx,250*65536+50
523
    mov  ebx,250*65536+50
524
    mov  ecx,273*65536+12
524
    mov  ecx,273*65536+12
525
    mov     esi, 0x00557799
525
    mov     esi, 0x00557799
526
    mov  edx,4
526
    mov  edx,4
527
    mcall
527
    mcall
Line 528... Line 528...
528
 
528
 
529
    mov  eax,4			   ; Button text
529
    mov  eax,4                     ; Button text
530
    mov  ebx,255*65536+276
530
    mov  ebx,255*65536+276
531
    mov  ecx,0x00ffffff
531
    mov  ecx,0x00ffffff
532
    mov  edx,cont
532
    mov  edx,cont
533
    mov  esi,conlen-cont
533
    mov  esi,conlen-cont
Line 534... Line 534...
534
    mcall
534
    mcall
535
 
535
 
536
 
536
 
537
    mov  eax,8			   ; BUTTON 5: disconnect
537
    mov  eax,8                     ; BUTTON 5: disconnect
538
    mov  ebx,303*65536+70
538
    mov  ebx,303*65536+70
539
    mov  ecx,273*65536+12
539
    mov  ecx,273*65536+12
540
    mov  edx,5
540
    mov  edx,5
541
    mov     esi, 0x00557799
541
    mov     esi, 0x00557799
Line 542... Line 542...
542
    mcall
542
    mcall
543
 
543
 
544
 
544
 
545
    mov  eax,4			   ; Button text
545
    mov  eax,4                     ; Button text
Line 546... Line 546...
546
    mov  ebx,307*65536+276
546
    mov  ebx,307*65536+276
547
    mov  ecx,0x00ffffff
547
    mov  ecx,0x00ffffff
548
    mov  edx,dist
548
    mov  edx,dist
549
    mov  esi,dislen-dist
549
    mov  esi,dislen-dist
550
    mcall
550
    mcall
551
 
551
 
Line 579... Line 579...
579
    jne     peo
579
    jne     peo
580
    mov  edx,echoot
580
    mov  edx,echoot
581
    mov  esi,echoolen-echoot
581
    mov  esi,echoolen-echoot
Line 582... Line 582...
582
 
582
 
583
peo:
583
peo:
584
    mov  eax,4			   ; Button text
584
    mov  eax,4                     ; Button text
585
    mov  ebx,463*65536+276
585
    mov  ebx,463*65536+276
586
    mov  ecx,0x00ffffff
586
    mov  ecx,0x00ffffff
Line 620... Line 620...
620
    mov  [esi+30*80],cl
620
    mov  [esi+30*80],cl
Line 621... Line 621...
621
 
621
 
Line 622... Line 622...
622
    ; erase character
622
    ; erase character
623
 
623
 
624
    pusha
624
    pusha
625
    mov     edx, 0		    ; bg colour
625
    mov     edx, 0                  ; bg colour
626
    mov     ecx, ebx
626
    mov     ecx, ebx
627
    add     ecx, 26
627
    add     ecx, 26
628
    shl     ecx, 16
628
    shl     ecx, 16
Line 654... Line 654...
654
  noletter:
654
  noletter:
Line 655... Line 655...
655
 
655
 
656
    add  esi,1
656
    add  esi,1
657
    add  eax,6
657
    add  eax,6
658
    cmp  eax,80*6
658
    cmp  eax,80*6
659
    jb	 newletter
659
    jb   newletter
660
    mov  eax,0
660
    mov  eax,0
661
    add  ebx,10
661
    add  ebx,10
662
    cmp  ebx,24*10
662
    cmp  ebx,24*10
Line 663... Line 663...
663
    jb	 newletter
663
    jb   newletter
664
 
664
 
Line 684... Line 684...
684
    jne  read_done
684
    jne  read_done
685
    mov  eax,2
685
    mov  eax,2
686
    mcall
686
    mcall
687
    shr  eax,8
687
    shr  eax,8
688
    cmp  eax,13
688
    cmp  eax,13
689
    je	 read_done
689
    je   read_done
690
    cmp  eax,8
690
    cmp  eax,8
691
    jnz  nobsl
691
    jnz  nobsl
692
    cmp  edi,string
692
    cmp  edi,string
693
    jz	 f11
693
    jz   f11
694
    sub  edi,1
694
    sub  edi,1
695
    mov  [edi],byte '_'
695
    mov  [edi],byte '_'
696
    call print_text
696
    call print_text
697
    jmp  f11
697
    jmp  f11
698
  nobsl:
698
  nobsl:
699
    cmp  eax,dword 31
699
    cmp  eax,dword 31
700
    jbe  f11
700
    jbe  f11
701
    cmp  eax,dword 95
701
    cmp  eax,dword 95
702
    jb	 keyok
702
    jb   keyok
703
    sub  eax,32
703
    sub  eax,32
704
  keyok:
704
  keyok:
705
    mov  [edi],al
705
    mov  [edi],al
706
    call print_text
706
    call print_text
Line 748... Line 748...
748
 
748
 
Line 749... Line 749...
749
 
749
 
750
 
750
 
Line 751... Line 751...
751
; DATA AREA
751
; DATA AREA
752
 
752
 
753
telnetrep	db 0xff,0xfc,0x00
753
telnetrep       db 0xff,0xfc,0x00
Line 754... Line 754...
754
telnetstate	db 0
754
telnetstate     db 0
Line 755... Line 755...
755
 
755
 
756
string_length  dd    16
756
string_length  dd    16
757
string_x       dd    200
757
string_x       dd    200
758
string_y       dd    60
758
string_y       dd    60
759
 
759
 
760
string	       db    '________________'
760
string         db    '________________'
761
 
761
 
762
tx_buff 	db  0, 10
762
tx_buff         db  0, 10
763
ip_address	db  001,002,003,004
763
ip_address      db  001,002,003,004
764
port		db  0,0
764
port            db  0,0
765
echo		db  0
765
echo            db  0
766
socket		dd  0x0
766
socket          dd  0x0
767
socket_status	dd  0x0
767
socket_status   dd  0x0
768
pos		dd  80 * 1
768
pos             dd  80 * 1
769
scroll		dd  1
769
scroll          dd  1
770
		dd  24
770
                dd  24
771
wcolor		dd  0x000000
771
wcolor          dd  0x000000
772
title		db  'Telnet v0.1',0
772
title           db  'Telnet v0.1',0
773
setipt		db  'IP Address:    .   .   .'
773
setipt          db  'IP Address:    .   .   .'
774
setiplen:
774
setiplen:
775
setportt	db  'Port:'
775
setportt        db  'Port:'
776
setportlen:
776
setportlen:
777
cont		db  'Connect'
777
cont            db  'Connect'
778
conlen:
778
conlen:
779
dist		db  'Disconnect'
779
dist            db  'Disconnect'
780
dislen:
780
dislen:
781
contt		db  'Connected'
781
contt           db  'Connected'
Line 782... Line 782...
782
contlen:
782
contlen: