home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #20 / NN_1992_20.iso / spool / comp / sys / atari / 8bit / 4570 < prev    next >
Encoding:
Internet Message Format  |  1992-09-08  |  2.4 KB

  1. Path: sparky!uunet!portal!cup.portal.com!Rick_Michael_Cortese
  2. From: Rick_Michael_Cortese@cup.portal.com
  3. Newsgroups: comp.sys.atari.8bit
  4. Subject: Re: Connecting an RS232 modem to an Atari?
  5. Message-ID: <65469@cup.portal.com>
  6. Date: Tue,  8 Sep 92 11:27:50 PDT
  7. Organization: The Portal System (TM)
  8. References: <1992Sep7.231030.7510@constellation.ecn.uoknor.edu>
  9.   <65456@cup.portal.com>
  10. Lines: 124
  11.  
  12. 10 ;RS-232 300 BAUD RECIEVE BY
  13. 20 ;Rick Cortese 2/21/91
  14. 30 ;ASM ,,#D:RECIEVE.OBJ
  15. 40  *=$600
  16. 50 PTR =   $CB
  17. 60 ;SIZE AKA FR0
  18. 70 SIZE =  $D4
  19. 80 VAR =   $CF
  20. 90 PORTA = $D300
  21. 0100 NMIEN = $D40E
  22. 0110 DMACTL = $D400
  23. 0120 BAUD =  300
  24. 0130 INIT
  25. 0140  PLA
  26. 0150  PLA
  27. 0160  STA PTR+1
  28. 0170  PLA
  29. 0180  STA PTR
  30. 0190  LDA #00
  31. 0200  STA NMIEN
  32. 0210  STA DMACTL
  33. 0220  STA SIZE
  34. 0230  STA SIZE+1
  35. 0240  LDA #255
  36. 0250  STA 764
  37. 0260 ;MAIN LOOP THAT CHECKS EVERYTHING
  38. 0270 L1
  39. 0280  LDA 764
  40. 0290  CMP #255
  41. 0300  BNE BYE
  42. 0310  JSR CHECKIT
  43. 0320  JMP L1
  44. 0330 ;YOU GET HERE WHEN YOU PRESS
  45. 0340 ;         A KEY
  46. 0350 BYE
  47. 0360  LDA #$FF
  48. 0370  STA NMIEN
  49. 0380  STA 764
  50. 0390  LDA #34
  51. 0400  STA DMACTL
  52. 0410  RTS
  53. 0420 ;1ST CHECK FOR START BIT
  54. 0430 CHECKIT
  55. 0440  LDA #$FF
  56. 0450  CMP PORTA
  57. 0460 ;GET BYTE IF IT'S THERE
  58. 0470  BEQ WEREON
  59. 0480 ;GO HOME IF IT'S NOT
  60. 0490  RTS
  61. 0500 WEREON
  62. 0510 ;??IF?? CENTER SAMPLING NEEDED
  63. 0520 ;WAIT 1/2 OF START BIT
  64. 0530 ;REAL STUFF
  65. 0540  JSR GET8BITS
  66. 0550  JSR CONVERT
  67. 0560  JSR STORE
  68. 0570  JSR BUMPSIZE
  69. 0580  RTS
  70. 0590 GET8BITS
  71. 0600  LDX #8
  72. 0610  STX COUNT
  73. 0620  LDA #0
  74. 0630  STA BUFF
  75. 0640 ;SHOULD PASS START BIT
  76. 0650 ;WITH SOME CHANGE 'CAUSE OF
  77. 0660 ;THE TIME GETTING HERE
  78. 0670  JSR WAIT
  79. 0680 L2
  80. 0690  LDA PORTA
  81. 0700  CLC
  82. 0710  LSR A
  83. 0720  ROR BUFF
  84. 0730  DEC COUNT
  85. 0740  BEQ OUT
  86. 0750  JSR WAIT
  87. 0760  JMP L2
  88. 0770 OUT
  89. 0780 ;SHOULD PASS ANY STOP BITS
  90. 0790  JSR WAIT
  91. 0800 ;NO PARITY CHECKS
  92. 0810  RTS
  93. 0820 CONVERT
  94. 0830     LDA #$FF
  95. 0840     EOR BUFF
  96. 0850     STA BUFF
  97. 0860     RTS
  98. 0870 STORE
  99. 0880     LDY #0
  100. 0890     LDA BUFF
  101. 0900     STA (PTR),Y
  102. 0910     CLC
  103. 0920  INC PTR
  104. 0930  BNE DONESTORE
  105. 0940  INC PTR+1
  106. 0950 DONESTORE
  107. 0960  RTS
  108. 0970 BUMPSIZE
  109. 0980  CLC
  110. 0990  INC SIZE
  111. 1000  BNE DONEBUMP
  112. 1010  INC SIZE+1
  113. 1020 DONEBUMP
  114. 1030  RTS
  115. 1040 BUFF
  116. 1050     .BYTE 0
  117. 1060 COUNT
  118. 1070     .BYTE 0
  119. 1080 WAIT
  120. 1090     LDX DELAYX
  121. 1100 D1
  122. 1110     LDY DELAYY
  123. 1120 D2
  124. 1130     DEY
  125. 1140     BNE D2
  126. 1150     DEX
  127. 1160     BNE D1
  128. 1170     RTS
  129. 1180 DELAYX
  130. 1190     .BYTE 45000/BAUD
  131. 1200 DELAYY
  132. 1210     .BYTE $06
  133. 1220     .END
  134. ould connect
  135. just about anything to anything, but why? 
  136.