Jump to content



3

TRS-80 Questions


62 replies to this topic

#51 JamesD OFFLINE  

JamesD

    River Patroller

  • 3,013 posts

Posted Wed May 26, 2010 9:15 AM

 Tempest, on Tue May 25, 2010 8:24 PM, said:

It lives! Holding down the break key works! I get the Cass? Memory? and Basic copyright message. Err.. so what does that mean? Is it normal to hold down the break key? Does that mean the disk drives are bad? I don't have a TRS-80 disk to test it with.

Tempest
I can't remember what Cass is asking for (never used it) but Memory is asking for memory size. It lets you reserve memory it you need to. If you don't enter memory size it automatically detects it and doesn't reserve any more than normal.

There should be manuals in the TRS-80 archive torrent.

#52 Tempest ONLINE  

Tempest

    One Winged Moderator

  • 19,861 posts
  • Screaming at Fate
  • Location:Elysium

Posted Wed May 26, 2010 9:31 AM

 JamesD, on Wed May 26, 2010 9:12 AM, said:

I'd download the torrent I mentioned but you'll also need to transfer files to Model III disks.
If you have an old 360K drive I know there is a utility that can read/write many 8 bit formats. I used it to read my old CoCo disks. Sorry, I don't remember the name at the moment.
Yeah my problem is that I have no way of getting them to my TRS-80. The only possibility I can see is if I can get that 3.5" drive working on my PCjr, transfer the files from from modern PC to the PCjr (via 3.5" disk) and use that program to write the file to a 5.25" disk. That's a lot of work and a lot of "If I can get it to work's".

Tempest

#53 Bill_Loguidice OFFLINE  

Bill_Loguidice

    Dragonstomper

  • 948 posts
  • Armchair Arcade Managing Director
  • Location:Central New Jersey, USA

Posted Thu May 27, 2010 1:58 PM

 JamesD, on Tue May 25, 2010 6:54 PM, said:

 save2600, on Tue May 25, 2010 6:13 PM, said:

Neat stuff there George! Say... since some/most games utilize sound and it runs through the cassette interface, does it stand to reason we could hack our own cables to hook to a speaker or amplifier and then a speaker? I'm thinking that's got to be a line level output and that the cassette player amplifies the signal to drive its internal speaker. And I was shocked to hear one of those games had digitized speech even! :lol:
Actually, Radio Shack used to sell a little amplified speaker you could directly plug the cassette cable into.
It was never officially for use with their computers but I saw a lot of machines with those.


I have an "official" Radio Shack amplified speaker that I use with my TRS-80 systems. I just plug the standard cassette cable into it. I did a very old video, here, showing Frogger and Zaxxon: http://www.armchaira...m/neo/node/2684 (around the 3:50 mark it shows up clearly)

#54 Tempest ONLINE  

Tempest

    One Winged Moderator

  • 19,861 posts
  • Screaming at Fate
  • Location:Elysium

Posted Thu May 27, 2010 2:17 PM

 Bill_Loguidice, on Thu May 27, 2010 1:58 PM, said:

I have an "official" Radio Shack amplified speaker that I use with my TRS-80 systems. I just plug the standard cassette cable into it. I did a very old video, here, showing Frogger and Zaxxon: http://www.armchaira...m/neo/node/2684 (around the 3:50 mark it shows up clearly)
Where did you get that cable from? That's what I really need. I assume if you have a cable like that you can plug it in to any type of speaker/amplifier?

Tempest

#55 JamesD OFFLINE  

JamesD

    River Patroller

  • 3,013 posts

Posted Thu May 27, 2010 3:08 PM

 Tempest, on Wed May 26, 2010 9:31 AM, said:

 JamesD, on Wed May 26, 2010 9:12 AM, said:

I'd download the torrent I mentioned but you'll also need to transfer files to Model III disks.
If you have an old 360K drive I know there is a utility that can read/write many 8 bit formats. I used it to read my old CoCo disks. Sorry, I don't remember the name at the moment.
Yeah my problem is that I have no way of getting them to my TRS-80. The only possibility I can see is if I can get that 3.5" drive working on my PCjr, transfer the files from from modern PC to the PCjr (via 3.5" disk) and use that program to write the file to a 5.25" disk. That's a lot of work and a lot of "If I can get it to work's".

Tempest
The utility runs on the PC.

#56 JamesD OFFLINE  

JamesD

    River Patroller

  • 3,013 posts

Posted Thu May 27, 2010 3:12 PM

 Bill_Loguidice, on Thu May 27, 2010 1:58 PM, said:

 JamesD, on Tue May 25, 2010 6:54 PM, said:

 save2600, on Tue May 25, 2010 6:13 PM, said:

