Jump to content

RedBaron

New Members
  • Content Count

    13
  • Joined

  • Last visited

Community Reputation

8 Neutral

About RedBaron

  • Rank
    Space Invader
  • Birthday 12/08/1951

Contact / Social Media

Profile Information

  • Location
    Tucson, AZ

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Yes, I have seen your work on the plotter. Great job. Perhaps we could work together on some projects.
  2. Thanks, This helps a lot. I will try and post things when I get something up and running. I am going to be using standard GCODE when I write the TI program so that people can maybe learn a little about how CNC machine work, I also plan a short tutorial in GCODE to be included as a package. I will only be using some simple GCODE commands but I think people might like it. You can also put a laser engraver instead of a cutter or a drawing device (pen).
  3. Can you help me get the files you wrote onto a TI disk. I have a peb box with both a 5.25" floppy and a GoTek floppy emulator with a flash drive. I did try and copy the files but it won't let me copy the Object file "PIOLIB". I did finally get something going on the Classic99 emulator, but I don't know yet if it is actually going to work on Ironware. I have written programs in Visual Basic to sync my Christmas lights to music on a PC. So I have worked with direct access to Digital Cards install in a PC. I don't how similar my Technik is compared to your access of the printer port on the TI. I do have to work many times with Decimal, Hexadecimal, and Binary to get my stuff working. I do plan on making my own circuit boards to make the interface between the TI and the CNC. Would it be possible to get each of your files separately so that I could then just copy them were I need them? Thank You for your help.
  4. I have a question about your PIO code. Could this be done using CALL LOADS? I am have trouble getting your code to work.
  5. I know that this is a older posting, but I thought you might like to know that I use CNC machines that I built all the time. I am know trying to use the TI99/4a as the computer to interface with a small CNC that I have. I am hoping that the Assembler code you wrote will work with my CNC. I am creating a TI GCODE. It will not have all the bells a whistles of a regular GCODE, but it should be enough to get things going. If there are any more hints of things that I should know please tell me. I am also writing a small Tutorial on how to write GCODE. I don't know what kind of accuracy I will get, I am not expecting very high accuracy, but it should make for an interesting project. All I need for your code to do is turn on and off the 8 bits that are accessible to be able to control the machine.
  6. I have been watching your monthly meetings and thought you might like to include my "WORDLE" program that I wrote.  I used TI Extended Basic to create it.  If any one wants this program they are welcome to have it.  I did use the BXB any program in my code to get more sets of characters  in the program.

    WORDLEBXB3

  7. If anyone is interested. I created an Extended Basic 40 column program that shows how the 40 column characters are made. I have been using the Classic 99 program to go into Extended Basic and wrote a small program then save it to DSK1. I am not sure how I can share this with anyone that would like to have it. If someone would like to see it I could use a little help with how to post the code here. I will give it a try myself and hope that this program is posted correctly. Thank You. 40COLDEF
  8. I would like thank everyone for this info. I think that this is what I was looking for.
  9. I used to have a TI994a Extended Basic program that would redefine the cursor with any pattern I wanted. Does anyone remember how this was done? I think that it used pokes or peeks. Thank you
  10. This is some great work. I am so glad that I am not the only one still interested in the TI994a and trying to extend its capabilities.
  11. As always you do a fantastic job getting Zaxxon going on the TI. I still love my TI994a and would love to get a copy of the textured raycaster program from you ( I am willing to buy a copy from you when it becomes available).
  12. I am trying to covert this simple program from Extended Basic into Assembly Language.  As is noted in the program I cannot figure out how to check the characters on the screen for a coincidence with a Sprite moving along.  I can do this using Extended Basic but the code to do this in Assembly alludes me.  Any help would be appreciated.   Thank you Ricki

     

    100 !*************
    110 !* BALL MAZE *
    120 !*************
    130 !This program will work with any screen created by the user
    140 !By Ricki Baron
    150 !RedBaron Software
    160 !4/26/2020 - 4/27/2020
    170 ! How do I do this in Assembly Language using a sprite to move throught the mazeand not go through the walls?
    180 X=24 :: Y=8
    190 XX=X/8
    200 YY=Y/8
    210 ! X=UP / DOWN
    220 ! Y=LEFT / RIGHT
    230 CALL CLEAR
    240 DISPLAY AT(1,10):"BALL MAZE"
    250 A$="3C4242818142423C"
    260 CALL CHAR(33,"FFFFFFFFFFFFFFFF")
    270 CALL CHAR(34,A$)
    280 CALL VCHAR(4,2,83)
    290 CALL HCHAR(3,1,33,32)
    300 CALL VCHAR(4,1,33,18)
    310 CALL HCHAR(22,1,33,32)
    320 CALL VCHAR(4,32,33,18)
    330 CALL VCHAR(4,8,33,6)
    340 CALL HCHAR(10,8,33,6)
    350 CALL VCHAR(11,11,33,10)
    360 CALL VCHAR(13,8,33,9)
    370 CALL VCHAR(21,31,70)
    380 DISPLAY AT(23,1):"USE THE ARROW KEYS TO MOVE"
    390 DISPLAY AT(24,3):"ANY OTHER KEY TO QUIT"
    400 CALL MAGNIFY(1)
    410 CALL SPRITE(#1,34,16,X+1,Y+1)
    420 CALL PATTERN(#1,34)
    430 CALL KEY(0,K,S)
    440 IF K=8 THEN 500
    450 IF K=9 THEN 670
    460 IF K=11 THEN 850
    470 IF K=10 THEN 1030
    480 IF S<>0 THEN 1220
    490 GOTO 430
    500 !************
    510 !* LEFT - S *
    520 !************
    530 XX=X/8
    540 XX=XX+1
    550 IF XX<1 THEN XX=1
    560 IF XX>24 THEN XX=24
    570 YY=Y/8
    580 IF YY<1 THEN YY=1
    590 IF Z=70 THEN 1250
    600 IF YY>32 THEN YY=32
    610 CALL GCHAR(XX,YY,Z)
    620 IF Z<>32 THEN 430
    630 Y=Y-8
    640 CALL LOCATE(#1,X+1,Y+1)
    650 CALL SCREEN(8)
    660 GOTO 430
    670 !*************
    680 !* RIGHT - D *
    690 !*************
    700 XX=X/8
    710 XX=XX+1
    720 IF XX<1 THEN XX=1
    730 IF XX>24 THEN XX=24
    740 YY=Y/8
    750 YY=YY+2
    760 IF YY<1 THEN YY=1
    770 IF YY>32 THEN YY=32
    780 CALL GCHAR(XX,YY,Z)
    790 IF Z=70 THEN 1250
    800 IF Z<>32 THEN 430
    810 Y=Y+8
    820 CALL LOCATE(#1,X+1,Y+1)
    830 CALL SCREEN(7)
    840 GOTO 430
    850 !**********
    860 !* UP - E *
    870 !**********
    880 XX=(X/8)
    890 !XX=XX-1
    900 IF XX<1 THEN XX=1
    910 IF XX>24 THEN XX=24
    920 YY=Y/8
    930 YY=YY+1
    940 IF YY<1 THEN YY=1
    950 IF YY>32 THEN YY=32
    960 CALL GCHAR(XX,YY,Z)
    970 IF Z=70 THEN 1250
    980 IF Z<>32 THEN 430
    990 X=X-8
    1000 CALL LOCATE(#1,X+1,Y+1)
    1010 CALL SCREEN(4)
    1020 GOTO 430
    1030 !************
    1040 !* DOWN - X *
    1050 !************
    1060 XX=X/8
    1070 XX=XX+2
    1080 IF XX<1 THEN XX=1
    1090 IF XX>24 THEN XX=24
    1100 YY=Y/8
    1110 YY=YY+1
    1120 IF YY<1 THEN YY=1
    1130 IF YY>32 THEN YY=32
    1140 CALL GCHAR(XX,YY,Z)
    1150 IF Z=70 THEN 1250
    1160 IF Z<>32 THEN 430
    1170 X=X+8
    1180 CALL LOCATE(#1,X+1,Y+1)
    1190 CALL SCREEN(5)
    1200 GOTO 430
    1210 !********
    1220 !* EXIT *
    1230 !********
    1240 STOP
    1250 !******************
    1260 !* FINISHED LEVEL *
    1270 !******************
    1280 CALL SCREEN(16)
    1290 DISPLAY AT(13,3):"YOU FINISHED LEVEL 1"
    1300 GOTO 430

     

    1. RedBaron

      RedBaron

      I am also including the TI994a assembly code that I have so far.

       

      ****************************
      *                          *
      * BALL MAZE By Ricki Baron *
      *                          *
      * 5/1/2020                 *
      *                          *
      * BMS = SOURCE CODE        *
      * BMO = OBJECT CODE        *
      *                          *
      ****************************
             DEF  START
             REF  VSBW,VSBR,VMBW,VMBR,KSCAN,VWTR
       
      KEYADR EQU  >8374
      KEY    EQU  >8375
      STATUS EQU  >837C
       
      ENTER  BYTE >0D
      SPACE  BYTE >20
      QKEY   BYTE >12
       
      SAVRTN BSS  >2
      WS     BSS  >20
       
      UP     BYTE >0B
      DN     BYTE >0A
      LT     BYTE >08
      RT     BYTE >09
       
      X      DATA 24
      Y      DATA 8
      XX     DATA 0
      YY     DATA 0
      EIGHT  DATA 8
       
      CHAR33 DATA >FFFF,>FFFF,>FFFF,>FFFF
      A$     DATA >3C42,>4281,>8142,>423C
       
      COLOR  DATA >1717,>1717,>1717,>1717
             DATA >1717,>1717,>1717,>1717
      COLOR1 DATA >1616,>1616,>1616,>1616
             DATA >1616,>1616,>1616,>1616
      COLOR2 DATA >1313,>1313,>1313,>1313
             DATA >1313,>1313,>1313,>1313
      COLOR3 DATA >1414,>1414,>1414,>1414
             DATA >1414,>1414,>1414,>1414
       
             EVEN
       
      *****************
      * START PROGRAM *
      *****************
      START  MOV  R11,@SAVRTN
             LWPI WS
       
      * RedBaron Software
      * How do I do this in Assembly Language using a sprite to move throught the ?
      *  X=24::Y=8
      *  XX=X/8
      *  YY=Y/8
      *  ! X=UP / DOWN
      *  ! Y=LEFT / RIGHT
      *  CALL CLEAR
      *  DISPLAY AT(1,10):"BALL MAZE"
      *  A$="3C4242818142423C"
       
      *************
      * CALL CHAR *
      *************
             LI   R0,>0908     CHAR(33)
             LI   R1,CHAR33
             LI   R2,16
             BLWP @VMBW
       
      *  CALL CHAR(33,"FFFFFFFFFFFFFFFF")
       
      *      LI   R0,>090F     CHAR(34)
      *      LI   R1,A$
      *      LI   R2,8
      *      BLWP @VMBW
       
      *  CALL CHAR(34,A$)
       
      *  CALL VCHAR(4,2,83)
      *  CALL HCHAR(3,1,33,32)
      *  CALL VCHAR(4,1,33,18)
      *  CALL HCHAR(22,1,33,32)
      *  CALL VCHAR(4,32,33,18)
      *  CALL VCHAR(4,8,33,6)
      *  CALL HCHAR(10,8,33,6)
      *  CALL VCHAR(11,11,33,10)
      *  CALL VCHAR(13,8,33,9)
      *  CALL VCHAR(21,31,70)
      *  DISPLAY AT(23,1):"USE THE ARROW KEYS TO MOVE"
      *  DISPLAY AT(24,3):"ANY OTHER KEY TO QUIT"
       
      SCRN1  TEXT '                                '
             TEXT '           BALL MAZE            '
             TEXT '                                '
             TEXT '!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!'
             TEXT '!S     !                       !'
             TEXT '!      !                       !'
             TEXT '!      !                       !'
             TEXT '!      !                       !'
             TEXT '!      !                       !'
             TEXT '!      !                       !'
             TEXT '!      !!!!!!                  !'
             TEXT '!         !                    !'
             TEXT '!         !                    !'
             TEXT '!      !  !                    !'
             TEXT '!      !  !                    !'
             TEXT '!      !  !                    !'
             TEXT '!      !  !                    !'
             TEXT '!      !  !                    !'
             TEXT '!      !  !                    !'
             TEXT '!      !  !                    !'
             TEXT '!      !                      F!'
             TEXT '!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!'
             TEXT '  USE THE ARROW KEYS TO MOVE    '
             TEXT '    PRESS ENTER KEY TO QUIT     '
       
      *  CALL MAGNIFY(1)
       
      *  CALL SPRITE(#1,34,16,X+1,Y+1)
      *  CALL PATTERN(#1,34)
       
      SPRT1  DATA >1F08,>800F,>D000
             LI   R0,>0400
             LI   R1,A$
             LI   R2,8
             BLWP @VMBW
       
             LI   R0,>0300
             LI   R1,SPRT1
             LI   R2,6
             BLWP @VMBW
       
      *****************
      * PUT UP SCREEN *
      *****************
             LI   R0,0
             LI   R1,SCRN1
             LI   R2,768
             BLWP @VMBW
       
      ************
      * CALL KEY *
      ************
      KK     LIMI 2
             LIMI 0
             CLR  @KEYADR
             CLR  @STATUS
             BLWP @KSCAN
             CB   @ENTER,@KEY
             JEQ  K10
             CB   @UP,@KEY
             JEQ  K1
             CB   @DN,@KEY
             JEQ  K2
             CB   @LT,@KEY
             JEQ  K3
             CB   @RT,@KEY
             JEQ  K4
             JMP  KK
      K10    B    @RETURN
      K1     MOVB @UP,@KEY
             BL   @UPD
             B    @KK
      K2     MOVB @DN,@KEY
             BL   @DND
             B    @KK
      K3     MOVB @LT,@KEY
             BL   @LTD
             B    @KK
      K4     MOVB @RT,@KEY
             BL   @RTD
             B    @KK
      *430CALL KEY(0,K,S)
       
      *  IF K=8 THEN 500
      *  IF K=9 THEN 670
      *  IF K=11 THEN 850
      *  IF K=10 THEN 1030
      *  IF S<>0 THEN 1220
      *490GOTO 430
       
      ********************
      * MOVE SPRITE LEFT *
      ********************
      LTD    LI   R0,>0301
             BLWP @VSBR
             AI   R1,>F800
             BLWP @VSBW
             LI   R15,>1000
       
      * CALL SCREEN(X)
             LI   R0,>0707
             BLWP @VWTR
      * CALL COLOR SET 1
             LI   R0,>0380
             LI   R1,COLOR
             LI   R2,16
             BLWP @VMBW
       
      LOOP3  DEC  R15
             JNE  LOOP3
             RT
      *500!************
      *   !* LEFT - S *
      *   !************
      *  XX=X/8
      *  XX=XX+1
      *  IF XX<1 THEN XX=1
      *  IF XX>24 THEN XX=24
      *  YY=Y/8
      *  IF YY<1 THEN YY=1
      *  IF Z=70 THEN 1250
      *  IF YY>32 THEN YY=32
      *  CALL GCHAR(XX,YY,Z)
      *  IF Z<>32 THEN 430
      *  Y=Y-8
      *  CALL LOCATE(#1,X+1,Y+1)
      *  CALL SCREEN(8)
      *  GOTO 430
       
      *********************
      * MOVE SPRITE RIGHT *
      *********************
      RTD    LI   R0,>0301
             BLWP @VSBR
             AI   R1,>0800
             BLWP @VSBW
       
             LI   R0,>0706
             BLWP @VWTR
             LI   R0,>0380
             LI   R1,COLOR1
             LI   R2,16
             BLWP @VMBW
       
             LI   R15,>1000
      LOOP4  DEC  R15
             JNE  LOOP4
             RT
      *670!*************
      *   !* RIGHT - D *
      *   !*************
      *  XX=X/8
      *  XX=XX+1
      *  IF XX<1 THEN XX=1
      *  IF XX>24 THEN XX=24
      *  YY=Y/8
      *  YY=YY+2
      *  IF YY<1 THEN YY=1
      *  IF YY>32 THEN YY=32
      *  CALL GCHAR(XX,YY,Z)
      *  IF Z=70 THEN 1250
      *  IF Z<>32 THEN 430
      *  Y=Y+8
      *  CALL LOCATE(#1,X+1,Y+1)
      *  CALL SCREEN(7)
      *  GOTO 430
       
      ******************
      * MOVE SPRITE UP *
      ******************
      UPD    LI   R0,>0300
             BLWP @VSBR
             AI   R1,>F800
             BLWP @VSBW
       
             LI   R0,>0703
             BLWP @VWTR
             LI   R0,>0380
             LI   R1,COLOR2
             LI   R2,16
             BLWP @VMBW
       
             LI   R15,>1000
      LOOP1  DEC  R15
             JNE  LOOP1
             RT
      *850!**********
      *   !* UP - E *
      *   !**********
      *  XX=(X/8)
      *  !XX=XX-1
      *  IF XX<1 THEN XX=1
      *  IF XX>24 THEN XX=24
      *  YY=Y/8
      *  YY=YY+1
      *  IF YY<1 THEN YY=1
      *  IF YY>32 THEN YY=32
      *  CALL GCHAR(XX,YY,Z)
      *  IF Z=70 THEN 1250
      *  IF Z<>32 THEN 430
      *  X=X-8
      *   CALL LOCATE(#1,X+1,Y+1)
      *   CALL SCREEN(4)
      *   GOTO 430
       
      ********************
      * MOVE SPRITE DOWN *
      ********************
      DND    LI   R0,>0300
             BLWP @VSBR
             AI   R1,>0800
             BLWP @VSBW
       
             LI   R0,>0704
             BLWP @VWTR
             LI   R0,>0380
             LI   R1,COLOR3
             LI   R2,16
             BLWP @VMBW
       
             LI   R15,>1000
      LOOP2  DEC  R15
             JNE  LOOP2
             RT
      *1030!************
      *    !* DOWN - X *
      *    !************
      *   XX=X/8
      *   XX=XX+2
      *   IF XX<1 THEN XX=1
      *   IF XX>24 THEN XX=24
      *   YY=Y/8
      *   YY=YY+1
      *   IF YY<1 THEN YY=1
      *   IF YY>32 THEN YY=32
      *   CALL GCHAR(XX,YY,Z)
      *   IF Z=70 THEN 1250
      *   IF Z<>32 THEN 430
      *   X=X+8
      *   CALL LOCATE(#1,X+1,Y+1)
      *   CALL SCREEN(5)
      *   GOTO 430
       
      ********
      * EXIT *
      ********
      RETURN CLR  @>837C
             CLR  @>8374
             LWPI >83E0
             MOV  @SAVRTN,R11
             RT
       
      *1210!********
      *    !* EXIT *
      *    !********
      *   STOP
      *1250!******************
      *    !* FINISHED LEVEL *
      *    !******************
      *   CALL SCREEN(16)
      *   DISPLAY AT(13,3):"YOU FINISHED LEVEL 1"
      *   GOTO 430
       
             END

       

  13. I have a lot of floppy disks for the TI994a that I would like to put on my pc and then into emulators.  I have the SW99er's library and a lot of programs in 9900 Assembly l wrote and need to transfer.  I also have the programs that my son and I wrote from "Red Baron Software", not to be confused with the Red Baron game from a company of a similar name.  I am writing some new software for the TI but need to be able to get the files transferred.  My TI computer with a disk drive was working but seems to have stopped read my disks.  I see from the posts that this was talked about a few years ago, but I don't seem to be able read any TI disks on my PC.  Any help would be appreciated.  Thank you Ricki

    1. Show previous comments  6 more
    2. RXB

      RXB

      I would use FW as that is more common

       

    3. RedBaron

      RedBaron

      I am sorry but what is FW?  I want to just give everything to the TI community.

    4. RXB

      RXB

      I would use FW as that is more common

       

      Funnel Web package it has everything on one disk. DSDD or DSQD, you can get a SSSD disk to work but totally at bare minimum.

       

  14. I just wanted to say thank you Matt for all your work on the F18A. I do agree that family comes first. Once the Video module becomes available I would be interested in buying a few. Thank You Ricki
  15. I understand that people get busy with other things. I get that way myself. I have only just recently become aware about this upgrade for the TI994a. I was just hoping that it was still available for sale. I do know that if I had 2 then I would probably order a lot more myself. If possible can someone keep me and others informed of any progress on the F18A. Thank you Ricki
×
×
  • Create New...