mirror of
https://github.com/bobbimanners/emailler.git
synced 2024-10-11 17:23:39 +00:00
removed 'line mode' from telnet
git-svn-id: http://svn.code.sf.net/p/netboot65/code@233 93682198-c243-4bdb-bd91-e943c89aac3b
This commit is contained in:
parent
7e2e09d8ef
commit
e5ef8fe406
@ -34,8 +34,6 @@
|
||||
.import telnet_port
|
||||
.import telnet_ip
|
||||
.import telnet_connect
|
||||
.import telnet_local_echo
|
||||
.import telnet_line_mode
|
||||
.import telnet_use_native_charset
|
||||
|
||||
.import url_ip
|
||||
@ -529,8 +527,6 @@ load_resource_into_buffer:
|
||||
ldax resource_port
|
||||
stax telnet_port
|
||||
lda #0
|
||||
sta telnet_local_echo
|
||||
sta telnet_line_mode
|
||||
sta telnet_use_native_charset
|
||||
|
||||
;if the username = '/n', then connect in native mode
|
||||
|
@ -8,8 +8,6 @@
|
||||
; 3) define a routine called 'exit_telnet'
|
||||
|
||||
.import telnet_connect
|
||||
.import telnet_local_echo
|
||||
.import telnet_line_mode
|
||||
.import telnet_use_native_charset
|
||||
.import telnet_port
|
||||
.import telnet_ip
|
||||
@ -83,42 +81,25 @@ telnet_main_entry:
|
||||
cmp #'p'
|
||||
beq @petscii_mode
|
||||
|
||||
cmp #'l'
|
||||
beq @line_mode
|
||||
cmp #'L'
|
||||
beq @line_mode
|
||||
|
||||
jmp @char_mode_input
|
||||
@vt100_mode:
|
||||
lda #0
|
||||
sta telnet_use_native_charset
|
||||
sta telnet_line_mode
|
||||
lda #1
|
||||
sta telnet_local_echo
|
||||
|
||||
.ifdef XMODEM_IN_TELNET
|
||||
lda #1
|
||||
sta xmodem_iac_escape
|
||||
.endif
|
||||
jmp @after_mode_set
|
||||
@petscii_mode:
|
||||
lda #1
|
||||
sta telnet_use_native_charset
|
||||
lda #0
|
||||
sta telnet_local_echo
|
||||
sta telnet_line_mode
|
||||
.ifdef XMODEM_IN_TELNET
|
||||
sta xmodem_iac_escape
|
||||
.endif
|
||||
jmp @after_mode_set
|
||||
@line_mode:
|
||||
lda #0
|
||||
sta telnet_use_native_charset
|
||||
.ifdef XMODEM_IN_TELNET
|
||||
sta xmodem_iac_escape
|
||||
.endif
|
||||
lda #1
|
||||
sta telnet_local_echo
|
||||
sta telnet_line_mode
|
||||
|
||||
.ifdef XMODEM_IN_TELNET
|
||||
lda #0
|
||||
sta xmodem_iac_escape
|
||||
.endif
|
||||
|
||||
@after_mode_set:
|
||||
|
||||
lda #147 ; 'CLR/HOME'
|
||||
@ -131,12 +112,7 @@ telnet_main_entry:
|
||||
ldax #petscii
|
||||
jmp @c_mode
|
||||
@v_mode:
|
||||
lda telnet_line_mode
|
||||
bne @l_mode
|
||||
ldax #vt100
|
||||
jmp @c_mode
|
||||
@l_mode:
|
||||
ldax #line
|
||||
@c_mode:
|
||||
jsr print_ascii_as_native
|
||||
ldax #mode
|
||||
@ -148,11 +124,10 @@ telnet_main_entry:
|
||||
connecting_in: .byte "connecting in ",0
|
||||
vt100: .byte "vt100",0
|
||||
petscii: .byte "petscii",0
|
||||
line: .byte "line",0
|
||||
mode: .byte " mode",10,0
|
||||
remote_host: .byte "hostname (leave blank to quit)",10,": ",0
|
||||
remote_port: .byte "port # (leave blank for default)",10,": ",0
|
||||
char_mode_prompt: .byte "mode - V=vt100, P=petscii, L=line",10,0
|
||||
char_mode_prompt: .byte "mode - V=vt100, P=petscii",10,0
|
||||
|
||||
|
||||
|
||||
|
@ -1,11 +1,7 @@
|
||||
;minimal telnet implementation (dumb terminal emulation only)
|
||||
;to use:
|
||||
;set the following variables - telnet_local_echo, telnet_line_mode,telnet_use_native_charset,telnet_port,telnet_ip
|
||||
;set the following variables - telnet_use_native_charset,telnet_port,telnet_ip
|
||||
;then call telnet_connect
|
||||
;sensible combinations of telnet_local_echo, telnet_line_mode,telnet_use_native_charset are:
|
||||
;for interacting with 'line at time' servers (smtp/pop3/http/gopher): telnet_local_echo=1, telnet_line_mode=1,telnet_use_native_charset=0
|
||||
;for logging in to a normal telnet server: telnet_local_echo=0, telnet_line_mode=0,telnet_use_native_charset=0
|
||||
;for logging in to a PETSCII BBS on a C64 : telnet_local_echo=0, telnet_line_mode=0,telnet_use_native_charset=1
|
||||
|
||||
|
||||
.include "../inc/common.i"
|
||||
@ -40,8 +36,6 @@
|
||||
.import ascii_to_native
|
||||
|
||||
.export telnet_connect
|
||||
.export telnet_local_echo
|
||||
.export telnet_line_mode
|
||||
.export telnet_use_native_charset
|
||||
.export telnet_port
|
||||
.export telnet_ip
|
||||
@ -84,20 +78,7 @@ telnet_connect:
|
||||
jsr print_cr
|
||||
lda #0
|
||||
sta connection_closed
|
||||
sta iac_response_buffer_length
|
||||
|
||||
lda telnet_use_native_charset
|
||||
bne @main_polling_loop
|
||||
|
||||
lda telnet_line_mode
|
||||
bne @main_polling_loop
|
||||
|
||||
|
||||
; ldax #initial_telnet_options_length
|
||||
; stax tcp_send_data_len
|
||||
; ldax #initial_telnet_options
|
||||
; jsr tcp_send
|
||||
|
||||
sta iac_response_buffer_length
|
||||
|
||||
@main_polling_loop:
|
||||
|
||||
@ -108,35 +89,6 @@ telnet_connect:
|
||||
jsr print
|
||||
rts
|
||||
@not_disconnected:
|
||||
lda telnet_line_mode
|
||||
beq @not_line_mode
|
||||
|
||||
ldy #40 ;max chars
|
||||
ldax #$0000
|
||||
jsr get_filtered_input
|
||||
stax buffer_ptr
|
||||
ldy #0
|
||||
@copy_one_char:
|
||||
lda (buffer_ptr),y
|
||||
jsr native_to_ascii
|
||||
beq @end_of_input_string
|
||||
sta scratch_buffer,y
|
||||
iny
|
||||
bne @copy_one_char
|
||||
@end_of_input_string:
|
||||
lda #$0d
|
||||
sta scratch_buffer,y
|
||||
iny
|
||||
lda #$0a
|
||||
sta scratch_buffer,y
|
||||
iny
|
||||
sty tcp_send_data_len
|
||||
lda #0
|
||||
sta tcp_send_data_len+1
|
||||
jsr print_cr
|
||||
jmp @send_char
|
||||
|
||||
@not_line_mode:
|
||||
|
||||
@inner_loop:
|
||||
jsr timer_read
|
||||
@ -270,10 +222,6 @@ telnet_callback:
|
||||
jmp @no_conversion_req
|
||||
:
|
||||
|
||||
lda telnet_line_mode
|
||||
beq :+
|
||||
jmp@convert_to_native
|
||||
:
|
||||
;if we get here, we are in ASCII 'char at a time' mode, so look for (and process) Telnet style IAC bytes
|
||||
lda telnet_state
|
||||
cmp #telnet_state_got_command
|
||||
@ -412,14 +360,10 @@ telnet_callback:
|
||||
jmp @add_iac_response
|
||||
|
||||
@will_echo:
|
||||
lda #0
|
||||
sta telnet_local_echo
|
||||
lda #$fd ;DO
|
||||
jmp @add_iac_response
|
||||
|
||||
@will_suppress_ga:
|
||||
lda #0
|
||||
sta telnet_line_mode
|
||||
lda #$fd ;DO
|
||||
jmp @add_iac_response
|
||||
|
||||
@ -519,8 +463,6 @@ telnet_timeout: .res 1
|
||||
connection_closed: .res 1
|
||||
telnet_use_native_charset: .res 1 ; 0 means all data is translated to/from NVT ASCII
|
||||
buffer_offset: .res 1
|
||||
telnet_local_echo: .res 1 ;0 should mean local echo is disabled - in fact at the moment we never do local echo except in 'line mode'
|
||||
telnet_line_mode: .res 1 ;do characters get sent after each keypress, or can a line be created/edited and then sent only when return is pressed?
|
||||
telnet_command: .res 1
|
||||
telnet_option: .res 1
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user