Neat stuff there George! Say... since some/most games utilize sound and it runs through the cassette interface, does it stand to reason we could hack our own cables to hook to a speaker or amplifier and then a speaker? I'm thinking that's got to be a line level output and that the cassette player amplifies the signal to drive its internal speaker. And I was shocked to hear one of those games had digitized speech even! :lol:
Actually, Radio Shack used to sell a little amplified speaker you could directly plug the cassette cable into.
It was never officially for use with their computers but I saw a lot of machines with those.


I have an "official" Radio Shack amplified speaker that I use with my TRS-80 systems. I just plug the standard cassette cable into it. I did a very old video, here, showing Frogger and Zaxxon: http://www.armchaira...m/neo/node/2684 (around the 3:50 mark it shows up clearly)
Same one but the ones I saw never mention computer or TRS-80 on the packaging.

#57 George Phillips OFFLINE  

George Phillips

    Space Invader

  • 11 posts

Posted Thu May 27, 2010 9:12 PM

 JamesD, on Wed May 26, 2010 9:15 AM, said:

I can't remember what Cass is asking for (never used it) but Memory is asking for memory size. It lets you reserve memory it you need to. If you don't enter memory size it automatically detects it and doesn't reserve any more than normal.

There should be manuals in the TRS-80 archive torrent.

Cass? is prompting for the default cassette save/load speed. You can type either "L" or "H" for low or high speed. If you just hit ENTER you get high speed.

Low speed (500 baud) is for Model I compatibility. High speed was an improvement that came with the Model III and allows a blazing 1500 baud. Plus it uses FM encoding making it far more reliable. One you're in BASIC you can change the speed by POKEing a memory location I'm too lazy to look up.

That reminds me, a quick way to check your speaker setup is to type "CSAVE" in BASIC. It will give you a "?MO" error but not before making a buzzing sound on the cassette output. The "MO" means missing operand as CSAVE expects a single character name as in: CSAVE "A"

The cassette port is a reasonable way to run most programs, especially games. I have a few notes on that. I should add a few notes on cables, Cass? and the like.

#58 Tempest ONLINE  

Tempest

    One Winged Moderator

  • 19,861 posts
  • Screaming at Fate
  • Location:Elysium

Posted Fri May 28, 2010 7:25 AM

I was digging through my box of CoCo crap last night and found a cassette player (the later 82 model), which I believe works with the TRS-80 as well. Now I just need the cable to hook it up to the computer. Where can I get one of those?

Tempest

#59 jhd OFFLINE  

jhd

    Moonsweeper

  • 450 posts
  • Location:Calgary, Alberta, Canada

Posted Fri May 28, 2010 2:12 PM

 Tempest, on Fri May 28, 2010 7:25 AM, said:

I was digging through my box of CoCo crap last night and found a cassette player (the later 82 model), which I believe works with the TRS-80 as well. Now I just need the cable to hook it up to the computer. Where can I get one of those?

I cannot with the source for a cable -- I bought mine at the nearest Radio Shack in about 1982 :D -- but I can tell you that it is the very same cable for both the Coco and the Model III.

I am enjoying this thread; I have not seen or touched a Model III since Junior High (ca. 1984). We had a few games for it, but nothing spectacular. I saw 13 Ghosts reviewed in a magazine, but I never got to play it; I did not know that Zaxxon had ever been ported to the system.

#60 JamesD OFFLINE  

JamesD

    River Patroller

  • 3,013 posts

Posted Fri May 28, 2010 11:25 PM

 Tempest, on Fri May 28, 2010 7:25 AM, said:

I was digging through my box of CoCo crap last night and found a cassette player (the later 82 model), which I believe works with the TRS-80 as well. Now I just need the cable to hook it up to the computer. Where can I get one of those?

Tempest
ebay has them show up every now and then, if not there you can build one. The pinout and connector info is on the web.
If you find a cable for sale somewhere, make sure the computer end uses metal for the round part around the pins. The plastic ones only fit the Model I if I remember right.

#61 Chuck D. Head OFFLINE  

Chuck D. Head

    Stargunner

  • 1,900 posts
  • INTV Illuminati
  • Location:Woodland, WA

Posted Wed Sep 15, 2010 1:20 AM

 Tempest, on Fri May 28, 2010 7:25 AM, said:

I was digging through my box of CoCo crap last night and found a cassette player (the later 82 model), which I believe works with the TRS-80 as well. Now I just need the cable to hook it up to the computer. Where can I get one of those?

Tempest

Didja find a cable, Tempest? If not, PM me your mailing address, and I will give you my extra one from the CoCo I didn't even know I had. I was moving an S-Load of stuff that I stored when we moved my dad out and found a box with a nice working coco, a few app cartridges, the big programming tutorial set, and a foot-high stack of trs-80 books abd manuals. Anyway, it all works and there's an extra cable that you are welcome to. I would love to find the correct cassette deck for this thing. Morgan

#62 chjmartin2 OFFLINE  

chjmartin2

    Moonsweeper

  • 259 posts
  • Location:Massachusetts

Posted Fri Dec 2, 2011 1:09 PM

 George Phillips, on Tue May 25, 2010 10:36 AM, said:

