¿ªÔÆÌåÓý

ctrl + shift + ? for shortcuts
© 2025 Groups.io
Date

Re: OTish: ROM/RAM bank switching in the 2467 et al.

 

Hi Siggi,

The option boards do indeed have their own ROM, and some (like the GPIB option) even have their own additional RAM.

The service manual says that 0x1000-0x7FFF are "Reserved for Options". A quick look through the theory of operation for the various options for both the plain and A/B models says that the ROM and various control registers are all overlayed within this area. To resolve the conflict, each option board is assigned a unique bit at address 0x7FFF to enable or disable it. For example, the GPIB board is controlled by bit 0, the TV board is controlled with bit 5, and so on.

It seems that there are also some fixed allocations as well (not overlayed). For example, the buffer board has a ROM that goes from 0x1000-0x1FFF and is not paged. And similarly, the GPIB board has a ROM that goes from 0x2000-0x3BFF that is not paged. But the GPIB board also has another ROM that IS paged (meaning can be enabled and disabled via 0x7FFF) from 0x4000-0x7fff. I'm guessing the GPIB interface needed an "always-ON" ROM so it could more quickly handle interrupts emanating from the GPIB controller.

And then for added fun, they added the A5 main board ROM banking in the A/B models.

It's crazy complicated, but fortunately well-documented in the address decoding tables in all the option theory sections.

-mark

On Sat, Nov 27, 2021 at 11:24 AM, Siggi wrote:

On Fri, Nov 26, 2021 at 9:13 PM Mark Litwack <mlitwack@...>
wrote:

I looked at the address decoding about 3 years ago. The goal was clearly
to be able to access all the RAM. But, as you point out, if they did it
would overlay the I/O address space. I think the easiest path was to make
the full 8k of RAM appear elsewhere. This would have had advantages in
minimizing design changes to the hardware moving from the 2445/2465 base
design and options, and also minimizing changes to driver code when ported
from the 2445/2465.
Ah - somehow I totally overlooked the fact that the 2465A/2467 et al have
8K of RAM, whereas the original address mapping only allotted 2K of address
space. So the answer was staring me in the face the whole time :).
I believe option boards also have ROM, so maybe the existing option boards
rely on the location of the IO range?


Re: OTish: ROM/RAM bank switching in the 2467 et al.

 

On Fri, Nov 26, 2021 at 9:13 PM Mark Litwack <mlitwack@...>
wrote:

I looked at the address decoding about 3 years ago. The goal was clearly
to be able to access all the RAM. But, as you point out, if they did it
would overlay the I/O address space. I think the easiest path was to make
the full 8k of RAM appear elsewhere. This would have had advantages in
minimizing design changes to the hardware moving from the 2445/2465 base
design and options, and also minimizing changes to driver code when ported
from the 2445/2465.
Ah - somehow I totally overlooked the fact that the 2465A/2467 et al have
8K of RAM, whereas the original address mapping only allotted 2K of address
space. So the answer was staring me in the face the whole time :).
I believe option boards also have ROM, so maybe the existing option boards
rely on the location of the IO range?


Re: AA5001 GPIB Trouble Shooting

 

On 2021-11-27 11:00 a.m., Brian Nordlund wrote:
Toby-
I used DeoxIT-gold. I didn¡¯t know whether the contacts were gold, but I have had good luck with that cleaner being gentle on plastics, so that was my choice and it seemed to work well after a lot of exercising of the switches.
Thanks! I have some Deoxit D series but it's the brush type not spray.

--Toby


Thanks
Brian.


Re: AA5001 GPIB Trouble Shooting

 

Toby-
I used DeoxIT-gold. I didn¡¯t know whether the contacts were gold, but I have had good luck with that cleaner being gentle on plastics, so that was my choice and it seemed to work well after a lot of exercising of the switches.

Thanks
Brian.


Re: AA5001 GPIB Trouble Shooting

 

On 2021-11-27 1:15 a.m., Brian Nordlund wrote:
Dave-
BINGO - You were right on target. I have always had pretty good luck by just exercising similar DIP switches, but these have to be the worst ones I have come across. All six switches were stuck open, causing it be set to a GPIB address of "0", which of course is nonsense / non-functional.
It took about 20 minutes of spraying and flip-flopping, but I finally got the switches to work, and the module now works great.
Just curious what you sprayed into them. I have an HP 1340A XY with a stuck DIP switch - a signal attenuator switch - seems like bad design to have raw signals passing through these tiny cheap switches?

--Toby


