• Updated 2023-07-12: Hello, Guest! Welcome back, and be sure to check out this follow-up post about our outage a week or so ago.

What OS for my PowerBook 1400c?

Punkyclown

Well-known member
Hi All, since I am struggling mightily to get software to run on my powerbook 1400c, the 
question arises. Which version of Mac OS should I be running on my Mac?  The System is
a PowerPC 603e running at 117mhz, it has 32mgs of ram installed and Virtual ram is set
at 32mgs. I am using a 1 gig hard drive, I am currently running Mac OS 9.1.  A lot of the
software I am trying to use requires MacTCP, only OS 9.1 doesn't use it, it uses MacTCP DNR.
This is obviously not the same thing.  So I am open to suggestions as to what OS would be
best for my set up?
Thanks in advance for the advice
Brad Hansen

 

LaPorta

Well-known member
7.6, 8, 8.6 i’d Recommend. My 1400 has 8.6 on it. I use a PCMCIA Ethernet adaptor for connectivity.

 

Cory5412

Daring Pioneer of the Future
Staff member
If your software can't use OpenTransport at all, I believe system 7.5.5 or 7.6.1 can be switched away from OpenTransport and use MacTCP.

I tend to recommend 7.6.1 in almost all cases, but I don't know for sure if MacTCP will run on 7.6.1. Getting away from MacTCP is one of the biggest reasons I usually go to 7.6.1 or 8.1.

 

nglevin

Well-known member
Open Transport has a MacTCP translation layer. I'm not sure you really do want to deal with MacTCP 2.0.x itself because it is old, and buggy.

MacTCP DNR is just a Domain Name Resolver for MacTCP-compatible interfaces, it's what turns domains like google.com into some IPv4 related numbers thing like 208.129.29.1 or so. Nothing to be worried about. MacTCP itself has a version of that.

Most of the reasoning why people avoided Open Transport ten or twenty years ago was for the memory overhead. For instance, if you're trying to connect to the Internet on 4 MB of RAM or less, and you don't mind creating your own static IP to resolve without the help of DNS, and that rebooting your Mac every time you want to make a connection change is an acceptable tradeoff. Your average web browser can and will take up more than 4 MB of RAM, so unless you see yourself sticking with Archie, FTP, Gopher and some other super old Internet protocols that predate SSL, MacTCP might not work out.

 
Last edited by a moderator:

just.in.time

Well-known member
I’m not sure in regards to your networking question, but in regards to general 1400 OS choices, on the 117mhz version, especially since you are at 32mb of RAM, I’d stick with Mac OS 8.1. As I recall, the 117mhz CPU daughter card lacked the L2 cache that the 133 and 166 MHz cpus had. This deals a decent blow to performance. Depending on the software you are running, you might be able to do 8.1 with virtual memory turned off to get a little bit more performance out of your system.

If you had the 133 or 166mhz cpu (and thus, the L2 cache) and 32mb of RAM I’d say 8.6. And 9.1 with those CPUs and ~48mb or more of memory.

 

Cory5412

Daring Pioneer of the Future
Staff member
I don't recommend turning off VM, doing so could reduce performance on a PowerPC system, especially one that actually has low RAM, and especially anything with storage that isn't particularly fast.

On a system like that, you might want to look into using SpeedDoubler 8 on anything lower than ~Mac OS 8.5, because the 1400 is, basically, a portable PowerMac 6200. (I have actually been meaning to benchmark this, but just thinking about it right now, it might not make a difference for the benchmark I was considering.)

On a /117 with 32M of RAM or less, I'd go 7.6.1 or 8.1, but let's be real: I use 7.6.1 on my /166 with 64M of RAM.

 

just.in.time

