-
Content Count
443 -
Joined
-
Last visited
Posts posted by LASooner
-
-
I noodled some more with the batch file, and created an auto compile batch, change the paths and files in auto_compile.bat (everything in astericks below)
And when you run it, it will stay resident and check to see if you have changed the file that you specified.
So run the batch file, edit your tidbit code in whatever editor you use, save it, it will auto compile and get copied to your clipboard. So as long as the batch is running all you have to do is save and paste into C99
@Echo Off Set _Delay=10 Set _Monitor=[****INPUT PATH****]\input.xb Set _Base=%temp%\BaselineState.dir Set _Chck=%temp%\ChkState.dir Set _OS=6 Ver|Findstr /I /C:"Version 5">Nul If %Errorlevel%==0 Set _OS=5 & Set /A _Delay=_Delay*1000 :_StartMon Call :_SetBaseline "%_Base%" "%_Monitor%" :_MonLoop If %_OS%==5 (Ping 1.0.0.0 -n 1 -w %_Delay%>Nul) Else Timeout %_Delay%>Nul Call :_SetBaseline "%_Chck%" "%_Monitor%" FC /A /L "%_Base%" "%_Chck%">Nul If %ErrorLevel%==0 Goto _MonLoop [****PHP PATH****]\php [****TIdBIT PATH****]\tidbit_cmd.php [****INPUT PATH****]\input.xb 100 10 [****OUTPUT PATH****]\output.xb clip < "[****OUTPUT PATH****]\output.xb" Goto :_StartMon ::::::::::::::::::::::::::::::::::::::::::::::::::: :: Subroutine ::::::::::::::::::::::::::::::::::::::::::::::::::: :_SetBaseline If Exist "%temp%\tempfmstate.dir" Del "%temp%\tempfmstate.dir" For /F "Tokens=* Delims=" %%I In ('Dir /S "%~2"') Do ( Set _Last=%%I >>"%temp%\tempfmstate.dir" Echo.%%I ) >"%~1" Findstr /V /C:"%_Last%" "%temp%\tempfmstate.dir" Goto :EOF-
2
-
-
So I'm using TIdBit a lot lately and the workflow was starting to get in my way. Yes it's faster than typing it all in on the TI, but it could be faster with the command line version.
It requires that you have TIdBIT set up locally
I've created 2 batch scripts to help speed up using it
You'll need to edit both to add your own paths to PHP and TIdBIT cmd.
The "compile" batch is if you're iterating on the same file, the "input compile" is if you want to do a quick compile on some code without editing the compile batch file
Open the input file
When you're ready to compile your TIdBIT code,save the source, run the compile batch fileWhen you run it, it copies the compiled file to clipboard, post straight to Classic 99removes task of copying your source, clearing the web INPUT field, and pasting it, pressing translate, select output, copying output to paste in Classic 99.Also one less window you have to have open or deal with because you're not using a browser anymore.These batch files are going to save some of my sanity.
-
2
-
-
I'd like to have a favorites list for disks that would show up in each DSK entry so you could easily swap disks from one drive to the next because so many programs are hard coded to DSK1.
-
1
-
-
This looks as close to the original arcade game as I've seen from a TI port. What stopped you from going further?
-
-
Those players look great! Willing to upload the Magellan file?
It does seem better to start with a single-directional scrolling field, L/R or U/D. The up/down configuration you have looks great.
Yes, I'll upload it later tonight, use it as you see fit, my programming skills are lacking to take it any further.
-
1
-
-
When I first started messing around in Magellan I made this

