cx2k Posted January 19, 2019 Share Posted January 19, 2019 So, I just upgraded an 800xl to 256K. I noticed that after the upgrade, i have to wait ~8-10 seconds after power off before powering on again. If I don't, it's like the memory is not clearing/draining and it just comes back with a blue screen (doesn't boot). I thought this might be an issue with the newer type ram that came with the upgrade so I ordered some old school ram and the problem is just as bad. I remember seeing this issue back in the day, but honestly don't remember what the fix is. Any ideas or help would be appreciated. Thanks, John Quote Link to comment Share on other sites More sharing options...
+kheller2 Posted January 19, 2019 Share Posted January 19, 2019 This is normal. You have to wait for the RAM to lose its memory. I would imagine the newer RAM upgrades, like the U1M are shorter. Someone would need to chime in on that, but the old school DRAM upgrades require you wait several seconds. Quote Link to comment Share on other sites More sharing options...
+DrVenkman Posted January 19, 2019 Share Posted January 19, 2019 This is normal. You have to wait for the RAM to lose its memory. I would imagine the newer RAM upgrades, like the U1M are shorter. Someone would need to chime in on that, but the old school DRAM upgrades require you wait several seconds. With a U1MB, the delay is mainly just whatever's necessary for the main electrolytic caps to discharge - a second or two at most is normally fine. However, with a U1MB installed, you can generally force a cold reset from the BIOS menu screen with no need to physically power-cycle the machine often at all. 1 Quote Link to comment Share on other sites More sharing options...
+MrFish Posted January 19, 2019 Share Posted January 19, 2019 (edited) I always remembered reading about using a delay before powering on an Atari after just powering it down. There are 3 different places where it's stated in the 130XE manual. I imagine this is duplicated in the manuals for other models too. "Whenever you turn your computer off, wait a moment before turning it on again." ---------- "If you have already been using another software program, turn off the computer, remove the first cartridge, insert the new cartridge, wait several seconds, and turn on the computer again." ---------- "If you have just been using another cartridge, wait a moment between the time you insert the new cartridge and the time you turn the computer back on." Edited January 19, 2019 by MrFish Quote Link to comment Share on other sites More sharing options...
R.Cade Posted January 19, 2019 Share Posted January 19, 2019 Is there just an easy patch to the ROM to make it cold boot no matter what? What use is the warm boot anyway- it's just an annoyance. Quote Link to comment Share on other sites More sharing options...
SS Posted January 19, 2019 Share Posted January 19, 2019 My own experience is that there is basically no powercycle wait time required at all on my stock 800XL or U1MB upgraded 800XL. However, my ANTONIA board upgraded 600XL does require the 8-10 seconds that you describe in order to reset itself. Quote Link to comment Share on other sites More sharing options...
+Nezgar Posted January 19, 2019 Share Posted January 19, 2019 HiassofT's highspeed SIO patch includes a feature for SHIFT+RESET does a coldstart, which is handy in this scenario: http://www.horus.com/~hias/atari/#hipatch I never experienced this issue with the 320K upgrade in my 130XE, since it maintains the original 64K base RAM chips, and only replaces the extended RAM I guess. You can download a pre-made version of XL/XE OS Rev.2 with the Highspeed SIO patch V1.30 here: http://atariage.com/forums/topic/206880-130xe-reverse-option-key-for-basic/page-2?do=findComment&comment=3944284 - Reverse BASIC - shift-reset coldstart - fast math pack - corrected checksums for self test ROM check 1 Quote Link to comment Share on other sites More sharing options...
flashjazzcat Posted January 19, 2019 Share Posted January 19, 2019 However, with a U1MB installed, you can generally force a cold reset from the BIOS menu screen with no need to physically power-cycle the machine often at all. You can also force an OS reboot via Select+Reset outside of the BIOS menu if you enable 'Cold boot' in 'BIOS Settings'. 2 Quote Link to comment Share on other sites More sharing options...
+Nezgar Posted January 19, 2019 Share Posted January 19, 2019 There's also a nice cold reset button on Side2, ultimate, and UNO carts. Tap it, then reset does a coldstart even with stock OS. 2 Quote Link to comment Share on other sites More sharing options...
_The Doctor__ Posted January 19, 2019 Share Posted January 19, 2019 11 to 15 seconds... that was the target for a clean cold boot... the warm start is how we keep ramdisks and tsr's alive in the Atari... depending on what all you have loaded... Quote Link to comment Share on other sites More sharing options...
flashjazzcat Posted January 19, 2019 Share Posted January 19, 2019 There's also a nice cold reset button on Side2, ultimate, and UNO carts. Tap it, then reset does a coldstart even with stock OS. The cart reset buttons instigate an OS reboot by reactivating the boot bank of the cartridge (commonly the loader), which causes the OS to sense a cartridge change and reboot. Quote Link to comment Share on other sites More sharing options...
Mathy Posted January 19, 2019 Share Posted January 19, 2019 Hello guys IIRC the UltraSpeedPlus OS by CSS eliminates the need to wait between "OFF" and "ON". So there has to be a way to force a software cold start after a hardware cold start automatically. Sincerely Mathy Quote Link to comment Share on other sites More sharing options...
NISMOPC Posted January 19, 2019 Share Posted January 19, 2019 There is also "The Freezer" by Bob Woolley where you add a hard boot recycle button that safely resets. Do a search... ...I am adding one to my upgraded 600XL when I get time. I have all the necessary parts, just haven't taken the time. Quote Link to comment Share on other sites More sharing options...
flashjazzcat Posted January 19, 2019 Share Posted January 19, 2019 So there has to be a way to force a software cold start after a hardware cold start automatically. Yes, it's easy: just clear RAM, or at least the OS magic bytes, or jump through the OS coldstart vector. The wait between 'off' and 'on' is necessary because you're waiting for the contents of RAM to drain away without being manually cleared by the CPU. Quote Link to comment Share on other sites More sharing options...
Mathy Posted January 19, 2019 Share Posted January 19, 2019 Hello Jon Just to make thing clear: We either wait before we restart the computer or the OS has to either a) clear the RAM, b) clear the OS magic bytes or c) jump to through the OS cold start vector? Sincerely Mathy Quote Link to comment Share on other sites More sharing options...
flashjazzcat Posted January 19, 2019 Share Posted January 19, 2019 Essentially, although on some machines the DRAM clears (or at least changes) almost immediately anyway as soon as power is shut off. But if the important RAM locations don't change quickly enough, the OS believes reset was pressed and attempts a warm-start (a cold power-up is really just a system reset with completely undefined RAM contents). Of course the warm-start usually fails because other parts of RAM did change when the power was cut and any executable code in RAM is likely heavily corrupted. 1 Quote Link to comment Share on other sites More sharing options...
+Stephen Posted January 19, 2019 Share Posted January 19, 2019 Wonder why the 130XE never had this issue? Al least, not to my knowledge. Mine certainly never did. Quote Link to comment Share on other sites More sharing options...
cx2k Posted January 19, 2019 Author Share Posted January 19, 2019 Yeah, I have an old Rambo upgraded 800XL that didn't require more than the normal 2-3 seconds. I almost thought about replacing some caps (maybe they're keeping charge on the ram?). I use a couple of cold-start tricks since back in the day. From Basic - Poke 580,1 then press Reset (+option to boot without basic) From Dos - option M (run at address) enter E477 then return. This will cold boot as soon as you hit return (so hold option first for no basic) John 1 Quote Link to comment Share on other sites More sharing options...
Rybags Posted January 20, 2019 Share Posted January 20, 2019 Some XL/XEs will resume after a quick power cycle. The modern day upgrades - 2 reasons why they'll usually act normally during a quick cycle: 1. It's only the main memory that's important - the flags concerned live in page 2-3 in low memory. 2. Most modern upgrades use static memory which has to be constantly powered and loses contents very quickly when the power drains. Dynamic Rams improved in retention as time went on. Look at the C= Plus/4 as an example. It uses the Ram technology common to the XE and has the exact same clock rate. The Plus/4 only provides 5 refresh cycles per normal scanline where Atari does 9. The datasheets for memory chips are usually pessimistic in their refresh specifications - the reality is they'll often be good with a fraction of the required cycles. But also note of course that normal memory accesses usually refresh the entire row, some old computers actually used that fact to generate auto-refresh. Quote Link to comment Share on other sites More sharing options...
Faicuai Posted January 20, 2019 Share Posted January 20, 2019 (edited) If for some unforseen reason, base-memory is not being cleared up fast enough between power-cycling (which is NOT the case on Incognito, as it also substitutes base memory), you can control this LIVE, by simply resorting to OS (XL/XE) built-in handlers of PWS / PCS (Perform Warm Start, Perform Cold Start routines) as well as corresponding status registers: 1. Ram Location $0244: reads $FF for COLD starts, and reads $00 for Warm Starts. 2. Ram Location $03F8: reads $01 when Basic absent, or $00 for Basic present. On ANY Atari XL/XE OS machine, you can simply store a $FF on $0244 and then run / jump into $C2A1, which is OS LEGAL entry-point for PWS/PCS. If you jump there, OS will check for COLD or WARM start status byte on $0244 (as well as $03F8) and run the CORRESPONDING code, including dual-stage memory sizing + clearing + testing (yes, there is a dedicated MEMORY TEST independent and prior-to SELF-TEST menu). If, in addition to all this, you also set $03F8 to zero, you will instruct OS to bring back Basic-ROM into $A000-$BFFF space, and also boot it with OS's built-in cart Manager. In addition to the above, you can ALSO combine use of $0244 and $03F8 status-bytes, with OS built-in cart-boot manager, which you can invoke by jumping to $C3C4, if fast cart-restart only is required. This all can be done with EYE2.COM loaded, Assembler Editor, Monkey Wrench II (if you are using XL-XE OS with Right-Cart extensions) or even from Basic (preferably Altirra Basic, as you can poke directly HEX addresses and values). Edited January 20, 2019 by Faicuai Quote Link to comment Share on other sites More sharing options...
Rybags Posted January 20, 2019 Share Posted January 20, 2019 (edited) There's no "legal" entry points in the OS at $Cxxx. Just because most or all OSes might have that code there doesn't make it so. The only legal direct jumps are around $E4xx and the FP ones around $D8xx to $DFxx Edited January 20, 2019 by Rybags 1 Quote Link to comment Share on other sites More sharing options...
Faicuai Posted January 20, 2019 Share Posted January 20, 2019 There's no "legal" entry points in the OS at $Cxxx. Just because most or all OSes might have that code there doesn't make it so. The only legal direct jumps are around $E4xx. Yes, there is: ** PWS - Perform Warmstart* * ENTRY JMP PWS * * EXIT * Exits to PCS or PRS * * MODS * Original Author Unknown * 1. Bring closer to Coding Standard (object unchanged). * R. K. Nordin 11/01/83 PWS = * ;entry ; Initialize. SEI ; Check for cartridge change. LDA TRIG3 ;cartridge interlock CMP GINTLK ;previous cartridge interlock status BNE PCS ;if cartridge changed, perform coldstart Quote Link to comment Share on other sites More sharing options...
Rybags Posted January 20, 2019 Share Posted January 20, 2019 (edited) Such documentation in the source code doesn't make it legal either. All that's needed is a single change before it and the address changes. The proper warmstart entry point is and always has and will be $E474. Edited January 20, 2019 by Rybags 5 Quote Link to comment Share on other sites More sharing options...
Faicuai Posted January 20, 2019 Share Posted January 20, 2019 (edited) Such documentation in the source code doesn't make it legal either. All that's needed is a single change before it and the address changes. The proper warmstart entry point is and always has and will be $E474. That's not true, either. $C2A1 is an EFFECTIVE and DOCUMENTED entry-point to PCS/PWS since 1983. That is not used, not known, ignored, neglected, or not published as such is another story. It does NOT invalidate it neither technically, nor functionally in absolutely any form or shape... to such an extent that I can say it yields in more consistent and predictable results than repeated / iterative System Reset (with carts like Monkey Wrench II, for instance). Edited January 20, 2019 by Faicuai Quote Link to comment Share on other sites More sharing options...
Rybags Posted January 20, 2019 Share Posted January 20, 2019 (edited) /headdesk. Just the mere fact it's in the $Cxxx area means it's outside the realm of the original OS. "Documented" doesn't mean squat. It's still not a recognised legal entry point, and the only usage case would be if you're developing a custom OS and using it from within it. Anyway - feel free to continue your false beliefs, it's not as if you'll be releasing software that's going to affect people due to them. Edited January 20, 2019 by Rybags 1 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.