Well-known member
I don't recommend turning off VM, doing so could reduce performance on a PowerPC system, especially one that actually has low RAM, and especially anything with storage that isn't particularly fast.
I always turn off Virtual Memory unless absolutely necessary to have it on.  Allocating memory on the hard drive will always be way slower than restricting the system to using real RAM, hard stop.  Obviously there are cases where you simply don't or can't have any more physical RAM installed and it becomes necessary to utilize Virtual Memory to be able to run an application.  Such as on systems with limited RAM capacity like a Macintosh TV (8mb) or Color Classic (10mb), or rare/expensive RAM like some PowerBook or IIfx systems.  That said, most (if not all) PowerPC systems support at least 64mb of RAM, which is plenty enough to run 8.1 and a couple apps comfortably with VM turned off, excluding things like large Photoshop files or attempted modern web browsing.  For most cases, 32mb is still comfortable.  And for playing vintage B&W games, playing lower-bitrate MP3 files or running an FTP LAN server my SE/30 running 8.1 with 20mb of RAM cruises smoothly with VM turned off.

Additionally, if you are trying to use a vintage Mac system for video playback or MP3 playback and are experiencing choppiness just on the edge of smooth playback, turning off Virtual Memory will often give the system just enough extra breathing room to get smooth playback. Can confirm for video playback on PowerBook 3400c and Beige G3 systems, as well as MP3 playback on an SE/30.

Literally the only downside to running with Virtual Memory turned off is that the OS and many applications will use up a bit more memory.  Assuming you have enough physical RAM installed to cover that overhead, not an issue. In Classic Mac OS, if you are out of RAM (Virtual or physical) the system won't so much as slow down as it will literally just throw up an error saying you are out of memory and instruct you to try closing other applications before opening the application that doesn't have enough space.

... are you sure you didn't mean to say you don't recommend turning ON VM?

 

Cory5412

Daring Pioneer of the Future
Staff member
On 68k Macs, the hardware PMMU can work around this problem and so it typically doesn't matter there. On PPC, I'd say VM on unless absolutely necessary for some reason. (For example: Apple Video Player recommends VM off, but IME it, and even recording from it works fine with VM on.)

On PowerPC systems, turning VM off causes the needed RAM allocations to increase and causes the entire application binary to need to be read from disk into RAM each time you launch it.

Using it is generally speaking a waste of your real RAM. I, personally, even on fast PowerPC systems, only turn off VM if the machine has so much RAM it's inevitable *(that point is 1GB).

It's not the end of the world, but in a system with any less than 256 megs of RAM you're losing out, I think, especially since those systems tend to have slower disk access. (i.e. "load the entire program from disk" wouldn't matter if your boot disk is something like a SATA SSD.) (It also, of course, depends on what applications you're launching.)

In my experience, the hard disk won't actually ever get touched in Classic Mac OS with VM on unless you do actually exceed your physical RAM for some reason. Granted, even on PPCs, reaching the maximum RAM allocation in Classic Mac OS isn't a very big deal because instead of crashing and burning like Mac OS X will, Classic Mac OS just denies you launching the next program.

Even if you allocate literally 1MB to VM, it's better to have it on than not. It can be the difference between smoothly multitasking three apps and only being able to use one program, because of how different the RAM allocations are. *(And: I don't mean by having a huge VM allocation, I mean, because each program will immediately allocate its entire potential RAM size, leaving vast wastes of unused RAM.)

 
Last edited by a moderator:

just.in.time

Well-known member
I see what you are saying.  I've never personally developed Mac Classic software, only OS X.  So I don't have a horse in this race, aside from my own experience on my handful of vintage systems.  However, these professionals say otherwise, stating that they believe Virtual Memory can cause performance issues in Classic Mac OS:

*Floodgap, of Classilla: http://www.floodgap.com/software/classilla/releases/

*Lisa Brenneis, author of Final Cut Pro 3 for Macintosh (pg 629): https://books.google.com/books?id=I0Xer0v_amUC&pg=PA629&lpg=PA629

