Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

slipd bugs #59

Open
fachat opened this issue Apr 16, 2020 · 1 comment
Open

slipd bugs #59

fachat opened this issue Apr 16, 2020 · 1 comment
Labels
bug Something isn't working

Comments

@fachat
Copy link
Owner

fachat commented Apr 16, 2020

  • slipd libip routines seem to be buggy still - very weird effects!
    I have no idea where they come from. When I start hunting one, it
    disappears and another pops up. Amongs them were:

    • closing telnet seems to set nthreads in kernel tables to $ff!!!!
    • also opening a telnet connection prints some weird characters on the
      wrong screen (stream gets "$ff $ff $c6 $07 $07 $07..." bytes sent,
      I have no idea where from...)
    • telnet works on telnet port somehow - bug hangs if streams are closed...
      should comply to rfc1143
    • httpd doesn't work although using almost all the same routines as
      rsh which work
    • SC_ESTAT does not seem to recognize E_EOF the same way as SC_STAT?
      (slipd, in rsh.a65, label newpkt)
      I have found and fixed a bug in the lib6502 fread/fwrite that could
      probably have caused this bug, but have not (yet) checked this.
  • using inet apps without registering an inet task blocks those programs
    (kernel problem as not-registered task is not recognized)

  • listen does not check if port already in use
    also there is no way to free listenports in use by crashed/killed
    programs - probably when reuse, overwrite old listenport such
    that table does not fill up?

  • telnet doesn't really implement local echo mode.

  • slipd uses accesses to $dc** (C64 CIA timers) to generate initial
    pseudo-random sequence numbers.

  • when getting tcp signal, set error flag in associated streams

  • SLIPD: wwwroot path given to chdir, but not used when opening a file;
    only the first letter is used as drive.

@fachat fachat added the bug Something isn't working label Apr 16, 2020
@fachat
Copy link
Owner Author

fachat commented Apr 12, 2024

When running slipd with

ontty a:video2 slipd a:ser1

on the c64, sometimes it hangs in an infinite loop like this:

(C:$9fa1) n
.C:9fa3  24 0E       BIT $0E        - A:18 X:9F Y:03 SP:f6 .V-B.I.C  585709490
(C:$9fa3) 
.C:9fa5  10 FA       BPL $9FA1      - A:18 X:9F Y:03 SP:f6 .V-B.I.C  585709493
(C:$9fa5) 
.C:9fa1  A9 18       LDA #$18       - A:18 X:9F Y:03 SP:f6 .V-B.I.C  585709496
(C:$9fa1) 
.C:9fa3  24 0E       BIT $0E        - A:18 X:9F Y:03 SP:f6 .V-B.I.C  585709498

Where $9fa1 is "nmi_off" (in block 51).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant