Jump to content
IGNORED

Playground


senior_falcon

Recommended Posts

2 hours ago, apersson850 said:

I see no point whatsoever in creating Playground programs for yourself. To create them, you already have every piece of hardware needed to not need the Playground programs. You create them for other people, to run them on unexpanded consoles. But that auditorium is pretty small today.

 

I've used my complete TI 99/4A to create programs that could run on computers with just Extended BASIC, 32 K RAM and casssette player. But that was back then, when there were no eumulators and not all people had everything.

its handy if u have an emulator and u want to run things on an unexpanded machine

Link to comment
Share on other sites

Dear apersson850,

 

Quote

I see no point whatsoever in creating Playground programs for yourself. To create them, you already have every piece of hardware needed to not need the Playground programs. You create them for other people, to run them on unexpanded consoles. But that auditorium is pretty small today.

You are not alone. I bet with you that there are some more persons in this forum, who are interested in different possibilities of what would have been possible, if way back the TI-99/4a console was unexpanded or at least a minimalist system already equipped with built-in 32k RAM and the Extended Basic cartridge. Don't forget, for most TI users nearly every add-on part was quite expensive then. Especially, when you have been a pupil at school. This question respectively objective mentioned before was and is the reason for my reawakened interest in the computer TI-99/4a. Additionally, it is also the reason, why I am not so keen on software needing "modern-day" solutions like F18A and SAMS. At last, with regard to this objective in my eyes the utmost allowable add-on part would be FinalGROM 99, which represents the hardware simulation for a cartridge. 

 

 

Regards 

Edited by MueThor
Link to comment
Share on other sites

45 minutes ago, atrax27407 said:

Which editor are you using?

ive tried both ti writer and the editor assembler, ti writer just hangs when u run the assembler and editor assembler just comes up with loads of (different) errors. (multiple symbols and invalid mnemotic)

Link to comment
Share on other sites

3 hours ago, MueThor said:

Additionally, it is also the reason, why I am not so keen on software needing "modern-day" solutions like F18A and SAMS.

 

I am not sure what exactly you mean by “modern day”, but I do not think I would put SAMS in that category. It has been around since the early 1990s.

 

...lee

  • Like 2
  • Thanks 1
Link to comment
Share on other sites

3 hours ago, MueThor said:

Dear apersson850,

 

You are not alone. I bet with you that there are some more persons in this forum, who are interested in different possibilities of what would have been possible, if way back the TI-99/4a console was unexpanded or at least a minimalist system already equipped with built-in 32k RAM and the Extended Basic cartridge. Don't forget, for most TI users nearly every add-on part was quite expensive then. Especially, when you have been a pupil at school. This question respectively objective mentioned before was and is the reason for my reawakened interest in the computer TI-99/4a. Additionally, it is also the reason, why I am not so keen on software needing "modern-day" solutions like F18A and SAMS. At last, with regard to this objective in my eyes the utmost allowable add-on part would be FinalGROM 99, which represents the hardware simulation for a cartridge. 

 

 

Regards 

Hmm the GRAM devices have been around longer then SAMS, Western Digital Hard Drive Controller has been around about same time.

Heck even the RAMDISK was around that time.

So even my stuff was way back in 1987.

Link to comment
Share on other sites

Yes, I had the Maximem GRAM/RAM module (16 K RAM, 48 K GRAM) back in the 1980's. As well as the 64 K RAM expansion inside the console, in addition to 32 K RAM in the expansion box.

 

I was rather referring to that today, "nobody" would persist in running things on a bare console. The enthusiasts, like me and many of you, already have very expanded machines. Those not using the hardware, but a simulator, can run any hardware they like. 

  • Like 2
Link to comment
Share on other sites

4 hours ago, xxx said:

can any1 else help me with my assembler inputting control characters when i paste them into the assembler?

You need to provide more information if you want help. "Paste" makes me think you are using Classic99. In any case, the assembler reads from disk and writes to disk. How are you "pasting them into the assembler?" A detailed description of what you are doing would be helpful and maybe some screen shots.

Let's start with the basics. Have you ever successfully written, assembled, loaded and run an assembly language program?

  • Like 3
Link to comment
Share on other sites

22 hours ago, BeeryMiller said:

I tried another route, essentially downloading the TXT files through XMODEM which saved the files as DIS/FIX 128 since there were no TIFILES headers.  I then used a program from Al Beard, TRANSFORM, for the Geneve that would read the DIS/FIX 128 and convert to a DIS/VAR 80 file.

 

It stripped out the CR/LF issue I had, however, the labels were all screwed up and the first few lines of each file was missing.  Not sure what was going on, so that is when I went back to MyWord to find a solution.

 

We really need to find a method with some very clear step by step directions to transfer DIS/VAR 80 source up to and back down from Github without all these hurdles.  I know some have mentioned some tiimagetool (???) features, but a clear set of tool(s) to automate a single file to a hundred or more source files at a time would be an asset.  The simplest tool I could think of would be an interface function that goes talks with some tool that sends commands to GitHub to get the files, then saves the files with TIFILES headers to the TIPI.  Then, if something needed to be uploaded, it would send the other way with some method to mark directories and/or individual files.

 

I say this as there is code like FunnelWeb, MDM5, MDOS, MyWord, ABASIC, PSystem, HRD4000B+, and a host of TI-99/4A programs where this would be extremely beneficial.  Not to discourage anyone from using GitHub, but it would be very helpful if comments did not exceed past column 80 as those comments get scrolled to the next line and an assembler will want to treat it as an instruction or honk for an error.  Also, not sure whether the asterisks character is an allowable character for adding comments within the source on the xdt side of things.  I have not played with xdt to know if comments after the instruction have to be commented with the semicolon or not.  Commented source code looks great, but if comments without a semicolon is a problem for GitHub, then it really limits the ability to upload older source code. 

 

Like I said earlier, I pulled some code down from GitHub written to assemble, etc. with xdt that is not directly portable to the Geneve that I will spend several evenings porting it over into a format suitable for GenASM to process.  It's great the code was posted so don't get me wrong, however it would not be easily portable back into the Editor/Assembler assembler nor GenASM for the Geneve.

 

 

 

 

I accomplish what I need with xdm99 in the xdt package.

 

It has options to add a FIAD (your ordinary DOS text) to a TI disk image, where it appears as DV80. Then you extract it from the dsk as TIFILES. 

