Jump to content

FarmerPotato

+AtariAge Subscriber
  • Content Count

    1,464
  • Joined

  • Last visited

Everything posted by FarmerPotato

  1. So, hexbus alerted me to this, Basic Fun to Reissue Speak and Spell in Fall 2019 for $25 https://gizmodo.com/my-favorite-childhood-gadget-of-the-80s-the-speak-sp-1832140129 Spoiler: it doesn't do any voice synthesis, there's no TMS5100 emulated or otherwise. It features new studio samples that sound like a robot instead. Not real thrilled about that. Some history of Speak and Spell: https://www.thoughtco.com/what-is-a-speak-and-spell-1992413 Sourced from this great VCF interview: http://www.vintagecomputing.com/index.php/archives/528
  2. I love how the assembler even has 990 instructions that don't exist on the 9900 like LDS and LIIM. (search in this forum for their use on 99110.) I am continually amazed that this "hobby" continues to yield up more knowledge. (In my case, 80s hobby became career.)
  3. Fascinating. http://www.old-computers.com/museum/computer.asp?c=123&st=1says its engineers were from TI. This has a new to me (old) chip, the TMS3556. The TMS3556 video display processor (VDP) provides a 40x25 color text mode, 320x250 bitmapped graphics, or mixed mode. The pattern name table is 16 bits per screen position: 3 bits for forgeground color, 2 bits for pattern bank, 1 inversion bit, 2 bits for double width / double height, 1 bit flashing, and 7 bits for character code. This gives an effective 9 bits in the character codes, for up 512 characters. Character definitions are 8x10. http://bitsavers.trailing-edge.com/components/ti/_dataBooks/TMS3556_Mar84.pdf Space characters' attribute bits have a completely different meaning. They set the background color for the following characters! Also bits for M)asking, I)ncrustation, and U)nderlining. Masking hides the following characters. Incrustation raises an external sync signal. Underlining does what it says. Full bitmap mode consumes 3 bytes of BGR data per 8 pixels, each pixel using 1 bit of each byte. Mixed mode allows the video mode to switch from text to bitmap after any row. The first row must be text, (80 bytes) but then the 81st and 82nd bytes are loaded into command register CM4, which can effect a switch to bitmap mode. A bitmap line takes 120 bytes per line, plus the 2 command bytes which go into CM4. (Additionally, the top row can be hidden.) An external circuit is shown which adds 8 levels of grayscale at the cost of the I bit. The I bit can be switched on and off by the attributes on the Space character. I found this to be a fascinating chip, something I dreamed about having in 1984, but never heard of. There are many more nice features in there than I cover in this brief summary.
  4. Could it be your RS232 cable? Does it work with other software? (like TI BASIC) Here is one source of pinout info: http://www.nouspikel.com/ti99/titechpages.htm
  5. cbmeeks accidentally spoke the name of the IEEE-488 card, which got me thinking. IEEE-488 is a communications standard also known as GPIB. (General Purpose Instruments Bus.) It was commonly used to connect electronics test and laboratory equipment. Commodore PET used it as a peripheral bus. TI made a lot of GPIB gear, especially the one-chip TMS9914A controller. They designed a GPIB card for the TI-99/4A, but it was not marketed. The schematic for the TI-99/4A IEEE-488 card is here: http://www.mainbyte.com/ti99/schematic/ieee488.jpg It contains a DSR. It contains a PAL, however its used for only 4 output signals which are pretty obvious. Here is the TI manual for the TMS9914A controller chip: http://bitsavers.trailing-edge.com/components/ti/TMS9900/TMS9914A_General_Purpose_Interface_Bus_Controller_Data_Manual_Dec82.pdf The first product of National Instruments was a GPIB card for the PDP-11. (Not to be confused with TI.. NI made an employee T-shirt saying "National Instruments--Not Selling Calculators since 1976.") NI had a second source or clone chip, NAT9914, pin compatible with TMS9914A controller. http://www.ni.com/pdf/manuals/372013b.pdf I have a pile of GPIB bus testers in my garage with NAT9914 chips. I'm not sure if I have any actually useful GPIB devices. You can still get TMS9914A from China surplus. Here is a Dr Dobbs article on making a GPIB: http://www.drdobbs.com/embedded-systems/implementing-the-gpib/184408548 I'm not saying I actually want a GPIB card, just collecting together the puzzle pieces here.
  6. Well, this is new. Jameco is reporting a tariff surcharge on this SRAM. IC,SRAM,62256LP-70,5V, 32kx8,DIP-28,70ns 82472 4 $2.49 $9.96 Tariff Surcharge: $1.25
  7. I have started writing an optimized rectangle fill in assembly. I'll post what I have on Sunday. The ideas above are all good; ABC DEF GHI I am covering the special case of erasing a rectangle that does not cross a tile boundary, that is A and C are within the same byte of the bitmap. A further enhancement would check if the desired fill color is already the BG or FG color of the row. I think Thom just needs a routine for mundane cases 1-3 though I imagine a smart case 4: 1. fill or clear, with every color byte set to one FG BG "pen" value 2. fill with just FG color written, BG unchanged 3. clear with just BG color written, FG unchanged 4. compare desired color to existing FG or BG, fill or clear accordingly, else act as FG UPDATE: still working on this. It's going to be a big routine, around 512 bytes. I have all the "corner" (haha) cases written but not debugged. (eek, something is filling 100% of vdp ram). pseudocode: Process coordinates Calculate address of A Form bits for edge A (possibly AND with edge C) Bitwise OR A,D,G Find address of C relative to A Bitwise OR C,F,I Fill B Fill E Fill H I might be able to flip the order so it goes left to right, but I have run out of temp registers!
  8. Hi Rasmus, Thanks for sharing this link. I spent hours reading examples! I notice they don't have TMS9900 assembly, though they have Z80, 6502, PDP-11 as well as ARM and x86. And lots of 8-bit machine BASICs. I wonder if we could populate some examples?
  9. it's the format used by the console rom interrupt routine. Length N, sound bytes[N], duration (in 1/60s) repeat until duration = 0 the sound bytes are 76489 command bytes. You can get code that takes the sound list from cpu ram, and set a pointer to that in >83C4, the user interrupt hook.
  10. I haven't tested this, except to check compile syntax. Disclaimer: I have never used libti99, I'm translating up to C from an assembly language sound player. Here is a program to load an interrupt sound list. I give you Munchman "gulp" sound, which is much more friendly than the BEEP (I didn't grab the actual console beep, just copied BF's) Set vaddr to an address in VDP - the ISR needs to have the sound list in VDP (or GROM .. but) #include "vdp.h" #include "sound.h" void sndplay(unsigned char* sndlst, int len) { int vaddr = 0x300; // address of a vdp buffer you know of, to put the sound list into vdpmemcpy(vaddr, sndlst, len); SET_SOUND_PTR(vaddr); SET_SOUND_VDP(); START_SOUND(); } int main() { // 166 ms beep char beep[] = { 3, 0x80, 0x05, 0x91, 10, 1, 0x9f, 0 }; char honk[] = { 3, 0x81, 0x20, 0x90, 10, 1, 0x9f, 0 }; // Munchman eat energizer sound char energz[] = { 6,0x9F,0xDF,0xFF,0xA0,0x08,0xB2,1, 1,0xB4,1, 1,0xB6,1, 1,0xBF,0 }; sndplay(&beep[0], sizeof(beep)); sndplay(&honk[0], sizeof(honk)); sndplay(&energz[0], sizeof(energz)); }
  11. No, they just answer across the room. They are susceptible to noise though. For my next trick. My brother spliced two RS232 cables together (minus some signals) so that 2 4As could share one modem. It works and you both read the incoming text, until you both try to type at once.
  12. Yes, I can boot MDOS 1.23 from floppy for instance. I think I will take Greg's input and try to get the GoTek proved out on the 4A. It might be a Lotharek. I'll check. OK, I'm going to do this 32k upgrade: http://www.mainbyte.com/ti99/geneve/geneve32k.html I do have a MFM drive from the Insane One. My EPROM is the original from 1987 that boots from floppy. (It just doesn't turn on the HFDC light.) One more item: does MDOS support the IDE card?
  13. I need to get my Geneve up and running and I'm stuck. Help! Opry99 only got to see the MDOS prompt and I vowed to do better. First of all, I have the original Geneve card, no mods, TI floppy controller, booting ancient 1.01 and 1.14 and 1.23. Most of my floppies from 1992 are DSDD and I can't use them. 1. Would someone be willing to send me single density floppies with software for an unmodified Geneve? GenProg, anything really. A term program so I can transfer files... I know I can't run the later MDOS versions. Or suggest what combination of mass storage is going to work for the Geneve. Images that might work with my GoTek for instance. 2. I am open to upgrading my Geneve to enable current MDOS. I'm not sure where to get instructions. I'm equipped and capable of doing it. 3. Stuff I have that might be useful: * I purchased a Gotek from arcadeshopper about 3 years ago but have had no success getting it to work. * I do have a Kryoflux to read my DSDD disks but don't know how to move files onto physical disks. * I have a IDE card for the 4A that I've never tried out. Not sure if MDOS supports that. If so, I can try CF on it. * EZ135 SCSI external. I used them a lot back in the day. 4. Stuff I have that is not working, not really pursuing: * Geneve that appears to have piggybacked RAM (former MaTIUG member). It doesn't see the TI floppy controller. This one was working fine before some moves. * HFDC card for Geneve.. this one was from Insane and I plugged in into a P-box of a 4A with a flex card and that may have done something bad to it. Kind of stuck there. Thank you for any assistance!
  14. They turn up sometimes. I have acquired two TI couplers with big collections. They don't seem to add a premium! I used an (Apple) Novation CAT acoustic coupler with my Geneve for a while. (Hello CAT.. I found you in the garage yesterday while looking for Geneve stuff.) They can even talk to each other through the air, a trick I should bring out again for public demonstration.
  15. I forget what the XOPs do and I can't find my MDOS manual. is this accurate? http://ftp.whtech.com/Geneve/mdos/MDOS%20Development%20documents/Video%20XOP's.pdf I think I used XOP 1 to set the mode and then wrote everything else direct. What does XOP 4 do? SetDisPage. It does have a flag to set tables or not. I see XOP >37 GetTables which looks useful. You can get inverse characters, or a second color of text, by setting up the 9938 directly in Text2 mode (80 column). 1. Set VR12 to the other FG-BG colors (like VR7) 2. Set the color table address using VR3 and VR10 (high bits) 3. Set the ON and OFF times in VR13. OFF time is the duration that colors in VR7 apply, ON time is the duration that colors in VR12 apply to positions with the Blink bit set. Always ON: set VR13 to >F0. Equal ON/OFF blink time: >66 (for example). 4. To "blink" the Nth screen image table position, set the Nth bit in the color table.
  16. Are you changing the pattern generator table address (in VDP R#4?)
  17. I got up super early Thursday to see this great news. I want to do a special display for Midwest Gaming Classic Apr 11-13. The staff there are mostly of an age to remember laser disc games in the 80s and Dragon's Lair is the flagship. We have never had a working laserdisc on the show floor, that I can recall, in more than 10 years, but we talk about Super Don Quixote, Mach 3, Thayer's Quest, and the most elusive Esh's Aurunmilla.
  18. Monty built up his music tools software company Sonic Foundry through some exciting years. They made Sound Forge and ACID. I read an interview with him during those days. Sony acquired most of Sonic Foundry. Later they pivoted to a product, MediaSite, for serving online lectures (media asset management for universities). Currently Monty is CTO at InHub, whose product manages e-docs for investment managers. Probably he has left retro hobbies behind. However, he has stayed around Madison, WI (where he went to university).
  19. Yes, thank you, that should do everything I need.
  20. I don't so much need the 4K RAM and would rather have LBLA built in.
  21. Somehow I plain forgot that the E/A disk includes the debugger source code. Duh. I have RSBUG, which is an RS232 debugger, and was thinking of using that. This one: TITL '99/4A RS232 DEBUGGER V 2.4' IDT 'RSBUG2.4' DEF RSBUG * AORG >F000 *(C)1983 Texas Instruments Inc. ******************************************* * RS232 Debugger Version 2.4 (06/05/83) * ******************************************* * enable one port and one baud rate *CR9902 EQU >1340 9902 address (port 1) CR9902 EQU >1380 9902 address (port 2) *CR9902 EQU >1540 9902 address (port 3) *CR9902 EQU >1580 9902 address (port 4)
  22. Sorry, I don't have a GRAM device. Not interested in GROM.
  23. Wow, I am glad to learn about these. They look a bit like drywall screws. I can find Hi-Lo and Plastite #6 and #8 online in bulk for 3-5 cents apiece. Where bulk is 10,000. Whoa.
  24. I need a monitor/debugger program that can fit in an 8k rom (maybe more.) Any suggestions for source code to such a thing? I have TI's RSBUG source code for starters. I need the usual things like M)odify memory, C)RU, E)xecute. Ideally I would incorporate the Line-by-line-assembler too. Is there source for that out there? I've been living out of Mini Memory Easy Bug, and 32k, and would like to cobble together a 8k debugger utility cartridge.
×
×
  • Create New...