Thank you for reminding me to investigate the simple things first, as I was preparing to dive into an overly complicated investigation.
Brian.


Re: bandwidth

 

Bob, Did you ever try the adjustments Tom mentioned? I did not see anyone mention the tube itself as a cause, I remember Tektronix replacing tubes in some of our scopes because they did not meet bandwidth.
Jeff


Re: 492 spectrum analyzer sweep linearity

 

Michael,

DISCLAIMER: I know nothing about the instrument in question, and am just reading the service manual PDFs on the TekWiki, so my comments may be completely off base.

The problem, if I understand your description (and the associated image) is that the sweep is too fast at the start (the time marks are expanded), and too slow at then end (time marks compressed)? That sounds to me as if the sweep signal has "too much" of the normal charge curve of a capacitor, rather than just the early portion that should look very linear. If the sweep signal were being generated in a very simple way (just charging a capacitor with a constant voltage through a current limiting resistor) we would expect that this would be caused either by the resistor having decreased in value, and thus charging the capacitor faster, or by the capacitor having decreased in value (and charging up to the non-linear region sooner).

The description of the sweep generator in the service manual indicates that the current source for the integrator is more complex than just a current limiting resistor, so I doubt that's the issue (but I'd try to check it, nevertheless). It's possible that the timing capacitors are off (C2094 2ms-100ms, C2098 20us-1ms, and C3079 200ms-10s), but it seems more likely that only one of them would be bad. Since you are seeing this with 10ms pulses I would suspect C2094 may be bad (or maybe Q3095 which feeds it?).

I also notice that there is a trim pot (R5105) in the current source labeled "SWP ACCURACY" which sounds like it may be of interest.

-- Jeff Dutky


Re: AA5001 GPIB Trouble Shooting

 

Dave-
BINGO - You were right on target. I have always had pretty good luck by just exercising similar DIP switches, but these have to be the worst ones I have come across. All six switches were stuck open, causing it be set to a GPIB address of "0", which of course is nonsense / non-functional.

It took about 20 minutes of spraying and flip-flopping, but I finally got the switches to work, and the module now works great.

Thank you for reminding me to investigate the simple things first, as I was preparing to dive into an overly complicated investigation.
Brian.


Re: OTish: ROM/RAM bank switching in the 2467 et al.

 

Hi Siggi,

I looked at the address decoding about 3 years ago. The goal was clearly to be able to access all the RAM. But, as you point out, if they did it would overlay the I/O address space. I think the easiest path was to make the full 8k of RAM appear elsewhere. This would have had advantages in minimizing design changes to the hardware moving from the 2445/2465 base design and options, and also minimizing changes to driver code when ported from the 2445/2465.

I guess they thought they had plenty of EPROM, and the expanded and non-volatile RAM storage was more valuable for any futures they could cook up. And it's less bits for the PAL to look at if they tried to split up the 8k.

That's my guess, anyway. Only the original the developers could say for sure.

I think I had found a couple of instances of jumps to the higher RAM page area (0x8000-0x9FFF). Can you say self-modifying code? I didn't dig into that much further.

The 2445/2465 is a much easier place to start when trying to understand Tek's code. I was going to write a Tek-specific disassembler that understood the later model banking natively, but hadn't gotten around to it. Maybe IDA can do it?

-mark


Re: 7603 HV POWER SUPPLY 1980

 

Joe,

C1258 could be bad. Mine is film. The original is electrolytic. Parts to the right of this part, in the schematic, are the things to check. Things like VR1258, d-c restorer diodes, preset pot open, R1245C/D open, bad solder joints, etc. look to be the problem. Check voltages at each end of the preset pot and wiper. If any of the d-c restorer diodes are bad, use 1N4937 diodes to replace them. Remove and reseat the connectors. A dirty connector can cause problems.

Mark


Re: Free 545A posted in Northern California CL

 

Great to hear, Dave. Glad all that equipment will be going to a good home.

-Stefan


Re: 7603 HV POWER SUPPLY 1980

 

My focus pot OK and it's connected to 130v and to the board I will try to find schemantic and layout from above as the focus preset pot has no effect I though trouble might be in HV section but I could be wrong about this.

Joe


Re: 7603 HV POWER SUPPLY 1980

 

Joe,

My focus pot literally burned up. I had to replace it with one of the same size with a shorter shaft and two resistors on each side of the ends. The replacement pot is lower in resistance and the resistors on each end to B+ and ground were figured with the pot at centre.The original is 1/2W when it should be 2w, 50,000 ohms across the B+ to ground for the focus. I would like to find a pot I can use the element and replace the shaft as the original is long. Your focus pot is most likely bad.