On the PC I keep all my version-controlled Gitlab files in DOS format. My makefile uses xdm to create a TI dsk image that has the binaries and source code, which is the distribution.

 

Here are two rules that take DOS files to TIFILES format

https://gitlab.com/FarmerPotato/gameoflife/-/blob/master/Makefile

 

LIFEO.tfi: LIFEO
	# convert to TIFILES
	$(PYTHON) $(XDM) -f DF80 -T $<

 

LIFE.tfi: LIFE
	$(PYTHON) $(XDM) -f PGM -T $<
SRCS=LIFES LIFEIMGS LIFECARTS LOADCHARS
FILES=$(TFIS) $(SRCS)
disk: $(FILES)
	$(PYTHON) $(XDM) -X 360 $(DSK) 
	$(PYTHON) $(XDM) $(DSK) -f DF80 -a LIFEO
	$(PYTHON) $(XDM) $(DSK) -f DV80 -a $(SRCS)
	$(PYTHON) $(XDM) $(DSK) -f PGM -a LIFE 
# Outputs
DSK=GAMEOFLIFE.DSK
TFIS=LIFEO.tfi LIFE.tfi

PYTHON=/usr/bin/python
XAS=/cygdrive/c/TI99/xdt99/xas99.py
XDM=/cygdrive/c/TI99/xdt99/xdm99.py

 

hmm. That represents two ways I tried to do the job. The short way is just this line, which goes from DOS, putting DV80 in the dsk:

 

$(PYTHON) $(XDM) $(DSK) -f DV80 -a $(SRCS)

 

 

I use the Cygwin utilities package, for make and python.

I unpack xdt at c:\ti99\xdt99

 

 

  • Like 1
Link to comment
Share on other sites

4 hours ago, xxx said:

can any1 else help me with my assembler inputting control characters when i paste them into the assembler?

I see what you mean...

...TABs replacing multiple spaces, in an inconsistent pattern!

 

...Will this be any better. I dunno.:-D

 

PAGE   EQU >837E
SUB    EQU >8382
SUBPAG EQU >8386
 
 
 
*NEXT ROUTINE MOVES ALL CHARS UP ONE PIXEL USES A BUFFER AT >8360->836F
MOVEUP
       DATA MOVEUE-MOVEUS
MOVEUS
       BL @SUB
       DATA CLEAR
       LI R0,>03F1
MOVEU1
       SWPB R0
       MOVB R0,*R15
       SWPB R0
       MOVB R0,*R15
       LI R1,16
       LI R2,>8360
MOVEU2
       MOVB *R14,*R2+
       DEC R1
       JNE MOVEU2
       AI R0,>3FFF
       SWPB R0
       MOVB R0,*R15
       SWPB R0
       MOVB R0,*R15
       LI R1,16
       LI R2,>8360
MOVEU3
       MOVB *R2+,*R10
       DEC R1
       JNE MOVEU3
       AI R0,>C011
       CI R0,>0700
       JLT MOVEU1
       BL @PAGE
       DATA LOWERC
MOVEUE
 
LOWERC
       DATA LOWERE-LOWERS
LOWERS
       LI R0,LOWDEF-1
       A R13,R0               now R0 points to beg lc defs
       LI R3,>4608              address in VDP of "a" plus >4000 for write
       LI R4,16
LOWER1
       SWPB R0
       MOVB R0,*R15
       SWPB R0
       MOVB R0,*R15
       MOV R4,R1              R1=16 now
       LI R2,>8360              address of buffer
LOWER2
       MOVB *R14,*R2+       \
       DEC R1                      read chardefs into buffer
       JNE LOWER2              /
       SWPB R3
       MOVB R3,*R15
       SWPB R3
       MOVB R3,*R15
       MOV R4,R1              R1=16 now
       LI R2,>8360              address of buffer