One thing you can do is hold on the BREAK key and then turn on the power (or hold on BREAK and press the orange reset switch). This tells the machine to ignore the disc drives and go into BASIC. You should see a "Cass?" prompt (press ENTER) and a "Memory Size?" prompt (also press ENTER). There will be some copyright information and then the BASIC "READY" prompt. But mainly even just the "Cass?" prompt will show that the machine is basically working.

Sound on the machine comes by way of the cassette tape storage. It can save and load programs from cassette tapes which means it essentially has microphone and speaker connections that normally attach to a cassette tape player. This required a bit of work to set up so only games ever did audio output.

Incidentally, I've made some programs that push the TRS-80 graphics about as far as they can go. Check them out starting here: http://members.shaw....eakthrough.html

My favorite is the bouncing ball:



I daresay they'd be cool to see on the real machine. As far as I know only one Model III in the world has ever run them.

George,

Any chance you could give us some insight as to how you timed the graphics update to double the vertical resolution? Was it a tweak of the graphics chip or just very solid timing on character/memory updates? I develop for the Aquarius, and I have even more limitations to what can be done on the display. (40x24[5] with 8x8 characters, and two colors per character from 16) There is a "graphics" mode, (we call it bloxel, but that is Jay's word for it) and it is a set of characters that are 2x3 in each character cell, giving an effective resolution of 80x72 (again, limited to two colors for each 2x3 block.) There has been some thought that you could stretch the vertical resolution somewhat by timing the screen update such that you change the character as the beam is drawing the screen, to expand the vertical resolution. I can write some programs, but counting cycles to match the NTSC signal, and the fact that I only have a VBLANK flag to work with (no HBLANK) makes it seem impossible. Since the TRS-80 Model I has a Z80, I would imagine that the code may be somewhat portable to the Aquarius.

Any thoughts?

Thanks,

Chris

#63 George Phillips OFFLINE  

George Phillips

    Space Invader

  • 11 posts

Posted Sat Dec 3, 2011 3:03 AM

 chjmartin2, on Fri Dec 2, 2011 1:09 PM, said:

 George Phillips, on Tue May 25, 2010 10:36 AM, said:

Incidentally, I've made some programs that push the TRS-80 graphics about as far as they can go. Check them out starting here: http://members.shaw....eakthrough.html

Any chance you could give us some insight as to how you timed the graphics update to double the vertical resolution? Was it a tweak of the graphics chip or just very solid timing on character/memory updates? I develop for the Aquarius, and I have even more limitations to what can be done on the display. (40x24[5] with 8x8 characters, and two colors per character from 16) There is a "graphics" mode, (we call it bloxel, but that is Jay's word for it) and it is a set of characters that are 2x3 in each character cell, giving an effective resolution of 80x72 (again, limited to two colors for each 2x3 block.) There has been some thought that you could stretch the vertical resolution somewhat by timing the screen update such that you change the character as the beam is drawing the screen, to expand the vertical resolution. I can write some programs, but counting cycles to match the NTSC signal, and the fact that I only have a VBLANK flag to work with (no HBLANK) makes it seem impossible. Since the TRS-80 Model I has a Z80, I would imagine that the code may be somewhat portable to the Aquarius.

It's done with very solid timing on memory updates. The TRS-80 Model III doesn't have an HBLANK interrupt. It has a VBLANK interrupt but it only fires every second frame. I use that to get in sync with the display and then just cycle count everything after that forever.

You can read about the technique in more detail starting here: http://members.shaw..../beamhack1.html

A few things you might find helpful:

Subroutine that runs for most any number of cycles: http://members.shaw..../beamhack3.html

Z-80 instruction time summary: http://members.shaw....00/T-states.txt

Z-80 assembler with support for cycle counting: http://members.shaw....p2000/zmac.html

The only hardware trick is turning off wait states on video memory. This makes the timing simpler and allows more changes to be done per line at the cost of video accesses making horizontal black bars on the screen when the Z-80 takes priority over the display circuitry. Fortunately the number of Z-80 cycles per display line is 128 exactly so there's no need to deal with fractional values.

I'd recommend starting with a program runs an uninterruptable loop changing one character on the screen from all bits set to all bits clear every N cycles where N is the number of cycles in a line. With any luck you'll see it show up as interleaved on and off strips.

Here's an outline:

	 ld  hl,screen_memory_location
	 ld  a,0
loop:
	 ld  (hl),a	; set character (7 cycles)
	 xor 255	   ; flip between all clear, all set (7 cycles)
   ... add whatever instructions you like to add up to N - 24 cycles
	 jp  loop	  ; loop back (10 cycles)

I'm assuming 0 <-> 255 will flip between all bits set and all bits off. But you can easily generalize to flipping between values J and K by loading A with J and xoring with "J xor K".

The rest is just a matter of hooking into VBLANK and counting cycles until you get to the lines you want changed.




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users