Mark


Re: TEKTRONIX 475 VOLTS/DIV

 

C


Re: Free 545A posted in Northern California CL

 

I got an email this morning from the seller.? He had been busy for the last few days, and out of the many replies he got, he chose mine! (because I sounded like I knew what I talking about, not just a "sounds cool, can I have them.." response)? Finally got a copy of Stan's book!
Now I just need to sort through it all and see what works/needs help.? Aaannnndd find some space...
-Dave

On Wednesday, November 24, 2021, 04:17:57 PM PST, Dick <w1ksz@...> wrote:

I hope someone saves this package from being plundered
by some tube merchant.

73, Dick, W1KSZ
________________________________
From: [email protected] <[email protected]> on behalf of Stefan <Sscandizzo@...>
Sent: Wednesday, November 24, 2021 5:05 PM
To: [email protected] <[email protected]>
Subject: [TekScopes] Free 545A posted in Northern California CL



I live in the area but no way I could handle this project.

-Stefan


Re: OTish: ROM/RAM bank switching in the 2467 et al.

 

Interesting.

I've looked at a DM5010 code (6809) and I can throw a few observations at you, which (time frame wise) may well be useful.

1) I think it was all handwritten assembly run through an assembler.? That would be typical of the time period, since the code would be smaller and the processor only had 64K of memory.

The 6809 has an internal RAM area, which may or may not be switched in.? IIRC, it could be battery backed up.

I've done 6502 designs, and my preference would be to have a boot ROM at the highest 16K of memory, then switch ROM banks in for the next 16K down (0x8000 to 0xBFFF).? If I were to switch in RAM, it would be from 0x4000 to 0x7FFF.

However, since neither 6809 nor 6502 have a separate IO space, some space needs to be reserved for that.

One trick to use is to overlay memory, but it needs to be done as follows:

Overlay RAM over the write only registers implemented in simple (LS374, etc) hardware.? It makes them read/modify/write since the hardware needed to make the registers can get nasty.? For chips that include R/W capability (6820, etc), the chips cannot be overlaid.

Depending on how complicated the PLD is, you can overlay everything, and then punch holes in the RAM where an I/O chip resides.

So depending on what they did with I/O, maybe remapping memory at 0x8000 makes some sense, especially if it's only a few K.

Another software consideration is that there may have been a commercial floating point package bought as assembly code from an outside vendor, since the 65xx and 68xx processors don't have floating point.

There may be some "processor sanity" programming to make sure that the processor itself is working properly.? It was common in military programming at the time, and I seem to remember that kind of thing in the 468 scope, and the DM5010.

Harvey

On 11/26/2021 1:37 PM, Siggi via groups.io wrote:
On Wed, Nov 24, 2021 at 2:14 PM Jeff Dutky <jeff.dutky@...> wrote:

do the locations 0x8000-0x9FFFF contain interrupt vectors which may need
to be modified? That would be the main reason that I would expect random
bits of memory to be remapped from ROM to RAM.
I'm not deep into this yet, as first I needed to fix Ghidra's 6800
disassembler. The one that comes with it seems to be incomplete to plain
wrong, and so the disassembly it yielded didn't make much sense. Thankfully
there's a quite good 6809 disassembler I could water down to get most of
the 6800 op codes, then add back the handful of op codes that are different
in the 6809.

The 2465 was introduced in 1984, and I assume that much of the code I'm
looking at dates back to the original 2465. Maybe it even dates back
further to earlier microcontroller-driven scopes?
The TekWiki page on the 2465 () names
some of the engineers that worked on the hardware, I wonder if the same
people also worked on the firmware.

I haven't looked at anything like this before and I wonder what sort of
development environment the engineers had. It looks like the calling
conventions used are all over the map, which probably means this was all
hand-coded assembly. The A/B/X registers are used to pass arguments, though
not in any consistent order. Most functions seem to set a global that's
then tested or retrieved by the caller, but there are at least some utility
functions that return values through registers.
The instruction set on the 6800 is pretty minimal, and the register layout
is absolutely minimal. As a case in point, there's no way to store or load
from the upper or lower bytes of the X (or S) register, so the only way to
e.g. do 8+16 bit addition is by storing the 16 bit value to memory and
doing the sum from there.