-
5
-
-
Take a look at On Field Football for the commodore 64, it simple but pretty great. Your test reminded me of it instantly.
presentation is vertical not horizontal, but it 4 vs 4 player game.
http://www.lemon64.com/?mainurl=http%3A//www.lemon64.com/games/details.php%3FID%3D1834
-
1
-
-
I'm thankful I have a wife who puts up with all this old computer equipment.
-
8
-
-
Thanks, I got it running. Cool test. Any plans to do something more with this? It's good start
-
1
-
-
I've invested the time to understand matthew's viewport code from page-4 of this thread. Here's my twist on the whole thing along with comments clarifying what may seem obvious to experienced TI Assembly programmers. The attached Viewport code is over-commented to suit my needs and to encapsulate answers to questions, thread comments, etc:
This version of the viewport code is American Football themed.
Added feature: I was able to allow for the addition of diagonal joystick moves by removing two JMP PLY10s and adding a JMP PLY03..
Whenever a Left or Right move is detected the code now ALSO checks for Up and DOWN which equals a diagonal move.
* Test the joystick via the Communications Register Unit (CRU) * Com Register Unit on TI-99/4A reads: Keyboard keys, Joysticks, Cassette i/o * - Interfaces with TMS9900 via TMS9901 Programmable Systems Interface (PSI) * - uses 12 lines of the address bus (3-14), does not use the data bus * - addresses 4,096 Input lines and 4,096 output lines * - CRUIN line, CRUOUT line, CRUCLK line * Note: Joystick lines are tied high(1), and when a contact is made, they are pulled low. * - Making a contact with the joystick connects that contact to 0V & sets CRU bit. * LI R12,>0006 * Base CRU address for joystick 1 is placed into R12 for following Test Bit Operation * - 0000 0000 0000 0110 * - ^^^ ^^^^ ^^^^ ^ <== bits 3-14 yield >0000 ???? TB 1 * \\\\\\\\\\ LEFT MOVE CHECK \\\\\\\\\\ Jump if LEFT-Joy1 position not selected * TB 1 = Test Bit 1; Reads CRU bit/line 1 relative to the CRU base address in R12 * The Equal Status Bit is set to the value of CRU line level, which gets * set '1' when the joystick line goes to 0V. * E/A Manual, 9.5, p.156 * Reads the digital input bit on the CRU at the address specified * by the sum of the signed displacement (1) + contents of R12, bits 3-14, * and set the equal status bit (third MSbit) of Status Reg to the value read JEQ PLY02 * Jump when Left not selected, test Right next MOVB @SLTNAM,R4 * R4 loaded with the Sprite address for the Left moving player Sprite's Top/Left Tile * - Player Sprites are four tiles in size DEC R3 * R3 contains P1LOC (top/left)value; updates R3 held tile counter one position less/left DEC R5 * R5 contains P1LOC+88(bottom/left); DEC R5 to update player1 Sprite's bottom-LEFT tile MOV R3,R6 * R6 updates to hold a copy of P1LOC tile counter for the top/LEFT tile * - Since this is a LEFT move it's important to use LEFT side Sprite tiles * for when we later check move legality. DEC R1 * R1 contains @P1MX value; this updates R1 held P1MX value JLT PLY99 * Left side horizonal bound check; IF P1MX < 0 THEN No_Updating RETURN * - Player1 cannot move left beyond column 0 * - Nothing has been updated above except temp. values held in registers * JMP PLY10 * PLY10 is where we test the moves before making them permanent/executing them in memory * - R1= top/LefT P1MX; R3= P1LOC offset; R4 = char; R5 = bottom/LEFT; R6= P1LOC top/LT JMP PLY03 PLY02 TB 2 * ////////// RIGHT MOVE CHECK CRU Bit 2 ////////// JEQ PLY03 MOVB @SRTNAM,R4 * Sprite name INC R3 * R3 contains P1LOC value; updates R3 held tile counter to one position right INCT R5 * R5 contains P1LOC+88; adds TWO so R5 now holds counter for Player1 Sprite bottow/RIGHT * - had to add TWO here since R5 = Sprite bottom/RIGHT for validity checking INC R6 * R6 contains Sprite top/right tile offset; this updates it one tile to the right INCT R1 * R1 contains P1MX value; adds TWO so R1 now holds counter for Player1 Sprite top/RIGHT * - right moves dictate right side Sprite tile values here for move validity checks C R1,@MAPW * Upper horizontal bound check; see if right side of sprite exceeds right edge of map JGT PLY99 * There is no arithmetic >= so make two checks JEQ PLY99 * PLY99 RETURNs without moving DEC R1 * R1 Readjusted to real (left/top) tile counter location, X + 1 * JMP PLY10 * R1= P1MX; R3= P1LOC offset; R4= char; R5= bottom/RIGHT; R6= top/RIGHT * edited to go to PLY03 PLY03 TB 3 * DOWN MOVE CHECK --- moving down DECREASES P1MY --- Row 0 of the Map is at the bottom JEQ PLY04 MOVB @SDNNAM,R4 * Sprite name for down A @MAPW,R3 * Adjust the location of P1LOC counter to a row lower A @MAPW,R5 * R5 holds bottom/left tile offset; update to a row lower MOV R5,R6 INC R6 * R6 now holds bottom/right sprite tile offset INCT R2 * Move down, Y + 2 for bound check C R2,@MAPH * Upper vertical bound check; compare P1MY to Map Height JGT PLY99 * There is no arithmetic >= so make two checks JEQ PLY99 * RETURN w/o moving DEC R2 * Re-adjust to real location, Y + 1 JMP PLY10 * R2= P1MY updated; R3= P1LOC offset; R4 = char; R5 = BOTTOM/Left; R6= BOTTOM/right PLY04 TB 4 * UP MOVE CHECK --- moving up INCREASES P1MY --- Row 39 of the Map is on top JEQ PLY10 MOVB @SUPNAM,R4 * Sprite name for up S @MAPW,R3 * Adjust the location MOV R3,R5 S @MAPW,R6 * R6 was top/right tile which has been update to a row above DEC R2 * Move up, Y - 1 JLT PLY99 * Lower vertical bound check 0, If fails RETURN w/o moving * * R2= P1MY updated; R3 = P1LOC offset; R4 = char; R5 = TOP/left; R6 = TOP/right PLY10 * * PLY10 Checks to make sure the requested Player1 move is to a 'Legal' tile such as a path or bridge *
DSK9.zip <===== File "F2O" runs w/ E/A-
Is this E/A 3? What's the program name?
-
plug in a tape drive data cable into a PC audio out
http://nivelleringslikaren.eu/ti994a_basic/
paste the program in this page