*Maxis, of Full Tilt! Pinball (Space Cadet [aka Windows 95-XP Pinball], Skulduggery, Dragon's Keep): Read me states playing with Virtual Memory turned on may cause a decline in performance, especially in the area of speed.  They go on to recommend turning off virtual memory if possible.  The notable exception being on the PM 7100 due to a memory mapping note, but does not mention any other systems.  And even then, it still notes a potential speed hit (I assume in regards to frame rate, but I don't have a 7100 to test that).

At any rate, if Virtual Memory being turned on works for you, then keep doing it :)  I however will continue to keep it off except for the couple of situations stated above (limited/rare RAM... though I own no systems that use "rare" RAM).

Back on track for @Punkyclown, Mac OS 9 is getting pretty cramped on a system with only 32 mb of RAM.  7.6.1 to 8.1 will probably be your best bet for performance on your RAM/CPU/noL2cache combo PowerBook 1400c.  Just curious, what software are you trying to use that is requiring MacTCP?  After digging around, I see that I have that set up for my Macintosh SE running 7.1 (an 8mhz, yes 'eight' mhz, machine that is significantly less powerful than your 1400c) as it was much more light weight than OpenTransport that replaced it.  However I've never ran into a piece of software that is aware of the backend networking aside from TCP/IP vs AppleTalk.

 

Franklinstein