In any case, the couple of uses of this alternate RAM mapping that I've
found so far seem quite curious. Ghidra's support for memory banking
seems fairly minimal, and it's a hassle to trace the control flow when
it crosses banks, so I haven't traced more than one or two cases. I'm
tempted to backtrace and look at the 2465, as it has a simpler memory
layout without any banking.
Maybe the original design of the 2465A/B had assumed more RAM was needed
and slotted it into that part of the address space, rather than to move the
IO Register space, which abuts the RAM in the original design. Maybe there
were features planned that never made it to production, that would have
required more RAM. Maybe this was a case where it was easier to modify the
hardware to fit an existing piece of firmware, than to rewrite or patch up
the firmware. The address mapping in question is under the PAL's control so
it's a trivial hardware change to add this mapping.
Wouldn't it be fun to know...





Re: OTish: ROM/RAM bank switching in the 2467 et al.

 

On Wed, Nov 24, 2021 at 2:14 PM Jeff Dutky <jeff.dutky@...> wrote:

do the locations 0x8000-0x9FFFF contain interrupt vectors which may need
to be modified? That would be the main reason that I would expect random
bits of memory to be remapped from ROM to RAM.
I'm not deep into this yet, as first I needed to fix Ghidra's 6800
disassembler. The one that comes with it seems to be incomplete to plain
wrong, and so the disassembly it yielded didn't make much sense. Thankfully
there's a quite good 6809 disassembler I could water down to get most of
the 6800 op codes, then add back the handful of op codes that are different
in the 6809.

The 2465 was introduced in 1984, and I assume that much of the code I'm
looking at dates back to the original 2465. Maybe it even dates back
further to earlier microcontroller-driven scopes?
The TekWiki page on the 2465 () names
some of the engineers that worked on the hardware, I wonder if the same
people also worked on the firmware.

I haven't looked at anything like this before and I wonder what sort of
development environment the engineers had. It looks like the calling
conventions used are all over the map, which probably means this was all
hand-coded assembly. The A/B/X registers are used to pass arguments, though
not in any consistent order. Most functions seem to set a global that's
then tested or retrieved by the caller, but there are at least some utility
functions that return values through registers.
The instruction set on the 6800 is pretty minimal, and the register layout
is absolutely minimal. As a case in point, there's no way to store or load
from the upper or lower bytes of the X (or S) register, so the only way to
e.g. do 8+16 bit addition is by storing the 16 bit value to memory and
doing the sum from there.

In any case, the couple of uses of this alternate RAM mapping that I've
found so far seem quite curious. Ghidra's support for memory banking
seems fairly minimal, and it's a hassle to trace the control flow when
it crosses banks, so I haven't traced more than one or two cases. I'm
tempted to backtrace and look at the 2465, as it has a simpler memory
layout without any banking.
Maybe the original design of the 2465A/B had assumed more RAM was needed
and slotted it into that part of the address space, rather than to move the
IO Register space, which abuts the RAM in the original design. Maybe there
were features planned that never made it to production, that would have
required more RAM. Maybe this was a case where it was easier to modify the
hardware to fit an existing piece of firmware, than to rewrite or patch up
the firmware. The address mapping in question is under the PAL's control so
it's a trivial hardware change to add this mapping.
Wouldn't it be fun to know...


Re: 492 spectrum analyzer sweep linearity

 

I replaced the resistors... but it didn't help 8-(


Re: 7603 HV POWER SUPPLY 1980

 

Hi Joe,

Take a look at the last few pages of your manual. It has
updated power supply details there.

If your copy doesn't include these pages look for the
manual on w140.com.

Regarding the focus issue, check that both the A and B
cables (single wires) are connected at both ends. One
end is in the HV compartment, the other on the Z axis
board. They're easily dislodged.

If they're sound, I guess it might be the focus DC restorer
at fault: that definitely did change in later versions.

Regards,
Nick

On 26/11/2021, joe price <joeprice@...> wrote:
Where can I fid the schematic and pats layout for my HV power supply it
doesn't agree with older ones found on BAMA etc. built around 1980?
I have a focus issue on the bench scope that i have used many years the
FOCUS PRESET nor the screwdriver focus have any effect.
I checked HV power supply and I have correct voltage -2975.

Joe wa9cgz






7603 HV POWER SUPPLY 1980

 

Where can I fid the schematic and pats layout for my HV power supply it doesn't agree with older ones found on BAMA etc. built around 1980?
I have a focus issue on the bench scope that i have used many years the FOCUS PRESET nor the screwdriver focus have any effect.
I checked HV power supply and I have correct voltage -2975.

Joe wa9cgz