Jump to content
jrhodes

Sideport SAMS?

Recommended Posts

7 hours ago, Ksarul said:

You might want to decrease the width of those lands just a little--the PEB side port connector easily shorts across pins already when it moves, and the separation between them on your connector is pretty narrow. That will make the construction very sensitive to accidental movement.

It's not a final version, i need make it longer & ENIG anyway.

 

  • Like 1

Share this post


Link to post
Share on other sites

Mine arrived and is soooo purty.

 

Where can I get the SAMS test program?  I wanna see this thing in action :)

Share this post


Link to post
Share on other sites
1 hour ago, RXB said:

RXB has a SAMS test too writing in XB only.

Afraid I do not have a physical RXB.

Share this post


Link to post
Share on other sites
3 hours ago, OLD CS1 said:

Afraid I do not have a physical RXB.

To bad:

100 ! THIS PROGRAM DOES NOT
110 ! USE ANY ASSEMBLY
120 ! RXB COMMANDS ARE
130 ! THE ONLY COMMANDS
140 ! USED. THAT MEANS THE
150 ! SAMS CAN HAVE ANY PAGE
160 ! SWAPED FROM RXB.
170 !*********************
180 !*                   *
190 !*    XB AMS CARD    *
200 !*   QUERY PROGRAM   *
210 !*                   *
220 !*********************
230 !VERSION 1.07.951206
240 !BY P. E. SCHIPPNICK
250 !MODIFIED FOR RXB
260 !BY RICH GILBERTSON
270 ! RXB VERSION 2018
280 CALL CLEAR :: GOSUB 290 :: GOTO 300
290 CALL VCHAR(1,31,31,96) :: RETURN
300 FOR I=1 TO 14 :: CALL COLOR(I,2,8) :: NEXT I
310 CALL SCREEN(15)
320 GOTO 340
330 DISPLAY AT(ROW,(28-LEN(TEXT$))/2):TEXT$ :: RETURN
340 ROW=10 :: TEXT$="TI EXTENDED BASIC" :: GOSUB 330
350 ROW=11 :: TEXT$="AMS CARD" :: GOSUB 330
360 ROW=12 :: TEXT$="QUERY PROGRAM" :: GOSUB 330
370 ROW=13 :: TEXT$="VERSION 1.07" :: GOSUB 330
380 ROW=15 :: TEXT$="BY P. E. SCHIPPNICK" :: GOSUB 330
390 ROW=17 :: TEXT$="MODIFIED FOR RXB" :: GOSUB 330
400 ! SET-UP ASSEM SUPPORT
410 GOSUB 1100
420 ! TEST MAP/PASS
430 GOSUB 1130
440 ! TEST FOR AMS SIZE
450 GOSUB 920
460 ! MAPPED PAGES
470 GOSUB 610
480 IF M2=M3 THEN CALL CLEAR :: GOSUB 290 :: PRINT:"* NO AMS CARD" :: CALL SOUND(150,219,5) :: END
490 CALL CLEAR :: GOSUB 290
500 ROW=1 :: TEXT$=" *** AMS QUERY PROGRAM ***" :: GOSUB 330 :: ROW=2 :: TEXT$="VERSION 1.07" :: GOSUB 330
510 AMSSIZE$=STR$(AMSSIZE)&"K RAM"
520 ROW=8 :: TEXT$=" AMS MEMORY = "&AMSSIZE$ :: GOSUB 330
530 IF MAPON=0 THEN ROW=12 :: TEXT$=" AMS CARD 32K PASS MODE" :: GOSUB 330 :: GOTO 600
540 ROW=9 :: TEXT$=" AMS IN MAPPED MEMORY MODE" :: GOSUB 330
550 ROW=12 :: TEXT$="PAGES 8K MEMORY:" :: GOSUB 330
560 ROW=13 :: TEXT$=STR$(M2+O*(M2>=O))&" "&STR$(M3+O*(M3>=O)) :: GOSUB 330
570 ROW=15 :: TEXT$="PAGES 24K MEMORY:" :: GOSUB 330
580 ROW=16 :: TEXT$=STR$(MA+O*(MA>=O))&" "&STR$(MB+O*(MB>=O))&" "&STR$(MC+O*(MC>=O))&" "&STR$(MD+O*(MD>=O))&" "&STR$(ME+O*(ME>=O))&" "&STR$(MF+O*(MF>=O)) :: GOSUB 330
590 ROW=18 :: TEXT$="1-"&STR$(AMSSIZE/4)&" PAGES AVAILBLE." :: GOSUB 330
600 END
610 ! MAPPED AT 23ABCDEF
620 CALL SAMS("ON")
630 CALL PEEK(24548,M2) :: CALL PEEK(24550,M3) :: CALL PEEK(24564,MA) :: CALL PEEK(24566,MB) :: CALL PEEK(24568,MC) :: CALL PEEK(24570,MD) :: CALL PEEK(24572,ME)
640 CALL PEEK(24574,MF)
650 CALL SAMS("OFF")
660 RETURN
670 ! MAP 2,3,A,B,C,D,E,F
680 CALL SAMS("ON")
690 CALL LOAD(24548,2) :: CALL LOAD(24550,3) :: CALL LOAD(24564,10) :: CALL LOAD(24566,11) :: CALL LOAD(24568,12) :: CALL LOAD(24570,13) :: CALL LOAD(24572,14)
700 CALL LOAD(24574,15)
710 CALL SAMS("OFF")
720 RETURN
730 ! MAP 23 ABCDEF
740 GOSUB 670
750 CALL SAMS("MAP")
760 RETURN
770 ! MAP 23 ABCDEF
780 GOSUB 670
790 CALL SAMS("PASS")
800 RETURN
810 ! MAP MODE ON/OFF
820 CALL SAMS("ON") :: CALL PEEK(-31804,H1,H2) :: IF H1+H2 THEN CALL ISROFF(ADDRESS)
830 CALL PEEK(24548,M2) :: CALL PEEK(24550,M3) :: CALL LOAD(24550,M2) :: CALL PEEK(8198,A1,B1) :: CALL PEEK(12294,A2,B2)
840 IF A1=A2 AND B1=B2 THEN MAPON=1 ELSE MAPON=0
850 CALL LOAD(24550,M3)
860 IF H1+H2 THEN CALL ISRON(ADDRESS)
870 CALL SAMS("OFF")
880 RETURN
890 CALL PEEK(12288,OLDV) :: NEWV=255-OLDV :: CALL LOAD(12288,NEWV) :: CALL PEEK(12288,TESTV) :: IF TESTV<>OLDV AND TESTV=NEWV THEN MEM=1 ELSE MEM=0
900 IF MEM=1 THEN CALL LOAD(12288,OLDV)
910 RETURN
920 ! FIND AMS SIZE
930 GOSUB 810 :: IF MAPON=0 THEN GOSUB 730
940 CALL PEEK(-31804,H1,H2) :: IF H1+H2 THEN CALL ISROFF(ADDRESS)
950 ! MAP LOWER PAGES 23
960 CALL SAMS("ON") :: CALL PEEK(24548,M2) :: CALL PEEK(24550,M3)
970 CALL LOAD(24548,2,"",24550,3) :: GOSUB 1100
980 CALL PEEK(8194,MB1,LB1,MB2,LB2) :: CALL LOAD(8194,MB2,LB2,MB1,LB1)
990 ! 1024K/4=240 PAGES
1000 E=256 :: CALL PEEK(24550,M3)
1010 CALL LOAD(24550,2+E) :: CALL PEEK(12290,A,B,C,D) :: IF A=MB2 AND B=LB2 AND C=MB1 AND D=LB1 THEN AMSSIZE=E*4 :: GOTO 1050
1020 GOSUB 890 :: IF MEM=0 THEN AMSSIZE=E*4 :: GOTO 1050
1030 E=E+32 :: IF E<255 THEN 1010
1040 AMSSIZE=E*4
1050 CALL LOAD(24550,2) :: CALL LOAD(8194,MB1,LB1,MB2,LB2) :: CALL LOAD(24548,M2,"",24550,M3)
1060 IF MAPON=0 THEN CALL SAMS("PASS")
1070 IF H1+H2 THEN CALL ISRON(ADDRESS)
1080 CALL SAMS("OFF")
1090 RETURN
1100 ! EXPANSION MEMORY?
1110 CALL PEEK(-31863,A) :: IF A<>231 THEN CALL SOUND(150,218,0) :: PRINT "* NO EXPANSION MEMORY" :: STOP
1120 RETURN
1130 ! TEST MAP/PASS MODE?
1140 CALL SAMS("ON") :: CALL PEEK(24544,M0) :: CALL LOAD(24544,0) :: CALL PEEK(24544,O) :: CALL LOAD(24544,M0) :: CALL SAMS("OFF") :: RETURN
1150 END

New RXB 2020 version CALL SAMS($ value) can be ON OFF MAP or PASS, also address can be used to switch any 4K spot in SAMS to any page.

  • Like 1

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...