Well-known member
VM sucks but is sometimes a necessary evil. As noted, turning it off drastically increases real RAM consumption by all apps and the system (a fairly vanilla 8.6 install uses about 24MB with VM off, whereas it's about half that with VM on). However it does slow things down, especially when other processes are competing for disk access. Typically I have it off if a machine has more than 32MB (OS 8.1 or lower, 68k) or 64~256MB (OS 8.1~9.1 on PPC) of RAM.

On this (and really, any) 1400, I would recommend 7.6.1 or 8.1, maybe 8.6 if you really needed it for a specific program, but no way would I put OS 9 on it (too heavy and breaks some legacy apps). With any OS you'll want Speed Doubler 8 to go with it, especially on 7.6.1. OS 8.6 doesn't have too many benefits on this model, especially since it can't support CardBus PC cards and thus has no USB or FireWire support, and the weak graphics chip certainly doesn't do the pretty system effects of 8.6 or later any favors.

 

Cory5412

Daring Pioneer of the Future
Staff member
Perhaps I'm misinterpreting something, but the way I'm reading at least the Final Cut statement (which I feel qualified to talk about because I used FCP3 on OS 9 with VM enabled back in the day) is that if your projects are so big and/or you use it in such a way that it does end up swapping to disk, you'll experience slowness, because, well, swapping to disk is slow.

My guess is that, ultimately, that's the same thing CK and the author of the game are talking about.

As far as I've ever been able to tell, CPU and app performance aren't diminished by VM being on (but, if there's interest I can go home and turn VM off and MacBench 4 my Beige G3 again and see what happens) but RAM usage goes up, and it can take longer to load applications. I feel like there was another thing, but I forgot what it was.

Ultimately: the best advice is to operate within the means of a system. Just because Final Cut 3 can run on an iMac with 32MB of RAM doesn't mean that's a good system for it, is probably at least as much what is meant. Classilla can run on something with under 128 megs of RAM, but it's probably best not to, and so on.

For gaming, the situation might be different, I don't generally play games on my OS9 systems, but I can see where giving the game all the RAM in your system and loading as much of the game as possible into RAM ahead of time would be a good thing for performance, relative to a typical day-to-day desktop or creative workflow where loading all the code of your app into RAM is going to waste RAM more than anything else,  It would be super interesting to see the details on that, because without information on why, I'm tempted to say it's probably not founded on anything.

 

just.in.time

Well-known member
Perhaps I'm misinterpreting something...
The part you aren’t accounting for is that the memory map when using Virtual Memory doesn’t come for free. Nothing is ever free.  Regardless of whether you are spilling onto the hard disk or not. Every reference to the memory map takes twice the cycles as the computer first has to look at the standard memory map (normal for any mode), then find the modified map that includes the VM allocated space (only happens when VM is turned on), then finally retrieve the bit it was looking for to begin with. This is a very gross oversimplification of the process, but you get the general idea I hope. This is why anything that is extremely time dependent on the CPU/RAM (such as AV work or gaming) will always take a hit with classic Mac OS Virtual Memory. I’m on mobile, but if you want a source there is plenty of documentation regarding the process. I have yet to find a source to say other wise. If you can find one that would be awesome as I’ve already provided sources referencing that performance hit.

And that is all best case scenario; Virtual Memory turned on but hard drive not actually being utilized as memory yet. The moment you spill onto the hard drive performance takes another, relatively massive, hit as the hard drive (even SCSI2SD type solutions) will be much slower than true RAM.

As long as the system has adequate physical RAM installed, I’d much rather an application take an extra second to open and load fully but then run buttery smooth than save one second at openning and pay for it during use with frame drops, lag, audio drop outs, etc.

 

Cory5412

Daring Pioneer of the Future
Staff member
So, uh, basically that makes no sense to me. I'll putter around on my beige tonight with MacBench.

Are there like, real benchmarks somewhere that bear this out? Maybe like a page on the barefeats page or something?

I mean, like, QuickTime recording and playback is perfectly fine on my Beige with VM on, so I'm finding anecdotes about dropped frames to be a little suspect. (I even poked it last night, and it played a video I'd recorded with no trouble, even with some other software running.)

 

1400man

Member
The part you aren’t accounting for is that the memory map when using Virtual Memory doesn’t come for free. Nothing is ever free.  Regardless of whether you are spilling onto the hard disk or not. Every reference to the memory map takes twice the cycles as the computer first has to look at the standard memory map (normal for any mode), then find the modified map that includes the VM allocated space (only happens when VM is turned on), then finally retrieve the bit it was looking for to begin with. This is a very gross oversimplification of the process, but you get the general idea I hope. This is why anything that is extremely time dependent on the CPU/RAM (such as AV work or gaming) will always take a hit with classic Mac OS Virtual Memory. I’m on mobile, but if you want a source there is plenty of documentation regarding the process. I have yet to find a source to say other wise. If you can find one that would be awesome as I’ve already provided sources referencing that performance hit.


FYI, there is no "map" when the MMU is inactive. There is one "map" shared by all memory address spaces (inverted page table) on PowerPC when the MMU is enabled. In addition, the translation lookaside buffer (TLB) exists to reduce the number of page table accesses by way of caching. Please familiarize yourself with the PowerPC MMU before spouting claims that don't make sense.

Besides, if it really wasted as many cycles as you claim, don't you think that would show up much more dramatically? Again, my personal experience is that VM shortens application launch time by allowing the application code to be demand-paged instead of loading it all into real memory in one fell swoop. 

 
Last edited by a moderator:

just.in.time

Well-known member
 Again, my personal experience is that VM shortens application launch time by allowing the application code to be demand-paged instead of loading it all into real memory in one fell swoop. 
Read my last paragraph from the post you quoted. I address this. VM does shorten opening time, but I prefer waiting an extra second for all the code to load to RAM and then having a better experience once things are up and running. That part is my personal preference; trading opening time for less lag later. You do you bro.

Bottom line, CITE SOURCES that say otherwise and link them. Obviously a system that has enough resources (CPU speed, system bus speed, etc) for a given task will handle VMs overhead okay to a point. The performance hit is noticeable when a task is at the edge of a device’s performance envelope, and/or as memory spills into hard drive space. I would absolutely LOVE to see official documentation from some developer or publisher saying “dropped frames or clipping audio in your (video playback/computer game/media player/video editor/whatever)? Turn ON virtual memory!”

If virtual memory had no performance hit, then there would be no reason to install more than 32mb of RAM into a computer running OS 9. Obviously you would just turn on Virtual Memory and dial in 1024mb of VM instead of installing more physical RAM, right?! To do otherwise would be a waste of money.  Well crap, you don’t need your excess RAM, send it my way :)  But oh wait, that isn’t the case and you won’t be handing over your excess RAM above 32mb, so I shouldn’t start checking my mailbox, should I?

 

