+kheller2 Posted October 19, 2021 Share Posted October 19, 2021 20 hours ago, kheller2 said: The left switch is ROM, the right is write protect. On the left switch you can see it toggles the blue to grey or yellow. I'm not sure if Purple is +5 or GND and is used for the LEDs. Blue also ties into the LEDs in one position or the other. The left switch has a solder bridge across the middle two pins tying blue to both poles (one for the ROM selection, one to light the LED). Hard to explain without a diagram This thing is fragile and tiny to my eyes. Just connecting blue to grey or yellow should work (I think). See previous post about numbering. Quote Link to comment Share on other sites More sharing options...
ndary Posted October 19, 2021 Share Posted October 19, 2021 1 hour ago, kheller2 said: Um, not like that. And that might have been bad. Starting from the RIGHT, let's call them 1-8. So the second pin from the RIGHT is #2 (i'm just making this numbering up) #2 should connect to #6 or #7 (which picks onboard vs expansion ROM) i did try with no luck, the drive motor does not spin, only the LED Light Quote Link to comment Share on other sites More sharing options...
+kheller2 Posted October 19, 2021 Share Posted October 19, 2021 I’ve confirmed on mine that jumpering the way you have will do one ROM or the other. You tried both positions and have the 1050 ROM installed? You validate each chip works on the expansion board? Quote Link to comment Share on other sites More sharing options...
ndary Posted October 19, 2021 Share Posted October 19, 2021 Yes I did try with and without the ROM And all chips are new Quote Link to comment Share on other sites More sharing options...
+bf2k+ Posted October 20, 2021 Share Posted October 20, 2021 Is the 6502 supposed to face in the opposite direction from the other chips (Eprom and Ram) on the happy board? I only ask because usually on most of these old-style boards, they normally all face the same way. Quote Link to comment Share on other sites More sharing options...
+kheller2 Posted October 20, 2021 Share Posted October 20, 2021 I noticed that a trace on the eBay boards had been cut, i measured it out on mine and it is also cut (but I just can't see it since its under these wonderful sockets). Again, I'm leaning toward their being something wrong with your chips, the eprom, something at this point. Does it require a 6502B? All my chips are scrubbed. Quote Link to comment Share on other sites More sharing options...
+kheller2 Posted December 9, 2021 Share Posted December 9, 2021 I've been working fixing one of these boards. The green wire is used to enable or disable on the stock 1050 ROM when you jumper the proper pins off that header. What is interesting about this is that with this board, and just the 6502 in its socket, and no modification to the 1050 board, you can use the 6502 as a 6507 replacement. However, I learned today that 6507 A12 must be wired to 6502 A15: A0-A11 direct mapping, but A12 goes to A15. I'm assuming there is a OS reason for that where the upper mirror of the memory map is important to the functioning of the stock OS. I'm a bit tired tonight so can anyone tell me why mapping A0-A12 directly doesn't work? 1 Quote Link to comment Share on other sites More sharing options...
E474 Posted December 9, 2021 Share Posted December 9, 2021 It might be to ensure it reads the startup address correctly. https://www.pagetable.com/?p=410 1 Quote Link to comment Share on other sites More sharing options...
ijor Posted December 9, 2021 Share Posted December 9, 2021 16 hours ago, kheller2 said: I've been working fixing one of these boards. The green wire is used to enable or disable on the stock 1050 ROM when you jumper the proper pins off that header. What is interesting about this is that with this board, and just the 6502 in its socket, and no modification to the 1050 board, you can use the 6502 as a 6507 replacement. However, I learned today that 6507 A12 must be wired to 6502 A15: A0-A11 direct mapping, but A12 goes to A15. I'm assuming there is a OS reason for that where the upper mirror of the memory map is important to the functioning of the stock OS. I'm a bit tired tonight so can anyone tell me why mapping A0-A12 directly doesn't work? I don't see why it would matter with a stock Rom. ROM in a 1050 is referenced at the page $FXXX. Any access to ROM, including the reset vectors, activates all the address lines A15-A12. And normally, whenever ROM is not accessed, all the upper address lines are low. So it should be exactly the same if you connect the 6507 A12 signal to any of A15-A12 at the 6502. It might make a difference if the firmware is attempting to access the ROM at a mirror address, such as $1XXX. But then it would actually work only the other way around, if you connect A12 to A12. Anyway, unless I miss something, I don't see the stock 1050 ROM referencing any mirror address. All ROM references seem to use the "canonical" address range at $FXXX, in which case it should not matter. Are you connecting directly to the CPU pin? Because otherwise something at the board level might be relevant. 5 hours ago, E474 said: It might be to ensure it reads the startup address correctly. https://www.pagetable.com/?p=410 It shouldn't. Reset vectors access asserts all the A15-A12 signals. Quote Link to comment Share on other sites More sharing options...
+Nezgar Posted December 9, 2021 Share Posted December 9, 2021 I have a Happy 1050 with the original ROM still in it's motherboard socket, with a nifty mod where a toggle switch determines which ROM receives power on a bent-out pin 28... the one on the 1050 motherboard, or the one on the happy board. So the original 1050 ROM works just fine with the happy's 6502, at least with a genuine happy board... Quote Link to comment Share on other sites More sharing options...
+kheller2 Posted December 9, 2021 Share Posted December 9, 2021 1 hour ago, ijor said: I don't see why it would matter with a stock Rom. ROM in a 1050 is referenced at the page $FXXX. Any access to ROM, including the reset vectors, activates all the address lines A15-A12. And normally, whenever ROM is not accessed, all the upper address lines are low. So it should be exactly the same if you connect the 6507 A12 signal to any of A15-A12 at the 6502. It might make a difference if the firmware is attempting to access the ROM at a mirror address, such as $1XXX. But then it would actually work only the other way around, if you connect A12 to A12. Anyway, unless I miss something, I don't see the stock 1050 ROM referencing any mirror address. All ROM references seem to use the "canonical" address range at $FXXX, in which case it should not matter. Are you connecting directly to the CPU pin? Because otherwise something at the board level might be relevant. It shouldn't. Reset vectors access asserts all the A15-A12 signals. I agree with you and it's racking my brain. Mind you this is a WST EPROM. This upgrade board is empty of all chips but the 6502. In fact, A12 was purposely cut trace wise on my working board to some LS chips and it wasn't until I probed it all out that somehow A12 is tied to A15 (and the only way that can happen is some magical tiny wire hidden under the full-blocking-can't-see-anything socket. As soon as I jumped A12 to A15 on the non-working board, the CPU worked and the stock drive booted. (mind you I still have other issues with this board -- like not working at all when trying to use the happy portion vs stock). So yes, there could be some other gremlins showing up here. I really need to create a 1050 rig where the CPU socket is broken out to another board via ribbon cable. And I really should just draw this all up in some schematic tool. But that's much harder than paper and pencil. Comparing this memory map: https://www.atarimax.com/jindroush.atari.org/data/ahard/mmap_1050.txt to the one in the Altirra HW guide, the only differences I see are what is really at $0080 and if the OS rom is at $1000 or $F000 Quote Link to comment Share on other sites More sharing options...
ijor Posted December 10, 2021 Share Posted December 10, 2021 (edited) 3 hours ago, kheller2 said: In fact, A12 was purposely cut trace wise on my working board to some LS chips and it wasn't until I probed it all out that somehow A12 is tied to A15 (and the only way that can happen is some magical tiny wire hidden under the full-blocking-can't-see-anything socket. As soon as I jumped A12 to A15 on the non-working board, the CPU worked and the stock drive booted. The enhancement boards, Happy and Duplicator, can't connect A12 directly between the 6502 and the 6507 socket. On the original 1050, A12 low means ROM is not accessed and it is used to activate the other chips (RAM,RIOT or FDC) depending on the lower address signals. But, for example in the Duplicator, ROM space is expanded to 8K, and then A12 might be low even when still accessing ROM at the $EXXX page. So A12 must be gated thought some extra logic to avoid this conflict. 3 hours ago, kheller2 said: Comparing this memory map: https://www.atarimax.com/jindroush.atari.org/data/ahard/mmap_1050.txt to the one in the Altirra HW guide, the only differences I see are what is really at $0080 and if the OS rom is at $1000 or $F000 It is the same. As described in both references, the address space is mirrored every 8K because the 6507 lacks the higher address signals. Edited December 10, 2021 by ijor 1 1 Quote Link to comment Share on other sites More sharing options...
SpicyChronos Posted December 14, 2021 Share Posted December 14, 2021 To the best of my ability, I have drawn out the clone board in KiCAD. I've also marked up pictures of the board with pinouts. I'm hoping this will help with troubleshooting this Happy clone board. I've built one up myself with the original board, and I get the same results as @ndary. Just a power light. Could it be because this EPROM is for a World Drive Mech, and not a Tandon Mech? Could we request another dump of the EPROM? Just for safety sake? -Marshall 1050 Happy Drive Clone PCB.zip 1 Quote Link to comment Share on other sites More sharing options...
+Nezgar Posted December 14, 2021 Share Posted December 14, 2021 @SpicyChronos WST / Tandon roms fundamentally only have stepper timing and phase encoding differences - the code should run just fine with either drive otherwise for testing POST, but don't expect a tandon drive to keep up with the WST step speeds. If you arent already - have you tested an EPROM in the 1050 mother board socket with the happy board in place with it's ROM socket empty and 6502 in place? This may help narrow down if the issue is with ROM socket wiring. Of course you'll need a 2732 type eprom to use in the motherboard socket... Quote Link to comment Share on other sites More sharing options...
+kheller2 Posted December 14, 2021 Share Posted December 14, 2021 *smack* I just spent some time today learning kicad and trying to draw the schematics as well. There are "hidden" differences between my working board and the bare board. I even ordered a bare board off eBay to take a look and try to figure it out. Note that the original board, at least the one I purchased still has traces intact that are cut on mine (as shown cut in the picture above). I'm very very new to kicad so its taking me a bit of time, but there are a few errors i noticed in your schematic, LS133 pin 9 goes to LS27 pin 13, for example. Also, on my board, somehow the 6507 A12 is connected to 6502 A15 directly. Making that connection and enabling the 1050 board ROM allows the 1050 to run stock. I've yet to figure out how to make the happy portion work on the questionable board. I suspect some additional hidden jumpers will be discovered. 1 Quote Link to comment Share on other sites More sharing options...
SpicyChronos Posted December 14, 2021 Share Posted December 14, 2021 @kheller2, thanks for looking over my work. I fixed the error you found, plus a few more I saw when reviewing. I've saved the changes and attached them again. When viewing the schematic in KiCAD, do all the components show? I'm wondering if the CPU and memory components populate, as I created those. I'll attach the library files I created for them, just to be safe. @Nezgar, I'll try that shortly. It's too late now to reliably trust my work at this hour. 1050 Happy Drive Clone PCB.zip KiCAD Footprints.zip Quote Link to comment Share on other sites More sharing options...
SpicyChronos Posted December 14, 2021 Share Posted December 14, 2021 Like I said, it's too late to be working on this. I caught another error. Updated ZIP.1050 Happy Drive Clone PCB.zip Quote Link to comment Share on other sites More sharing options...
+kheller2 Posted December 14, 2021 Share Posted December 14, 2021 SC (SpicyChronos), I'll take a look at this later tonight. I'm a bit under the weather today. I don't want this thread to devolve into a kicad training session for myself (do we have an autocad like forum here)? When I load up your original schematic my system complains about the libraries being to old, and none of the bus lines show up. I too had to create the SRAM chip from scratch by cloning an EPROM. I did find a MOS 650x library but the size of the chips all look the same on the schematic drawings -- I'm used to how Visio would allow you to rotate, move, autoroute etc.. which seems that kicad has some limitations with. I just want to move this chip over here (Drag) but also rotate it (busted every bus link) and how do I resize this.. or how can I re-order the pinouts dynamically Address then Data, but later I might want just pin numbers in order (which is what typically use for blackbox style understanding ... pin 3 to pin 7 to pin 2 to R1 ... I'll figure out later what that is after I have all the lines drawn). Anyhow... Looking over the only public happy schematics out there it seems that, at least in part, this board tries to use the option ROM method for the 1050 ROM -- and leaves a lot of signals available for possible other Happy additions. I 100% do not find this endeavor we are on practical --- if people want a Happy 1050, just buy one from AtariMax, however, this is fun trying to figure this thing out and once it is figured out, anyone can buy that $5 board off eBay and build their own. Quote Link to comment Share on other sites More sharing options...
+kheller2 Posted December 14, 2021 Share Posted December 14, 2021 14 hours ago, SpicyChronos said: I've built one up myself with the original board, and I get the same results as @ndary. Just a power light. Could it be because this EPROM is for a World Drive Mech, and not a Tandon Mech? Could we request another dump of the EPROM? Just for safety sake? -Marshall 1050 Happy Drive Clone PCB.zip 358.6 kB · 3 downloads The board I'm working on is ndary's. The eprom he sent with the board works just fine in my board. The first thing I did was pull all his chips, put them in my board and vice versa. All his chips worked in my board, none of mine worked in his. And here were are! I'm very tempted to remove the sockets on my board but worried I'll damage the mysterious hidden connections if I do, so I'm beeping it all out. Also note one needs to properly jumper pin 2 to 7 or 3 to 7 on that bottom left header to use the happy EPROM or the 1050 ROM/EPROM. Quote Link to comment Share on other sites More sharing options...
+kheller2 Posted December 18, 2021 Share Posted December 18, 2021 Okay, so I'm not proud of this diagram by any means. It is what just a few minutes with a new to me tool can produce without going into painful pin re-arrangements and component scale. A12 has a few names so I could keep it straight, OA12 (EPROM A12), CA12 (6502 CPU A12 and RAM A12), SA12 (Socket A12). Components are close to where they are on the clone board. Lifting pin 8 of the LS74, and jumping SA12 to A15 are the only things I've found different at the moment. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.