LOWER3
       MOVB *R2+,*R10       \
       DEC R1                      write chardefs to VDP
       JNE LOWER3              /
       A R4,R3
       A R4,R0
       CI R3,>4700       past {?
       JLT LOWER1
       BL @PAGE
       DATA BORDER
LOWERE
 
 
 
BORDER
       DATA BORDEE-BORDES       length of page
BORDES
       LI R0,>4000              first screen pos
       LI R2,>DB00              left brace with offset
       BL @>8300+BORDLP-BORDES
       LI R0,>42E0
       BL @>8300+BORDLP-BORDES
       LI R0,>401F
       LI R1,23
BORDE3
       SWPB R0              \
       MOVB R0,*R15               set so can write byte top screen
       SWPB R0
       MOVB R0,*R15              /
       AI R0,32
       MOVB R2,*R10       write byte
       NOP
       MOVB R2,*R10
       DEC R1
       JNE BORDE3
FRST3
       BL @PAGE
       DATA HONEY
BORDLP
       LI R1,32
       SWPB R0              \
       MOVB R0,*R15               set so can write byte top screen
       SWPB R0
       MOVB R0,*R15              /
BORDL1
       MOVB R2,*R10       write byte
       DEC R1
       JNE BORDL1
       B *R11
BORDEE
************************************
HONEY
       DATA HONEYE-HONEYS
HONEYS
       LI R0,HONEYC-1
       A R13,R0
       MOV R0,@>83CC
       LI R0,>0100
       MOVB R0,@>83CE
       MOV @>83FD,R0
       ORI R0,>0001
       MOV R0,@>83FD
       BL @PAGE
       DATA UFO
HONEYE
************************************
UFO
       DATA UFOE-UFOS
 
UFOS
       LI R0,>E281              16x16 sprites
       MOVB R0,@>83D4       store value for magnified sprites
       MOVB R0,*R15
       SWPB R0
       MOVB R0,*R15
       LI R0,>0043       will write to VDP at >0300
       MOVB R0,*R15
       SWPB R0
       MOVB R0,*R15
       LI R2,>8300+UFODAT-UFOS
       LI R1,17
UFOL1
       MOVB *R2+,*R10
       DEC R1
       JNE UFOL1
       JMP UFOON
       LI R1,28
UFOLP
       LI R0,>C000
       MOVB R0,*R10
       SWPB R0
       MOVB R0,*R10
       MOVB R0,*R10
       MOVB R0,*R10
       DEC R1
       JNE UFOLP
UFOON
       BL @PAGE
       DATA UFOMOT
UFODAT
       DATA >2040,>DC08,>4060,>DC0B,>6080,>DC0F,>80A0,>DC04
       DATA >D000
UFOE
***********************************************
UFOMOT
       DATA UFOMOE-UFOMOS
UFOMOS
       LI R0,>8047              >4780
       MOVB R0,*R15
       SWPB R0
       MOVB R0,*R15
       LI R1,>8300+UFOMDT-UFOMOS
       LI R0,16
UFOMLP
       MOVB *R1+,*R10
       DEC R0
       JNE UFOMLP
       LI R0,>0400
       MOVB R0,@>837A
       BL @PAGE
       DATA RSLOOP
UFOMDT
       DATA >FDF2,>0000,>FFE0,>0000,>FE08,>0000,>0118,>0000
UFOMOE
 
*****************************************
RSLOOP
       DATA RSLOOE-RSLOOS
RSLOOS
       LI R9,37
       LI R4,TEXTA-1 offset from beginning
       A R13,R4
       BL @PAGE
       DATA SCROLL
RSLOOE
 
*******************************************
*this just fits in the available space.  The program is from >8300
*to >8351 and the 30 byte long buffer is from >8352 to >836E
*The buffer could be from >8354 to >8371 if 2 more bytes were needed.
 
SCROLL
       DATA SCROLE-SCROLS
SCROLS
       BL @SUB
       DATA KSCAN
       LI R5,>0041       second line down
       LI R6,>8352
SCROL1
       SWPB R5
       MOVB R5,*R15
       SWPB R5
       MOVB R5,*R15
       MOV R6,R7
SCROL2
       MOVB *R14,*R7+
       CI R7,>8370
       JNE SCROL2
       AI R5,>3FE0
       SWPB R5
       MOVB R5,*R15
       SWPB R5
       MOVB R5,*R15
       MOV R6,R7
SCROL3
       MOVB *R7+,*R10
       CI R7,>8370
       JNE SCROL3
       LIMI 2
       LIMI 0
       AI R5,>C040
       CI R5,>02E1
       JLT SCROL1
       BL @PAGE
       DATA PRINT
SCROLE
****************************************
 
PRINT
       DATA PRINTE-PRINTS
PRINTS
       SWPB R4
       MOVB R4,*R15
       SWPB R4
       MOVB R4,*R15
       MOV R6,R7
PRINT2
       MOVB *R14,R8
       AI R8,>6000
       MOVB R8,*R7+
       CI R7,>8370
       JNE PRINT2
       LI R0,>42C1              start printing here
       SWPB R0
       MOVB R0,*R15
       SWPB R0
       MOVB R0,*R15
       MOV R6,R7
PRINT3
       MOVB *R7+,*R10
       CI R7,>8370
       JNE PRINT3
       LIMI 2
       LIMI 0
       AI R4,30
       DEC R9
       JEQ RS
       BL @PAGE
       DATA SCROLL
RS
       BL @PAGE
       DATA RSLOOP
PRINTE
*********************************
CLEAR
       DATA CLEARE-CLEARS
CLEARS
       LWPI >8300+CLRWS-CLEARS
       MOVB R0,*R1
       SWPB R0
       MOVB R0,*R1
       SWPB R0
CLRLP
       MOVB R2,@>8C00
       DEC R3
       JNE CLRLP
       LWPI >83A2
       BL @SUBPAG
       DATA RETURN
CLRWS
       DATA >0040       R0 = >4000 reversed
       DATA >8C02       R1 = vdpwa
       DATA >8000       R2 = space with offset
       DATA 768       R3 = counter
CLEARE
********************************
 
 
*BELOW IS A SUBROUTINE TO SCAN THE KEYBOARD
*IF IT FINDS A KEY IT LOOPS TILL NO KEY IS PRESSED
*THEN RETURNS VIA "RETURN"
 
KSCAN
       DATA KSCANE-KSCANS
KSCANS
       LI R11,>0500
       MOVB R11,@>8374
       LI R12,>FF00
       LIMI 2
       LIMI 0
KSLP
       LWPI >83E0              \
       MOV R11,@>836E
       BL @>000E               keyscan
       MOV @>836E,R11
       LWPI >83A2              /
 
*       MOV @>837C,R4              check for new key pressed
*       ANDI R4,>2000
*       JEQ KSLP
 
       CB R12,@>8375
       JNE KSCANS              keep looping as long as pressing key
       BL @SUBPAG              want to preserve pointers telling where ton
       DATA RETURN
KSCANE
****************************************
***************************
*BL @SUBCON              returns from a SUB. Gets the page, adds the VDP t
*DATA RETURN          writes to >8C02 (*r15)
*                     gets position in page from >83d2 and puts into R11
*                     INCT R11 so points to next instruction, then enter r
*****************
RETURN
       DATA RETURE-RETURS
 
RETURS
       MOV @>83D0,R11              Get page to return to
       A R13,R11              Add VDP offset
       MOVB @>83B9,*R15       lsb of R11
       MOVB R11,*R15              msb of R11
       MOV @>83D2,R11              position in page when sub was called
       INCT R11              next instruction
       LI R12,>8300
       JMP RETURS+>0094   B @>8394
RETURE
 
LOWDEF
       DATA >0000,>3804,>3C44,>3C00 a
       DATA >4040,>7844,>4444,>7800 b
       DATA >0000,>3C40,>4040,>3C00 c
       DATA >0404,>3C44,>4444,>3C00 d
       DATA >0000,>3844,>7C40,>3C00 e
       DATA >1824,>2078,>2020,>2000 f
       DATA >0000,>3C44,>443C,>0438 g
       DATA >4040,>7844,>4444,>4400 h
       DATA >1000,>3010,>1010,>3800 i
       DATA >0800,>0808,>0808,>4830 j
       DATA >4040,>4448,>7048,>4400 k
       DATA >3010,>1010,>1010,>3800 l
       DATA >0000,>6854,>5454,>5400 m
       DATA >0000,>5864,>4444,>4400 n
       DATA >0000,>3844,>4444,>3800 o
       DATA >0000,>7844,>4478,>4040 p
       DATA >0000,>3C44,>443C,>0404 q
       DATA >0000,>5864,>4040,>4000 r
       DATA >0000,>3C40,>3804,>7800 s
       DATA >2020,>7820,>2024,>1800 t
       DATA >0000,>4444,>4444,>3C00 u
       DATA >0000,>4444,>2828,>1000 v
       DATA >0000,>4454,>5454,>2800 w
       DATA >0000,>4428,>1028,>4400 x
       DATA >0000,>4444,>443C,>0438 y
       DATA >0000,>7C08,>1020,>7C00 z
       DATA >1038,>7CFE,>7C38,>1000 {
       DATA >0001,>0103,>073F,>7FD6 UFO defs char 124
       DATA >7F3F,>0911,>0000,>0000
       DATA >0000,>0080,>C0F8,>FCD6
       DATA >FCF8,>2010,>0000,>0000
 
TEXTA
       TEXT '  ATARIAGE recently published '
       TEXT 'a short program written by    '
       TEXT 'James Abbatiello called ESCAPE'
       TEXT 'THE BASIC SANDBOX. The program'
       TEXT 'does not do much - it scrolls '
       TEXT 'HELLO, WORLD down the screen. '
       TEXT 'The point of the program is   '
       TEXT 'that it uses assembly language'
       TEXT 'to display the text. It does  '
       TEXT 'the impossible, running       '
       TEXT 'assembly language on an un-   '
       TEXT 'expanded TI-99/4A which every '
       TEXT 'one knows cannot be done.     '
       TEXT 'James closed his article by   '
       TEXT 'asking if anybody cared to try'
       TEXT 'their hand at making a more   '
       TEXT 'interesting payload for this? '
       TEXT '  After some thought I decided'
       TEXT 'to to develop Abbatiellos     '
       TEXT 'idea as far as I could.  This '
       TEXT 'demonstration program shows   '
       TEXT 'the results of my efforts.    '
       TEXT '  Despite the tight memory    '
       TEXT 'constraints, there is an im-  '
       TEXT 'pressive amount of potential. '
       TEXT 'Super fast assembly language  '
       TEXT 'programs with sound lists and '
       TEXT 'sprites with auto motion are  '
       TEXT 'now possible on an unexpanded '
       TEXT 'TI-99.                        '
       TEXT '  Now I will offer a challenge'
       TEXT 'of my own. Would anyone care  '
       TEXT 'to use this tool to develop a '
       TEXT 'finished program - perhaps an '
       TEXT 'arcade quality game?          '
       TEXT '       Harry Wilhelm          '
       TEXT '                              '
 
HONEYC
       BYTE 9,133,42,144,166,8,176,204,31,223,18
       BYTE 3,167,9,176,9
       BYTE 3,166,8,176,18
       BYTE 3,167,9,176,9
       BYTE 3,166,8,176,18
       BYTE 3,167,9,176,9
       BYTE 6,164,28,176,201,10,208,18
       BYTE 6,172,31,191,204,31,223,9
       BYTE 6,140,31,144,175,7,176,18
       BYTE 3,166,8,176,9
       BYTE 3,175,7,176,18
       BYTE 3,166,8,176,9
       BYTE 3,175,7,176,18
       BYTE 3,166,8,176,9
       BYTE 6,162,21,176,199,9,208,18
       BYTE 6,172,31,191,204,31,223,9
       BYTE 6,133,42,144,166,8,176,18
       BYTE 3,167,9,176,9
       BYTE 3,166,8,176,18
       BYTE 3,167,9,176,9
       BYTE 3,166,8,176,18
       BYTE 3,167,9,176,9
       BYTE 6,164,28,176,201,10,208,18
       BYTE 9,140,31,159,172,31,191,204,31,223,9
       BYTE 9,141,56,144,164,28,176,199,9,208,28
       BYTE 6,164,28,176,201,10,208,28
       BYTE 6,164,28,176,195,11,208,28
       BYTE 6,164,28,176,201,10,208,28
       BYTE 9,133,42,144,166,8,176,204,31,223,18
       BYTE 3,167,9,176,9
       BYTE 3,166,8,176,18
       BYTE 3,167,9,176,9
       BYTE 3,166,8,176,18
       BYTE 3,167,9,176,9
       BYTE 6,164,28,176,201,10,208,18
       BYTE 6,172,31,191,204,31,223,9
       BYTE 6,140,31,144,175,7,176,18
       BYTE 3,166,8,176,9
       BYTE 3,175,7,176,18
       BYTE 3,166,8,176,9
       BYTE 3,175,7,176,18
       BYTE 3,166,8,176,9
       BYTE 6,162,21,176,199,9,208,18
       BYTE 9,140,31,159,172,31,191,204,31,223,9
       BYTE 9,141,56,144,174,18,176,193,7,208,18
       BYTE 3,199,9,208,9
       BYTE 3,193,7,208,18
       BYTE 3,199,9,208,9
       BYTE 3,193,7,208,18
       BYTE 3,199,9,208,9
       BYTE 6,172,37,176,193,7,208,9
       BYTE 3,196,6,208,9
       BYTE 3,201,5,208,9
       BYTE 9,133,42,144,164,28,176,196,5,208,18
       BYTE 9,140,31,159,172,31,191,204,31,223,9
       BYTE 3,141,56,144,9
       BYTE 3,172,37,176,9
       BYTE 6,172,37,176,196,28,208,9
       BYTE 9,133,42,144,173,56,176,204,31,223,18
       BYTE 6,140,31,159,172,31,191,43
*       BYTE 0
*       DATA HONEYC
       BYTE >04,>9F,>BF,>DF,>FF,>00
       END

Some of the comments got clipped though.

 

FIAD...

DEMOS

Link to comment
Share on other sites

I've seen comments clipped as well in the approach I was using last night where the comments exceeded past column 80.  Last night, I finished going through about 10 files addressing comments that exceeded line 80 as well as some other issues that needed to be changed for GenASM compatability.

 

Beery

  • Like 1
Link to comment
Share on other sites

17 minutes ago, FarmerPotato said:

I accomplish what I need with xdm99 in the xdt package.

 

It has options to add a FIAD (your ordinary DOS text) to a TI disk image, where it appears as DV80. Then you extract it from the dsk as TIFILES. 

On the PC I keep all my version-controlled Gitlab files in DOS format. My makefile uses xdm to create a TI dsk image that has the binaries and source code, which is the distribution.

 

Here are two rules that take DOS files to TIFILES format

https://gitlab.com/FarmerPotato/gameoflife/-/blob/master/Makefile

 


LIFEO.tfi: LIFEO
	# convert to TIFILES
	$(PYTHON) $(XDM) -f DF80 -T $<

 


LIFE.tfi: LIFE
	$(PYTHON) $(XDM) -f PGM -T $<

SRCS=LIFES LIFEIMGS LIFECARTS LOADCHARS
FILES=$(TFIS) $(SRCS)

disk: $(FILES)
	$(PYTHON) $(XDM) -X 360 $(DSK) 
	$(PYTHON) $(XDM) $(DSK) -f DF80 -a LIFEO
	$(PYTHON) $(XDM) $(DSK) -f DV80 -a $(SRCS)
	$(PYTHON) $(XDM) $(DSK) -f PGM -a LIFE 

# Outputs
DSK=GAMEOFLIFE.DSK
TFIS=LIFEO.tfi LIFE.tfi

PYTHON=/usr/bin/python
XAS=/cygdrive/c/TI99/xdt99/xas99.py
XDM=/cygdrive/c/TI99/xdt99/xdm99.py

 

hmm. That represents two ways I tried to do the job. The short way is just this line, which goes from DOS, putting DV80 in the dsk:

 

$(PYTHON) $(XDM) $(DSK) -f DV80 -a $(SRCS)

 

 

I use the Cygwin utilities package, for make and python.

I unpack xdt at c:\ti99\xdt99

 

 

 

I see what you are reporting, but not being familiar with Cygwin or python, I would have never gotten there.  I'm not a linux or python user, so that is a bit beyond my skillset at the moment.  What I am hoping someone will do ( @shift838 or someone else with the skills if they are listening) will have is an installer that sets everything up on various systems (Windows a must), and then you give it a path you would like to move to<>from and it either being smart enough to do the conversion on the fly, or you tell it, and it is done from Github.

 

Simplest scenario, I launch a Windows program, point it at the TIPI for the source file directory (and potentially subdirectories).  Then, point it at Github, and necessary files move from one destination to the other with DIS/VAR 80 files converted to TXT files as needed and other formats (Program Files, others??) remaining untouched.  I think at that point, more users will feel comfortable setting things up.

 

 

 

 

Link to comment
Share on other sites

2 hours ago, BeeryMiller said:

 

I see what you are reporting, but not being familiar with Cygwin or python, I would have never gotten there.  I'm not a linux or python user, so that is a bit beyond my skillset at the moment.  What I am hoping someone will do ( @shift838 or someone else with the skills if they are listening) will have is an installer that sets everything up on various systems (Windows a must), and then you give it a path you would like to move to<>from and it either being smart enough to do the conversion on the fly, or you tell it, and it is done from Github.

 

Simplest scenario, I launch a Windows program, point it at the TIPI for the source file directory (and potentially subdirectories).  Then, point it at Github, and necessary files move from one destination to the other with DIS/VAR 80 files converted to TXT files as needed and other formats (Program Files, others??) remaining untouched.  I think at that point, more users will feel comfortable setting things up.

 

 

 

 

You mentioned xdt - how do you launch that currently?   Python is only mentioned because XDT is written in Python and you need it to run.

 

I could make more of a step-by-step tutorial for doing this.   I do all this in Windows, after installing Cygwin tools. Cygwin installs git, python, every else needed.

 

I think I hear that you want an easy way to put Github and Tipi together, and move edits both directions from/to tipi. 

If you do all your editing on Windows, then you just need a one-way conversion, from DOS to DV80.

If you also do some editing on the TI, then you need a two-way transfer, where the DV80 is copied back to DOS text.

 

I only go one direction, from Windows to DV80. I would likely make a script on Windows/Cygwin for me. But exactly the same script would run directly on the Pi--you'd keep a ssh window logged into Pi to run it.  The script that I have (by Makefile above) only goes one way - from my source on Windows, to DV80.

 

You can use the Git GUI client on Windows to do all the github stuff. It's point and right-click to act on each file or directory.

 

 

 

 

Link to comment
Share on other sites

20 minutes ago, FarmerPotato said:

You mentioned xdt - how do you launch that currently?   Python is only mentioned because XDT is written in Python and you need it to run.

 

I could make more of a step-by-step tutorial for doing this.   I do all this in Windows, after installing Cygwin tools. Cygwin installs git, python, every else needed.

 

I think I hear that you want an easy way to put Github and Tipi together, and move edits both directions from/to tipi. 

If you do all your editing on Windows, then you just need a one-way conversion, from DOS to DV80.

If you also do some editing on the TI, then you need a two-way transfer, where the DV80 is copied back to DOS text.

 

I only go one direction, from Windows to DV80. I would likely make a script on Windows/Cygwin for me. But exactly the same script would run directly on the Pi--you'd keep a ssh window logged into Pi to run it.  The script that I have (by Makefile above) only goes one way - from my source on Windows, to DV80.

 

You can use the Git GUI client on Windows to do all the github stuff. It's point and right-click to act on each file or directory.

 

 

 

 

Actually, I would plan on all editing to be on the Geneve and not Windows.  When things are ready to go to GitHub, copy files and/or subdirectories from HFDC to TIPI.  Then, launch the Windows program to send files up.  If someone else does an update, then send the files back down to the TIPI where I can then move them back to the HFDC.


Beery

 

 

Link to comment
Share on other sites

4 hours ago, apersson850 said:

I was rather referring to that today, "nobody" would persist in running things on a bare console. The enthusiasts, like me and many of you, already have very expanded machines. Those not using the hardware, but a simulator, can run any hardware they like. 

"Nobody," of course.  There are also some who get into the 99/4A with just a console.  Granted, a little bit of research tells you what more you need to be up-to-date, and maybe they will or will not run an emulator.  They still have this console, and wonder what they can do to start out, or maybe get hooked while they investigate committing more money to the cause.

 

With a Commodore 64, you grab a 64 and a 1541 and you are off to the races.  Apple II: most come with a disk controller in slot 6 and a drive.  Atari 8-bit: console and a 1050.  Atari ST or Amiga: these almost always have a drive built in (some 520STs are sans-drive.)  The TI-99/4A: well, the most basic setup to have in modern terms is a FG99 and nanoPEB, but if you want original hardware like you can do with almost every other system, you have to invest in a PEB and disk controller which run today about the same prices as you would have paid 35 years ago -- $250 plus extortion-rate shipping for the PEB in varying configurations, another $200 or so if you want a floppy controller then $25 to $100 for the drive.

 

The least we can do is have something that whets their whistles while they ponder further investment.  We have cartridges, but for some people loading a program from storage media is more of the nostalgic experience for which they are looking.

 

And besides, we climb the mountain because it is there :)

  • Like 4
Link to comment
Share on other sites

7 hours ago, senior_falcon said:

You need to provide more information if you want help. "Paste" makes me think you are using Classic99. In any case, the assembler reads from disk and writes to disk. How are you "pasting them into the assembler?" A detailed description of what you are doing would be helpful and maybe some screen shots.

Let's start with the basics. Have you ever successfully written, assembled, loaded and run an assembly language program?

yeah i have but not on a ti99. im pasting from notepad with the paste function in the edit menu in classic99 into the assemblers editor. and im trying to get demo-s that comes with playground to work. 

Edited by xxx
Link to comment
Share on other sites

8 hours ago, HOME AUTOMATION said:

I see what you mean...

...TABs replacing multiple spaces, in an inconsistent pattern!

 

...Will this be any better. I dunno.:-D

 


PAGE   EQU >837E
SUB    EQU >8382
SUBPAG EQU >8386
 
 
 
*NEXT ROUTINE MOVES ALL CHARS UP ONE PIXEL USES A BUFFER AT >8360->836F
MOVEUP
       DATA MOVEUE-MOVEUS
MOVEUS
       BL @SUB
       DATA CLEAR
       LI R0,>03F1
MOVEU1
       SWPB R0
       MOVB R0,*R15
       SWPB R0
       MOVB R0,*R15
       LI R1,16
       LI R2,>8360
MOVEU2
       MOVB *R14,*R2+
       DEC R1
       JNE MOVEU2
       AI R0,>3FFF
       SWPB R0
       MOVB R0,*R15
       SWPB R0
       MOVB R0,*R15
       LI R1,16
       LI R2,>8360
MOVEU3
       MOVB *R2+,*R10
       DEC R1
       JNE MOVEU3
       AI R0,>C011
       CI R0,>0700
       JLT MOVEU1
       BL @PAGE
       DATA LOWERC
MOVEUE
 
LOWERC
       DATA LOWERE-LOWERS
LOWERS
       LI R0,LOWDEF-1
       A R13,R0               now R0 points to beg lc defs
       LI R3,>4608              address in VDP of "a" plus >4000 for write
       LI R4,16
LOWER1
       SWPB R0
       MOVB R0,*R15
       SWPB R0
       MOVB R0,*R15
       MOV R4,R1              R1=16 now
       LI R2,>8360              address of buffer
LOWER2
       MOVB *R14,*R2+       \
       DEC R1                      read chardefs into buffer
       JNE LOWER2              /
       SWPB R3
       MOVB R3,*R15
       SWPB R3
       MOVB R3,*R15
       MOV R4,R1              R1=16 now
       LI R2,>8360              address of buffer
LOWER3
       MOVB *R2+,*R10       \
       DEC R1                      write chardefs to VDP
       JNE LOWER3              /
       A R4,R3
       A R4,R0
       CI R3,>4700       past {?
       JLT LOWER1
       BL @PAGE
       DATA BORDER
LOWERE
 
 
 
BORDER
       DATA BORDEE-BORDES       length of page
BORDES
       LI R0,>4000              first screen pos
       LI R2,>DB00              left brace with offset
       BL @>8300+BORDLP-BORDES
       LI R0,>42E0
       BL @>8300+BORDLP-BORDES
       LI R0,>401F
       LI R1,23
BORDE3
       SWPB R0              \
       MOVB R0,*R15               set so can write byte top screen
       SWPB R0
       MOVB R0,*R15              /
       AI R0,32
       MOVB R2,*R10       write byte
       NOP
       MOVB R2,*R10
       DEC R1
       JNE BORDE3
FRST3
       BL @PAGE
       DATA HONEY
BORDLP
       LI R1,32
       SWPB R0              \
       MOVB R0,*R15               set so can write byte top screen
       SWPB R0
       MOVB R0,*R15              /
BORDL1
       MOVB R2,*R10       write byte
       DEC R1
       JNE BORDL1
       B *R11
BORDEE
************************************
HONEY
       DATA HONEYE-HONEYS
HONEYS
       LI R0,HONEYC-1
       A R13,R0
       MOV R0,@>83CC
       LI R0,>0100
       MOVB R0,@>83CE
       MOV @>83FD,R0
       ORI R0,>0001
       MOV R0,@>83FD
       BL @PAGE
       DATA UFO
HONEYE
************************************
UFO
       DATA UFOE-UFOS
 
UFOS
       LI R0,>E281              16x16 sprites
       MOVB R0,@>83D4       store value for magnified sprites
       MOVB R0,*R15
       SWPB R0
       MOVB R0,*R15
       LI R0,>0043       will write to VDP at >0300
       MOVB R0,*R15
       SWPB R0
       MOVB R0,*R15
       LI R2,>8300+UFODAT-UFOS
       LI R1,17
UFOL1
       MOVB *R2+,*R10
       DEC R1
       JNE UFOL1
       JMP UFOON
       LI R1,28
UFOLP
       LI R0,>C000
       MOVB R0,*R10
       SWPB R0
       MOVB R0,*R10
       MOVB R0,*R10
       MOVB R0,*R10
       DEC R1
       JNE UFOLP
UFOON
       BL @PAGE
       DATA UFOMOT
UFODAT
       DATA >2040,>DC08,>4060,>DC0B,>6080,>DC0F,>80A0,>DC04
       DATA >D000
UFOE
***********************************************
UFOMOT
       DATA UFOMOE-UFOMOS
UFOMOS
       LI R0,>8047              >4780
       MOVB R0,*R15
       SWPB R0
       MOVB R0,*R15
       LI R1,>8300+UFOMDT-UFOMOS
       LI R0,16
UFOMLP
       MOVB *R1+,*R10
       DEC R0
       JNE UFOMLP
       LI R0,>0400
       MOVB R0,@>837A
       BL @PAGE
       DATA RSLOOP
UFOMDT
       DATA >FDF2,>0000,>FFE0,>0000,>FE08,>0000,>0118,>0000
UFOMOE
 
*****************************************
RSLOOP
       DATA RSLOOE-RSLOOS
RSLOOS
       LI R9,37
       LI R4,TEXTA-1 offset from beginning
       A R13,R4
       BL @PAGE
       DATA SCROLL
RSLOOE
 
*******************************************
*this just fits in the available space.  The program is from >8300
*to >8351 and the 30 byte long buffer is from >8352 to >836E
*The buffer could be from >8354 to >8371 if 2 more bytes were needed.
 
SCROLL
       DATA SCROLE-SCROLS
SCROLS
       BL @SUB
       DATA KSCAN
       LI R5,>0041       second line down
       LI R6,>8352
SCROL1
       SWPB R5
       MOVB R5,*R15
       SWPB R5
       MOVB R5,*R15
       MOV R6,R7
SCROL2
       MOVB *R14,*R7+
       CI R7,>8370
       JNE SCROL2
       AI R5,>3FE0
       SWPB R5
       MOVB R5,*R15
       SWPB R5
       MOVB R5,*R15
       MOV R6,R7
SCROL3
       MOVB *R7+,*R10
       CI R7,>8370
       JNE SCROL3
       LIMI 2
       LIMI 0
       AI R5,>C040
       CI R5,>02E1
       JLT SCROL1
       BL @PAGE
       DATA PRINT
SCROLE
****************************************
 
PRINT
       DATA PRINTE-PRINTS
PRINTS
       SWPB R4
       MOVB R4,*R15
       SWPB R4
       MOVB R4,*R15
       MOV R6,R7
PRINT2
       MOVB *R14,R8
       AI R8,>6000
       MOVB R8,*R7+
       CI R7,>8370
       JNE PRINT2
       LI R0,>42C1              start printing here
       SWPB R0
       MOVB R0,*R15
       SWPB R0
       MOVB R0,*R15
       MOV R6,R7
PRINT3
       MOVB *R7+,*R10
       CI R7,>8370
       JNE PRINT3
       LIMI 2
       LIMI 0
       AI R4,30
       DEC R9
       JEQ RS
       BL @PAGE
       DATA SCROLL
RS
       BL @PAGE
       DATA RSLOOP
PRINTE
*********************************
CLEAR
       DATA CLEARE-CLEARS
CLEARS
       LWPI >8300+CLRWS-CLEARS
       MOVB R0,*R1
       SWPB R0
       MOVB R0,*R1
       SWPB R0
CLRLP
       MOVB R2,@>8C00
       DEC R3
       JNE CLRLP
       LWPI >83A2
       BL @SUBPAG
       DATA RETURN
CLRWS
       DATA >0040       R0 = >4000 reversed
       DATA >8C02       R1 = vdpwa
       DATA >8000       R2 = space with offset
       DATA 768       R3 = counter
CLEARE
********************************
 
 
*BELOW IS A SUBROUTINE TO SCAN THE KEYBOARD
*IF IT FINDS A KEY IT LOOPS TILL NO KEY IS PRESSED
*THEN RETURNS VIA "RETURN"
 
KSCAN
       DATA KSCANE-KSCANS
KSCANS
       LI R11,>0500
       MOVB R11,@>8374
       LI R12,>FF00
       LIMI 2
       LIMI 0
KSLP
       LWPI >83E0              \
       MOV R11,@>836E
       BL @>000E               keyscan
       MOV @>836E,R11
       LWPI >83A2              /
 
*       MOV @>837C,R4              check for new key pressed
*       ANDI R4,>2000
*       JEQ KSLP
 
       CB R12,@>8375
       JNE KSCANS              keep looping as long as pressing key
       BL @SUBPAG              want to preserve pointers telling where ton
       DATA RETURN
KSCANE
****************************************
***************************
*BL @SUBCON              returns from a SUB. Gets the page, adds the VDP t
*DATA RETURN          writes to >8C02 (*r15)
*                     gets position in page from >83d2 and puts into R11
*                     INCT R11 so points to next instruction, then enter r
*****************
RETURN
       DATA RETURE-RETURS
 
RETURS
       MOV @>83D0,R11              Get page to return to
       A R13,R11              Add VDP offset
       MOVB @>83B9,*R15       lsb of R11
       MOVB R11,*R15              msb of R11
       MOV @>83D2,R11              position in page when sub was called
       INCT R11              next instruction
       LI R12,>8300
       JMP RETURS+>0094   B @>8394
RETURE
 
LOWDEF
       DATA >0000,>3804,>3C44,>3C00 a
       DATA >4040,>7844,>4444,>7800 b
       DATA >0000,>3C40,>4040,>3C00 c
       DATA >0404,>3C44,>4444,>3C00 d
       DATA >0000,>3844,>7C40,>3C00 e
       DATA >1824,>2078,>2020,>2000 f
       DATA >0000,>3C44,>443C,>0438 g
       DATA >4040,>7844,>4444,>4400 h
       DATA >1000,>3010,>1010,>3800 i
       DATA >0800,>0808,>0808,>4830 j
       DATA >4040,>4448,>7048,>4400 k
       DATA >3010,>1010,>1010,>3800 l
       DATA >0000,>6854,>5454,>5400 m
       DATA >0000,>5864,>4444,>4400 n
       DATA >0000,>3844,>4444,>3800 o
       DATA >0000,>7844,>4478,>4040 p
       DATA >0000,>3C44,>443C,>0404 q
       DATA >0000,>5864,>4040,>4000 r
       DATA >0000,>3C40,>3804,>7800 s
       DATA >2020,>7820,>2024,>1800 t
       DATA >0000,>4444,>4444,>3C00 u
       DATA >0000,>4444,>2828,>1000 v
       DATA >0000,>4454,>5454,>2800 w
       DATA >0000,>4428,>1028,>4400 x
       DATA >0000,>4444,>443C,>0438 y
       DATA >0000,>7C08,>1020,>7C00 z
       DATA >1038,>7CFE,>7C38,>1000 {
       DATA >0001,>0103,>073F,>7FD6 UFO defs char 124
       DATA >7F3F,>0911,>0000,>0000
       DATA >0000,>0080,>C0F8,>FCD6
       DATA >FCF8,>2010,>0000,>0000
 
TEXTA
       TEXT '  ATARIAGE recently published '
       TEXT 'a short program written by    '
       TEXT 'James Abbatiello called ESCAPE'
       TEXT 'THE BASIC SANDBOX. The program'
       TEXT 'does not do much - it scrolls '
       TEXT 'HELLO, WORLD down the screen. '
       TEXT 'The point of the program is   '
       TEXT 'that it uses assembly language'
       TEXT 'to display the text. It does  '
       TEXT 'the impossible, running       '
       TEXT 'assembly language on an un-   '
       TEXT 'expanded TI-99/4A which every '
       TEXT 'one knows cannot be done.     '
       TEXT 'James closed his article by   '
       TEXT 'asking if anybody cared to try'
       TEXT 'their hand at making a more   '
       TEXT 'interesting payload for this? '
       TEXT '  After some thought I decided'
       TEXT 'to to develop Abbatiellos     '
       TEXT 'idea as far as I could.  This '
       TEXT 'demonstration program shows   '
       TEXT 'the results of my efforts.    '
       TEXT '  Despite the tight memory    '
       TEXT 'constraints, there is an im-  '
       TEXT 'pressive amount of potential. '
       TEXT 'Super fast assembly language  '
       TEXT 'programs with sound lists and '
       TEXT 'sprites with auto motion are  '
       TEXT 'now possible on an unexpanded '
       TEXT 'TI-99.                        '
       TEXT '  Now I will offer a challenge'
       TEXT 'of my own. Would anyone care  '
       TEXT 'to use this tool to develop a '
       TEXT 'finished program - perhaps an '
       TEXT 'arcade quality game?          '
       TEXT '       Harry Wilhelm          '
       TEXT '                              '
 
HONEYC
       BYTE 9,133,42,144,166,8,176,204,31,223,18
       BYTE 3,167,9,176,9
       BYTE 3,166,8,176,18
       BYTE 3,167,9,176,9
       BYTE 3,166,8,176,18
       BYTE 3,167,9,176,9
       BYTE 6,164,28,176,201,10,208,18
       BYTE 6,172,31,191,204,31,223,9
       BYTE 6,140,31,144,175,7,176,18
       BYTE 3,166,8,176,9
       BYTE 3,175,7,176,18
       BYTE 3,166,8,176,9
       BYTE 3,175,7,176,18
       BYTE 3,166,8,176,9
       BYTE 6,162,21,176,199,9,208,18
       BYTE 6,172,31,191,204,31,223,9
       BYTE 6,133,42,144,166,8,176,18
       BYTE 3,167,9,176,9
       BYTE 3,166,8,176,18
       BYTE 3,167,9,176,9
       BYTE 3,166,8,176,18
       BYTE 3,167,9,176,9
       BYTE 6,164,28,176,201,10,208,18
       BYTE 9,140,31,159,172,31,191,204,31,223,9
       BYTE 9,141,56,144,164,28,176,199,9,208,28
       BYTE 6,164,28,176,201,10,208,28
       BYTE 6,164,28,176,195,11,208,28
       BYTE 6,164,28,176,201,10,208,28
       BYTE 9,133,42,144,166,8,176,204,31,223,18
       BYTE 3,167,9,176,9
       BYTE 3,166,8,176,18
       BYTE 3,167,9,176,9
       BYTE 3,166,8,176,18
       BYTE 3,167,9,176,9
       BYTE 6,164,28,176,201,10,208,18
       BYTE 6,172,31,191,204,31,223,9
       BYTE 6,140,31,144,175,7,176,18
       BYTE 3,166,8,176,9
       BYTE 3,175,7,176,18
       BYTE 3,166,8,176,9
       BYTE 3,175,7,176,18
       BYTE 3,166,8,176,9
       BYTE 6,162,21,176,199,9,208,18
       BYTE 9,140,31,159,172,31,191,204,31,223,9
       BYTE 9,141,56,144,174,18,176,193,7,208,18
       BYTE 3,199,9,208,9
       BYTE 3,193,7,208,18
       BYTE 3,199,9,208,9
       BYTE 3,193,7,208,18
       BYTE 3,199,9,208,9
       BYTE 6,172,37,176,193,7,208,9
       BYTE 3,196,6,208,9
       BYTE 3,201,5,208,9
       BYTE 9,133,42,144,164,28,176,196,5,208,18
       BYTE 9,140,31,159,172,31,191,204,31,223,9
       BYTE 3,141,56,144,9
       BYTE 3,172,37,176,9
       BYTE 6,172,37,176,196,28,208,9
       BYTE 9,133,42,144,173,56,176,204,31,223,18
       BYTE 6,140,31,159,172,31,191,43
*       BYTE 0
*       DATA HONEYC
       BYTE >04,>9F,>BF,>DF,>FF,>00
       END

Some of the comments got clipped though.

 

FIAD...

DEMOS 13.38 kB · 2 downloads

neither work, they both produce errors

Link to comment
Share on other sites

FWIW, @xxx sent me a copy of the DEMO code that he was having problems with a few days ago. I downloaded the file and transferred it to my TI as a D/V80 file using PC-TRANSFER. When I loaded it into the F'WEB program editor, I discovered that is was filled with control characters. I Then used (R)eplace (S)tring and replaced all of the control characters with a <space> character. I then ran the file through the assembler in the F'WEB package and it assembled fine with 0000 errors. I sent the "cleaned" source code back to him and he had problems with it. It seems that the source editor that he is using is flawed and control characters are entered into the code on his end.

 

 

  • Like 1
Link to comment
Share on other sites

11 hours ago, OLD CS1 said:

And besides, we climb the mountain because it is there :)

Some do, yes. I'm more the person who does it because there's no road around it.

 

I like what you can accomplish with small systems. I've done a lot of programming on various programmable calculators, including writing software which required overlays being read in from magnetic cards for different tasks, since everything didn't fit in memory at the same time.

But today I use variable names that are long as a winter in the north of Sweden (like linkTable[index].positions.adjust[index2] or folderAutomation.settings.usePerfCenter, cut from the last program I was working on), just because it's more efficient for me to remember what their purpose is, compared to if I call them A and B.

Link to comment
Share on other sites

12 hours ago, xxx said:

yeah i have but not on a ti99. im pasting from notepad with the paste function in the edit menu in classic99 into the assemblers editor. and im trying to get demo-s that comes with playground to work. 

DEMO-S is actually DEMO-S.txt

The .txt tells you this is a windows format file; not a TI format file. (although I don't think it's required, I always append .txt to a windows format file)

You can open this with a text editor such as Notepad, Notepad++ or whatever you prefer. You can make changes and when done save the revised file.

Classic99 must be configured so it can read and write windows format files. Here is how I have set it up for DSK1.

 

C99setup.JPG.7ba4cb3371e8aeebf31642e0b7e83e95.JPG

 

Now to assemble. Load the assembler (Not the editor-you don't need that!!!)

 

ASSEMBLER.JPG.2be9077b74e6f6a28e7fe3785263a731.JPG

And that should assemble properly for you.

The DEMO-S is a relic from using the TI editor asssembler package where I used DEMO-S for source code and DEMO-O for object code. If I were redoing this I'd get rid of the -S and -O and make it simply DEMO.TXT and DEMO.OBJ

Link to comment
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.
Note: Your post will require moderator approval before it will be visible.

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...