-
Content Count
1,465 -
Joined
-
Last visited
Content Type
Profiles
Member Map
Forums
Blogs
Gallery
Calendar
Store
Everything posted by FarmerPotato
-
From the album: Auctions
The $1.92 bundle of 10 from eBay seller mayetoto18 via Hong Kong. No foam was used on these. -
Thanks for starting this! It has been a lot of fun.
-
Looking for relatively common classic TI arcade games
FarmerPotato replied to xabin's topic in TI-99/4A Computers
Microsurgeon Slymoids Blasto MASH -
From the album: Graphics
10 line XB contest 10 CALL CLEAR::CALL SCREEN(::CALL MAGNIFY(2)::S=2::T=1::R=80::C=128::Q=160::E=220 CALL CHAR(113,"003030300000000000000030303000000000000000303030",116,"2556360A06060A0A090F661F66060A0A00090606076E1665")30 CALL CHAR( 97,"606848706070506860604078606050D86060406070686070",100,"1819121C101814641818101E1030484C30302030303E186C")40 CALL CHAR( 105,"102040000000000000000000007000000000000000000070", 108,"020408000000000000000000000E0000000000000000000E")50 CALL SPRITE(#1,104+S,12,R-4,C+6,#2,112+T,7,R-1,C-1,#3,96+S,2,R,C,#4,115+E,16,R,Q)60 L=K::CALL JOYST(1,X,Y)::CALL KEY(1,K,Z)::Y=2-Y/4::IF K=18 THEN S=Y ELSE IF L=18 THEN F=4::S=Y+3 ELSE T=Y::IF X THEN C=C+X ELSE IF S>3 THEN S=S-3::F=070 E=INT(RND*3+1):: Q=Q-1::CALL PATTERN(#1,104+S,#2,112+T,#3,96+S,#4,115+E)::CALL LOCATE(#1,R-4,C+6,#2,R-1,C-1,#3,R,C,#4,R,Q) 80 IF C+8+F<Q THEN 60 ELSE IF F AND S<>E+3 THEN 100 ELSE IF T=E OR S-3=E THEN C=C-8::Q=Q+8::GOTO 7090 CALL COLOR(#4,9)::FOR I=1 TO 7::CALL SOUND(-100,999,2)::CALL SOUND(-100,880,::NEXT I::C=C-8::Q=Q+16::GOTO 50100 CALL COLOR(#3,9)::FOR I=1 TO 7::CALL SOUND(-100,999-I*100,2)::NEXT I::C=C-16::Q=Q+8::GOTO 50 -
10 Line XB entries: 10Liner 49er AND Gladiator
FarmerPotato replied to FarmerPotato's topic in TI-99/4A Computers
Inspired by 'Gladiator' (arcade) and 'Swashbuckler' (Apple II) and Video Brain Gladiator (oh god), here is Gladiator: Instructions: Use joystick to move left or right, and raise shield up or down. Press fire, along with up or down, to ready your sword ; release fire to make an attack. If you get past your opponent's defenses, you defeat them. If your opponent's trident blocks your sword, or your shield blocks their trident, you both live another round. Otherwise you will die, nameless Gladiator. It's kind of rough in the combat resolution. I'm putting it aside for a bit. 10 CALL CLEAR::CALL SCREEN(::CALL MAGNIFY(2)::S=2::T=1::R=80::C=128::Q=160::E=2 20 CALL CHAR(113,"003030300000000000000030303000000000000000303030",116,"2556360A06060A0A090F661F66060A0A00090606076E1665") 30 CALL CHAR( 97,"606848706070506860604078606050D86060406070686070",100,"1819121C101814641818101E1030484C30302030303E186C") 40 CALL CHAR( 105,"102040000000000000000000007000000000000000000070", 108,"020408000000000000000000000E0000000000000000000E") 50 CALL SPRITE(#1,104+S,12,R-4,C+6,#2,112+T,7,R-1,C-1,#3,96+S,2,R,C,#4,115+E,16,R,Q) 60 L=K::CALL JOYST(1,X,Y)::CALL KEY(1,K,Z)::Y=2-Y/4::IF K=18 THEN S=Y ELSE IF L=18 THEN F=4::S=Y+3 ELSE T=Y::IF X THEN C=C+X ELSE IF S>3 THEN S=S-3::F=0 70 E=INT(RND*3+1):: Q=Q-1::CALL PATTERN(#1,104+S,#2,112+T,#3,96+S,#4,115+E)::CALL LOCATE(#1,R-4,C+6,#2,R-1,C-1,#3,R,C,#4,R,Q) 80 IF C+8+F<Q THEN 60 ELSE IF F AND S<>E+3 THEN 100 ELSE IF T=E OR S-3=E THEN C=C-8::Q=Q+8::GOTO 70 90 CALL COLOR(#4,9)::FOR I=1 TO 7::CALL SOUND(-100,999,2)::CALL SOUND(-100,880,::NEXT I::C=C-8::Q=Q+16::GOTO 50 100 CALL COLOR(#3,9)::FOR I=1 TO 7::CALL SOUND(-100,999-I*100,2)::NEXT I::C=C-16::Q=Q+8::GOTO 50 -
Did you change the Image pulldown from FIAD to DSK before opening the file dialog? otherwise the dsk files won't appear.
-
Moving files between NANOPEB and PEB floppy stations.
FarmerPotato replied to GDMike's topic in TI-99/4A Computers
yes but do you need to first get a floppy disk of HDX? I know that SAVE RS232 and OLD RS232 can transfer BASIC programs but that's a limited vector. It seems like there has always been a need for a jumpstart solution to this. I imagine passing a Minimem back and forth between two systems. Like in the old days of copying floppies when you only had one drive. I could borrow some code from SuperSave and XModem, add some interface glue, and have it run out of a 4K MiniMem or 8K SuperCart. Requirements: 32K and disk on console 1, only disk on console 2, one Minimem cartridge. -
Swamp path blues: 10 line TI Basic fun
FarmerPotato replied to tibasic's topic in TI-99/4A Computers
Nice! I got to 104. -
Official 10 liner program competition thread
FarmerPotato replied to Vorticon's topic in TI-99/4A Development
Submission: 10Liner 49er Platform: TI Extended Basic Written by: Erik Olson Instructions: Use joystick to dig a mine. Find the gold! If rocks are in your way, press Fire and a direction to dynamite (You get 5.) V9T9 disk image:liner49er.dsk -
10 Line XB entries: 10Liner 49er AND Gladiator
FarmerPotato replied to FarmerPotato's topic in TI-99/4A Computers
Just for you, in version 3, I found a way to add Dynamite in line 60. It was tough, I kept getting LINE TOO LONG, but there it is. Dynamite away! Thank you for all the feedback. I am done now! -
10 Line XB entries: 10Liner 49er AND Gladiator
FarmerPotato replied to FarmerPotato's topic in TI-99/4A Computers
I decided it should be hard to get all the gold. Like 'Klondike Solitaire'. No you can't go on the edge columns 1 or 28. I put borders of rocks from row 13 down to indicate that. I made sure there was no gold in columns 1 or 28. Just for you Ciro! (But it made the game difficulty harder!) How the maze generation difficulty happens: In the string W$, there are 23 groups of 3 characters plus 16 'x', Corresponding to 24 lines of the screen. You can see the structure better with commas between every third char: W$ , a , aa, aa,haa,hha,hhh,hhh,hhh,hhh,hxh,hxx,xhh,xhh,xhp,xxh,xpp,xpp,xhh,xhp,xhh,xxx,xpp,xxxxxxxxxxxxxxxx row:2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 Space is blank, a is tree, h is dirt, x is rock, p is gold. The first char of each group (position K) is the edge border for that row. See E$ . So line 1 has a space, line 5 has dirt, line 13 has a rock. 30 K=I*3-2::E$=SEG$(W$,K,1) The other chars are chosen two at a time from the group of 16 starting at K: SEG$(W$,INT(RND*16+K),2) If you want to make the game easier, change the double 'xx' (rocks) to 'hx' or 'hh'. Especially that 'hxx' at row 12 can create a lot of difficulty for you! -
What would you do with dual screens on a 99/4A?
FarmerPotato replied to FarmerPotato's topic in TI-99/4A Development
Schematics drawn up... Superimpose is a lot harder than I can do in my coming spare time. External sync is the hardest part. I have no experience with analog video debugging. However a single 9958 board is quite doable (Stuart wants this). Or not as tricky, a twin 9958 board with one clock source (no PLL) with superimpose. Options: Twin+EXT: VDP2 can superimpose on VDP1 or EXT (ie EXT or VDP1 can be under the VDP2 image) Twin+Sup: VDP2 can superimpose on VDP1 Twin: just two screens, no superimpose Single: basic VDP upgrade I have dropped the expansion VRAM completely. Pro: VGA out (or SCART?) as well as composite, s-video upgrades a console to 80-column Plugs into 9918A socket Con: Bulky? or external 15KHz monitor required http://15khz.wikidot.com/ Requires 3 wires soldered (except Single) Obsolete when F18A mk2 comes out. EXT must also be an analog RGB, 15khz signal BOM (Bill of Materials) Part Description price source package Twin+EXT Twin+Sup Twin Single CD74HC4060 oscillator, counter 0.65 mouser SOIC-16 1 1 0 0 LT1675-1 RGB switch 3.21 mouser SO-8 3 3 0 0 SN74LV4046 VCO and PLL 1.36 mouser SO-16 1 0 0 0 LM1881 sync separator 0.70 ebay SO-16 1 1 1 1 CXA1645 composite encoder 1.13 ebay SO-16 2 2 2 1 41464 DRAM 1.79 unicorn DIP-16 8 8 8 4 V9958 VDP 10.00 ebay DIP-64 2 2 2 1 ATF16V8 logic 0.88 mouser PLCC-20 1 1 0 0 PCB PCB 1.00 oshpark sq in 20 15 15 10 crystal crystal 0.59 mouser TO-2 1 1 2 1 transistors linear 0.10 mouser TO-3 0 0 0 0 caps discrete 0.01 mouser SMD1206 21 19 19 11 resistors discrete 0.01 mouser SMD1206 12 12 12 9 DE-15 CORAS15SHD vga 0.84 unicorn rt angle 3 2 2 1 Total BOM Cost Twin+EXT 73.23 Twin+Super 66.01 Twin 56.32 Single 30.65 Based on 10 unit run. Trivia: Single VDP option can't be rightly be called Gemini, therefore it defaults to the name of VDP1: Cautes. -
stepped in where I left off 30 some years ago
FarmerPotato replied to tater1337's topic in TI-99/4A Computers
Welcome brother tater! Get in touch with Opry99er. He has excess equipment, and a users group, in Hustisford. -
10 Line XB entries: 10Liner 49er AND Gladiator
FarmerPotato replied to FarmerPotato's topic in TI-99/4A Computers
fixed - was CALL SCREEN( I think it became a ( :: before I hit the <> button. -
Joystick required. Dig down. Find the gold squares. version 1 10 DIM A$(24)::W$=" a aa aaa a a ahhhhxhxhxxxhhhhhxxhxhhxxxxhhxxxphpxpphhhxxxppxxxhppppxxppppx"::_=1::@=24 20 CALL CLEAR::CALL SCREEN(:: CALL COLOR(9,13,_)::CALL COLOR(10,7,_)::CALL COLOR(11,12,_)::CALL COLOR(12,15,_)::CALL COLOR(13,6,6) 30 F$="FFFFFFFFFFFFFFFF"::CALL CHAR(96,"18183C5A5A182858"&F$)::CALL CHAR(104,"55AA55AA55AA55AA")::CALL CHAR(112,F$)::CALL CHAR(120,F$) 40 FOR I=_ TO @::FOR J=_ TO 14::A$(I)=A$(I)&SEG$(W$,INT(RND*16+I*3),2)::NEXT J::PRINT A$(I) 50 NEXT I::FOR I=_ TO 5::DISPLAY AT(I,_):A$(I)::NEXT I::FOR I=6 TO @::CALL HCHAR(I,3,128,28)::NEXT I 60 C=16::R=4::CALL SPRITE(#1,96,14,R*8-7,C*8+9) 70 CALL JOYST(_,X,Y)::C1=C+X/4::R1=R-Y/4:: IF X<>0 AND C1>_ AND C1<28 THEN C=C1 ELSE IF R1>3 AND R1<@ THEN R=R1 80 IF SEG$(A$(R),C,_)="p" THEN G=G+_::DISPLAY AT(_,_) SIZE(3):G :: CALL SOUND(100,262,0,327,2,409,4) :: CALL SOUND(100,262,2,330,4,415,6) 90 IF R>4 THEN A$(R)=SEG$(A$(R),_,C-_)&CHR$(128)&SEG$(A$(R),C+_,28-C) 100 CALL LOCATE(#1,R*8-7,C*8+9)::FOR I=R-_ TO R+_::DISPLAY AT(I,C-_) SIZE(3):SEG$(A$(I),C-_,3)::NEXT I::GOTO 70 version 2. Graphic chars! Two color sprite! Rocks are unbreakable! 10 DIM A$(24)::W$= " a aa aahaahhahhhhhhhhhhhhhxhhxxxhhxhhxhpxxhxppxppxhhxhpxhhxxxxpp"&RPT$("x",16)::_=1::@=24::C=16::R=4 20 CALL CLEAR::CALL SCREEN(:: CALL COLOR(9,13,_,10,7,15,11,12,16,12,15,2,13,6,2)::F$=RPT$("F",16)::RANDOMIZE 30 CALL CHAR(96,"000C020509100000F00FF00FF00F1818606000FC606090D8",104,"33CC33CC33CC33CC",112,"FFDF8FDFFFFFFFFF",120,"74FAFA7A2AA98522",128,F$)::FOR I=_ TO @ 40 K=I*3-2::E$=SEG$(W$,K,_)::A$(I)=E$::FOR J=_ TO 13::A$(I)=A$(I)&SEG$(W$,INT(RND*16+K),2)::NEXT J::A$(I)=A$(I)&E$::PRINT A$(I) 50 NEXT I::DISPLAY AT(_,_) SIZE(12):"10LINER 49ER"::FOR I=6 TO @::CALL HCHAR(I,3,129,28)::NEXT I::CALL SPRITE(#1,96,2,25,137,#2,98,16,25,137) 60 CALL JOYST(_,X,Y)::C1=C+X/4::R1=R-Y/4 70 IF X<>0 AND C1>_ AND C1<28 AND SEG$(A$(R),C1,1)<>"x" THEN C=C1 ELSE IF Y<>0 AND R1>3 AND R1<@ AND SEG$(A$(R1),C,1)<>"x" THEN R=R1 80 G$=SEG$(A$(R),C,1)::IF R>4 THEN A$(R)=SEG$(A$(R),_,C-_)&CHR$(128)&SEG$(A$(R),C+_,28-C) 90 CALL LOCATE(#1,R*8-7,C*8+9,#2,R*8-7,C*8+9)::FOR I=R-_ TO R+_::DISPLAY AT(I,C-_) SIZE(3):SEG$(A$(I),C-_,3)::NEXT I::IF G$<>"p" THEN 60 100 G=G+_::DISPLAY AT(_,25) SIZE(4):G :: FOR I=2 TO 14 STEP 2::CALL SOUND(-200,262,I,330,I*2,415,16)::NEXT I::GOTO 60 version 3. Press fire to dynamite! You get 5. 10 DIM A$(24):: W$= " aa aa aahaahhahhhhhhhhhhhhhxhhxxxhhxhhxhpxxhxppxppxhhxhpxhhxxxxpp" &RPT$("x",16) ::_=1::@=24::C=16::R=4:$=CHR$(128)::M=999 20 CALL CLEAR::CALL SCREEN(:: CALL COLOR(9,13,_,10,7,15,11,12,16,12,15,2,13,6,2)::F$=RPT$("F",16)::RANDOMIZE 30 CALL CHAR(96,"000C020509100000F00FF00FF00F1818606000FC606090D8",104,"33CC33CC33CC33CC",112,"FFDF8FDFFFFFFFFF",120,"74FAFA7A2AA98522",128,F$)::FOR I=_ TO @ 40 K=I*3-2::E$=SEG$(W$,K,_)::A$(I)=E$::FOR J=_ TO 13::A$(I)=A$(I)&SEG$(W$,INT(RND*16+K),2)::NEXT J::A$(I)=A$(I)&E$::DISPLAY AT(I,1):A$(I) 50 NEXT I::DISPLAY AT(_,_) SIZE(12):"10LINER 49ER"::FOR I=6 TO @::CALL HCHAR(I,3,129,28)::NEXT I::CALL SPRITE(#1,96,2,25,137,#2,98,16,25,137) 60 CALL JOYST(_,X,Y)::C1=C+X/4::R1=R-Y/4::CALL KEY(_,K,S)::IF K=18 AND D<5 THEN CALL SOUND(M,-6,0)::A$(R1)=SEG$(A$(R1),_,C1-_)&D$&SEG$(A$(R1),C1+_,28-C1):=D+1::GOTO 90 70 IF X<>0 AND C1>_ AND C1<28 AND SEG$(A$(R),C1,1)<>"x" THEN C=C1 ELSE IF Y<>0 AND R1>3 AND R1<@ AND SEG$(A$(R1),C,1)<>"x" THEN R=R1 80 G$=SEG$(A$(R),C,1)::IF R>4 THEN A$(R)=SEG$(A$(R),_,C-_)&D$&SEG$(A$(R),C+_,28-C) 90 CALL LOCATE(#1,R*8-7,C*8+9,#2,R*8-7,C*8+9)::FOR I=R-_ TO R+_::DISPLAY AT(I,C-_) SIZE(3):SEG$(A$(I),C-_,3)::NEXT I::IF G$<>"p" THEN 60 100 G=G+_::DISPLAY AT(_,25) SIZE(4):G :: FOR I=2 TO 14 STEP 2::CALL SOUND(-200,262,I,330,I*2,415,16)::NEXT I::GOTO 60
-
I appreciate that, Albert. Here are some things I need volunteers to do: ================================================================= Volunteer jobs ================================================================= Attend the July 17 (3rd Wednesday) meeting for 99/4ATX business, during Hackerspace member work night. Preparation jobs: Buy tablecloths if desired (the tables are kinda scratched up.) Test the projector (is it working?) Solve videoconferencing (we need a Zoom Pro account if anyone has it, the free one won't be enough.) Snacks and drinks August 8 and 9 Move computers Setup room August 10 Pick up Food August 11 Tear down Special jobs Produce souvenir electronic badge Write software for badge Produce flyers Produce newbie guide to hand out to visitors
-
What would you do with dual screens on a 99/4A?
FarmerPotato replied to FarmerPotato's topic in TI-99/4A Development
I've identified the LT1675 as the switch for RGB superimpose. 1675-3 costs $7.88 in quantity 1, comes in SSOP-16 package (0.5 mm spacing, terrifying.) To get it in a reasonable package like SO-8 (1.27mm spacing), you need 3x of the 1675-1 which costs $3.21 in quantity 10. For sanity's sake I prefer the SO-8 packages. https://www.analog.com/en/products/lt1675.html -
ordered. I've never had a mouse on my Geneve.
-
What would you do with dual screens on a 99/4A?
FarmerPotato replied to FarmerPotato's topic in TI-99/4A Development
I spent May working on IceTea 0.2, now while I wait for boards from OSH Park I started laying out: Gemini - A Twin 9958 board to replace 9918. I started wondering how to best move data between screens, some kind of DMA maybe... I got the crazy idea to use 128K DRAM on each 9958, but, make the expansion 64K switchable. The first 9958 would use a block copy to move its data from main RAM to the expansion 64K. When the command finishes, the CPU would switch all the access lines to the other 9958. Hopefully this doesn't hurt the refresh cycle of the DRAM. The second 9958 would move from expansion RAM to the frame buffer in RAM. This would provide a way to flip a big chunk of data from one 9958 to the other. It's been 25 years since I programmed the 9938, so I forget whether there even is a block copy to expansion DRAM. Oh yeah, V9938 MSX-VIDEO USER'S MANUAL p 62 4.3 HMMM (High-speed move VRAM to VRAM The HMMM command transfers data in a specified rectangular area from the VRAM or the expansion RAM to the VRAM or the expansion RAM. -
Fest 99/4ATX will be held Friday August 9 to Sunday August 11. Details again: Dates are Friday August 9 to Sunday August 11. Costs for the event are: * A nominal charge for the 99/4ATX cartridge name badge, raffle ticket, snacks and drinks. * Breakfast or lunch on Saturday: group order of breakfast tacos and BBQ (County Line BBQ). * Otherwise open to free public walk-ins (I would expect others from the hackerspace and the local C-64 group.) Venue: ATX Hackerspace 9700 Dessau Rd, Austin TX. Has air conditioning, a kitchen, and wi-fi. Classroom and lounge for the weekend, at no cost. Guided tours of members only areas like 3D printing, metal shop, lasers etc. Format: BarCamp style. Attendees set up systems in the classroom or lounge or lobby. Anyone can schedule a presentation slot in the classroom or lounge, otherwise free form. Security: we can put gear in a locked room overnight. The building is keyed entry. Hardware: I can provide some P-Boxes, 4A consoles, monitors so you can travel lighter. Electronics lab available. Classroom has projection screen, whiteboard, giant monitor. Lodging: Super 8 near ATXHS is as low as $58. Marriot $118. There are a lot of options. Airport: Austin-Bergstrom airport ATX (sometimes AUS) Transportation: Volunteers can help with airport pickup; Uber is around $35. Food: Saturday: Breakfast Tacos. Lunch: barbecue delivery. Dinner: trip to Chuy's (Tex-Mex.) Lottery: badge holders only. One Dragon's Lair cartridge. Swap: bring items to sell or trade!
-
POLL: August 10 is the Date for Fest 99/4ATX (Austin, TX)
FarmerPotato replied to FarmerPotato's topic in TI-99/4A Computers
Alright, it's August 10. The sloth was very busy. -
What would you do with dual screens on a 99/4A?
FarmerPotato replied to FarmerPotato's topic in TI-99/4A Development
Another thing. The 9958 has 15KHz analog RGB output. Monitors to display that on are scarce. I wonder if there is an inexpensive IC that would do the job of converting analog RGB to DVI? This one costs $45: https://www.analog.com/media/en/technical-documentation/data-sheets/ADV7403.pdf Old $4 TVP7002 from TI takes analog RGB (multiplexed! superimpose!) but outputs 24 bit digital color. You need another chip to code that into a DVI signal.