OLD CS1 on the TI it should load in the basic program
-
-
Got my tracking number, can't wait! Thanks Ralph!
-
Yes, I suffer everyday with my Wacom Cintiq, wishing I had a flickering monitor with a light pen.

-
Who wants to tell him about FinalGROM 99?
-
2
-
-
I know, I know..I'm truly a sadist for using the TI sticks, but I was trying to recreate the experience I had growing up. I plugged in my handy slick stik I've had on my C64 and Amiga for years, and it almost feels like cheating how much easier it is to play games now.
I think if I hadn't been poor, I might never have learned to program, because those Atarisoft ports are pretty good for the era, and I would have just played those all the time instead of trying to make my own games. With the joystick adapter doubly so. All I had growing up was A-maze-ing and Tombstone City.
The proof of this is when I got my C-64 I got a modem and a bunch of BBS numbers and I never learned to program on the C-64 to the level I did on the TI.
EDIT: I posted this in the wrong forum, but don't see the option to delete. Mod please move to the main board
-
2
-
-
She has her room, I have mine. As long as none of it leaks out of the room, I can pack it with what I want. Luckily she doesn't include the Mame cabinet as part of that, her only demand was it have a CRT and a trackball for Centipede. It sits in the Family room.
-
1
-
-
Anyone who ever, keyed in a program into the ZX81 membrane keyboard for several hours only to knock the 2k ram pack by mistake before it could be saved to tape, would never ask this question.

-
2
-
-
I talked to Mike Bunyard pretty regularly until a couple of years ago, and I still talk a lot with Blaine Crandall.
Based on the original name: the Dimension 4, I would suppose the name just morphed into the 99/4 when (for whatever reason) they moved away from the Dimension 4 name. I guess they were planning on taking computing to the fourth dimension. . .
If the 4th dimension is time, it's certainly has been good at taking up a lot of that.
-
If you don't have them already, here's the sprite sheets for Zelda, should help with the frame counting
-
2
-
-
I finally managed to add a few sprites. And this version also has a bigger screen, which can be afforded because it's no longer using VDP RAM for double buffering.
I still have slightly less than 3K VDP RAM left.

-
Had nothing but bad luck with APC, 2 outages in the last 3 years it completely failed both times after being replaced the first time. My company replaced all APC battery backups with Cyberpower, I did the same at home.
-


TIBasic as a scripting language
in TI-99/4A Development
Posted
If you're in to self hate, it's amazing.