1400man

Member
I am only speaking in the case of a system with adequate resources. Of course a system with heavy paging activity will run slowly. That was never in dispute. What I'm getting at is that there is really no rational reason to turn off VM if you have plenty of RAM.

 

just.in.time

Well-known member
My high level explanation was what I read from documentation based on classic Mac OS’s virtual memory scheme.

Beyond that (which I will have to cite when I get back to my MacBook), I can’t tell you. But it does line up with what developers and publishers will recommend if performance issues arise (see a few of the sources cited way above).

Again, I never did any dev work for classic Mac OS applications, nor the OS and how it handles RAM when VM is switched on vs off. So unfortunately I can’t provide any more of a rational explanation as to why it works the way it works and why those other devs/publishers have their recommendations. I really wish I could.

and @Cory5412, I agree that based on what was described from what I looked up (same citation I need to provide above), the expected performance impact SHOULD be bigger. But it isn’t. Again, I don’t know the why. But the impact is none the less there when VM is on, memory has not spilled to disk, and performance is nearing 100% demand of what the Mac can provide from a computational standpoint. I cited a few devs/publishers above that back that up.

Obviously there is always going to be the right tool for the right job, like Cory said. But sometimes you do a task for the thrill of saying it has been done. Such as MP3 playback on an SE/30, music video playback on a PowerBook 2400c, or Space Cadet Pinball on a modded color classic (which requires VGA mod and a swap to at LEAST an lc 520 logic board, but really a 550 board). These 3 examples are mine, but in each case VM on (despite plenty of available physical RAM as well) was causing  stutters and sloppy performance. Only change of VM off, and smooth performance (except Space Cadet on 520 color classic, performance significantly improved but still had some choppiness. An eventual swap to lc550 board smoothed out the remaining choppiness. VM on for 550 color classic reintroduced stuttering in motion).

Again, I wish I had a more rational or clear explanation, but I don’t.  I used to be firmly in the camp of VM on at all times as the OS and apps use less ram when it is on. However the first go of Space Cadet Pinball on a modded Color Classic and later reading through the included Read Me documentation a couple of years ago pointed me in the direction of disabling it unless absolutely needed (such as on the stock Color Classic board that only addresses 10mb of physical RAM... not a whole lot for 7.5.5 and multi tasking). And as it turns out, that game is far from alone in making that recommendation.

 

Cory5412

Daring Pioneer of the Future
Staff member
In Classic Mac OS, swapping doesn't actually happen unless you use more RAM than you have. I don't think anybody here would actively advise going as far as to allocate 32 times the amount of memory you have installed in order to be able to (yes, very slowly) to RAM intensive work using a hard disk. Classic Mac OS is already bad enough at i/o that I don't know if you'd be able to do much before it just crashed for no good reason.

The most credible potential source you cited in terms of VM being off helping anything is the case of the game -- notably, you didn't actually have a link to a PDF of the manual or anything like that, but in a case like that, especially for a game published so close to systems like the 6100 and 7100 being new, I think the thing we need to remember is that like, having 16 megs of RAM was a very high end thing at that time.

Like I said, in my experience on midrange G3s, video playback is not affected by VM, either using QuickTime/SimpleText to play a video (as on my beige) or actually cutting .dv files in FCP3 on my blue-and-white. I had around 300 megs of RAM on both of those systems.

There's a "fine" vs. "correct" situation going on here. Yes, it's "fine" that you run with VM off. By and large, other than the potential that you're missing out on some multitasking and that you're waiting longer for apps to load, it shouldn't be hurting anything.

However, it is incorrect to say that there's an actual running penalty for VM - there generally isn't. Even if there was a couple percent for specialized applications, or for wild use cases like "editing a feature film in final cut for a system with far too little resources" -- that's a very special kind of use case and probably shouldn't be the everyday advice.

Notably here, none of this applies to 68k Macs because those actually manage their memory differently.

 
Top