FarmVille

The is the core forum of BFC. It's all about informal and random talk on any topic.
Forum rules
Post a new topic to begin a chat.
Any topic is acceptable, and topic drift is permissible.
User avatar
yogi
Posts: 9978
Joined: 14 Feb 2015, 21:49

Re: FarmVille

Post by yogi »

I ran into situations at Motorola wherein I would not perform a given task for a long time and then forget how to do it again when the need resurrected itself. That told me something about the learning and retention process of my own brain. I began doing things so that I could easily reverse engineer them should I happen to have forgotten how or why I did a certain thing. Variables were judiciously chosen for that reason, but I also added notes and references in the comments. This only works if your life is organized. You can get to any part by working backward through the organization process.

Learning a new program language was never easy for me. I did terribly in most of the programming classes I had to take. However, once outside the class and given enough time to work things out on my own, I would have that structure embedded in my brain. Programming is very demanding of logical structures which made them easy to understand if you knew the underlying rules. Learning those rules of the new language was never easy for me. The good news was that once I was able to re-familiarize myself with the long lost process ramping back up to speed came rather quickly. That's still the case today. Once I retain a skill it stays in memory forever. It just can take a long time to find the starting address of what I stored away many years ago.
User avatar
Kellemora
Guardian Angel
Guardian Angel
Posts: 7494
Joined: 16 Feb 2015, 17:54

Re: FarmVille

Post by Kellemora »

I try to keep notes of what I had to do to get something working right.
But then the next time I needed to do it, they way I did it before didn't work this time, hi hi.
Unless it happened right away, before systems were changed.

The only way I ever understood structure was when I was working in Basic, and used many subroutines to do something.
I usually wrote them in such a way I could add-in or take-out various subroutines.
I did learn this the hard way, when I wrote the task right into the main basic program, and then had to figure out why I did something the way I did, and it was a mess taking it out when I changed to another way of doing it. It often meant rewriting much more of the code than I needed to.
However, Basic was still a simple language and I understood it. You said it was because it was Linear.

With my HTML I remember some of the basics, so it doesn't take that much to relearn each time I need to work on it.
Even so, I look at my own program and wonder what it means and why did I do that, hi hi.
It was very hard for me to switch from HTML to XHTML/CSS, but I did, and that was with writing my own CSS files, tons of them, hi hi. I didn't know at the time I did it that they could all be in a single file, if you gave each thing it's own name.
But if I did that, then the main HTML program would have to be changed for each page by addressing the new name in the CSS.
Moving to HTML5 I decided to use the Bootstrap CSS, with plans to take out those parts I didn't use.
But now with computers super fast, and many computer users have downloaded Bootstrap from other websites they visited, chopping it apart isn't really necessary anymore, provided I have all the rest of my page optimized.

I could not sit down and write an HTML5 file without using ones I already created as a starting point to work from.
Too many nit picky things that have to be in it.
I think that is also one thing that keeps messing me up trying to use other programming languages that work with HTML.
They all have very specific methods they must be laid out, and also only work on a server too.

I'm sorta like a Windows User Wannabe, hi hi, just show me where to turn on the switch.
And if you don't, I'm totally lost, hi hi.
User avatar
yogi
Posts: 9978
Joined: 14 Feb 2015, 21:49

Re: FarmVille

Post by yogi »

What you did with BASIC was a, shall I say, basic technique. I too had a library of subroutines that I could simply add to any program that needed the function. It wasn't exactly plug and play but about 90% of the program development could be eliminated via cut and paste. That technique touches on being object oriented and modular without having all the built in characteristics of a true object. If you name the subroutine or function properly, you would not need to know how it works. Just pass some parameters to the routine and your solution will be returned automatically.

HTML is simple when compared to programming in just about any language. That's not to imply it has fewer rules to be memorized and followed. Style sheets were intimidating to me when I first started using them, but after I got the hang of it they greatly simplified the HTML in the main body of the web page. There are pros and cons regarding the number of style sheets that is appropriate. Everything can indeed be put into one sheet, but sometimes it makes sense to separate things out. Anything more than about three CSS files needs to be looked at for simplification. LOL

I sense that while we have a mutual interest in programming we also have different brains with which to conjure up the code. Some of it must be due to the way we learned about programming. I had some formal classes and a few thousand engineers to help me. I'm guessing you learned a lot on your own and missed out on some of the corporate discipline that goes into software quality control. Many of the things you describe to me are the results of DIY and OJT efforts. While I admit to being short on formal education, I did have the luxury of being guided by experts in their field. The greatest difference, however, is in the application of our wares. I was dealing with hardware control and user interfaces. It wasn't until late in my career that I got involved with information technology. I did little raw programming in my IT role, but I was require to know how things worked internally. In the end our differences appear to boil down to a retention problem. I can assure you I don't know the mechanics of how the brain retains anything, but it seems as if your memory is slightly more like RAM than it is like HDD. LOL
User avatar
Kellemora
Guardian Angel
Guardian Angel
Posts: 7494
Joined: 16 Feb 2015, 17:54

Re: FarmVille

Post by Kellemora »

Back when I was using Basic, I was not afraid to try doing things, especially those using peeks, pokes, and calls, just to see what would happen. Quite a few times it required a reinstall of DOS and later Windows 3.11.
Seems like Format Drive C and reinstall DOS was a common thing for me to do at the time, hi hi.

I think I learned a little bit from the guy who came out to install programs on our Wang Mainframe. He didn't really know programming either, but understood where and how to link a new package into the program. Albeit the program was written to allow for those doors to be used when needed.
If I was 30 years younger, I would really study programming hard. But now, it wouldn't benefit me to do so.

You are correct about my not having someone to show me how to do something regarding programming.
Although I did belong to the computer club and attended many meetings, 90% of what they were talking about was so far over my head, I never got anything out of it.
User avatar
yogi
Posts: 9978
Joined: 14 Feb 2015, 21:49

Re: FarmVille

Post by yogi »

Your comments about reinstalling Windows and DOS when you trashed the system ring a familiar bell here in the Command and Control Center. LOL One of the reasons I was intent on learning how to put Linux on a Stick was because it kept trashing my perfectly working Windows installation. I think I have stretched the limits of how many times a given USB memory stick can be reformatted, and only lost one device in the process. An even better way of dealing with misbehaved Linux distros (and I can't think of any that do not misbehave) is to install the OS as a virtual machine. Those VM's are in fact resident on my SSD along with Windows, but that type of drive is more durable than a USB stick. There are many times when simply rebooting cannot fix a problem. Reformatting is the only solution in those cases.

You and I have come to the same conclusion about learning a new programming language: what's the point? I guess I could benefit from knowing more about php and phpBB, but this web site is the only place I would have a need for that kind of knowledge. The process of learning a programming language is an intellectual stimulation that could help delay the onset of dementia. It might be worth the effort for that reason, but I decided it might be best to not be so alert as I grow older. :mrgreen:
User avatar
Kellemora
Guardian Angel
Guardian Angel
Posts: 7494
Joined: 16 Feb 2015, 17:54

Re: FarmVille

Post by Kellemora »

Every time I've tried using a VM, just so I only had to reload the File if I messed up. It slowed my computer to a dead crawl.
I assume that is because the underlying OS is using the CPU as is the VM. I did only have 4 gigs of memory back when I tried using one too, which might be why, that and it was only two cores.
I did know a couple of folks who had everything in VMs and they didn't have any problems. I think each of his kids had their own OS in their own VM they could get to on dad's computer. But I never asked him about it back then either. Other than to say it sounded like a good idea to protect his own data and settings.

Every night before I fall asleep, I work one crossword puzzle and usually two Sudoku puzzles of level 5 or higher, while I lay in bed. I do them in ink too, hi hi. Plus during the day I'm always thinking about something that needs to make the old gray matter get its exercise, hi hi.
User avatar
yogi
Posts: 9978
Joined: 14 Feb 2015, 21:49

Re: FarmVille

Post by yogi »

I've read many comments in forums about the problems people have with Linux in a VM environment. I've not experience any significant slowdowns in the VM or in the host. Some distros of Linux run faster than others naturally and this erratic behavior tends to be amplified in a virtual box.

It's not too difficult to understand why a virtual machine might slow down the host. The guest OS is software with no real hardware involved other than what already exists on the host. Thus, if your host is slow to begin with, running two computers off the same CPU would naturally cut down the performance dramatically. Most Linux systems I have seen in recent times want 20-25 gigabytes of space on the host to operate properly. A lot, if not all, of the guest OS runs out of RAM so that 4 GB RAM isn't enough. You could play tricks with swap files but that single CPU can only do so much regardless of how you allocate memory.

I've talked about replacing Windows with a suitable Linux OS if I ever found such a thing. I doubt that Linux developers care enough about the needs of Windows user to make Linux compatible. And that is fine. The two can exist together but separate. Recently I've been giving more thought to that concept. There are only a couple programs that I use which will not play in Linux. I can keep those few on a Windows 7 host as it is being done right now. Then I can make some fully fledged Linux VM's and do most of what I want to do in the virtual environment. The beauty of this concept is that I can virtually switch to some distribution of (virtual) Linux as my main operating system and run those Windows programs as needed. In fact it would be very possible to run the Windows programs simultaneously with the Linux OS. It's just a matter of resizing desktops. Such a configuration is possible with my current system, but to fully implement Linux properly I'd need more memory. As it so happens, there are two empty memory slots on this motherboard, but I do so want to upgrade to a more modern machine. In any case, I am pretty sure I can have the best of both worlds on the current hardware. All I need to do now is to find a suitable Linux operating system.
User avatar
Kellemora
Guardian Angel
Guardian Angel
Posts: 7494
Joined: 16 Feb 2015, 17:54

Re: FarmVille

Post by Kellemora »

Hmm, maybe I'm confused.
I thought the purpose of VM on a home computer was to protect the computers OS by isolating the users OS from it.
Like, running Debian as the Host, and then using VM Box to run Debian, a VM Box for Linux MInt, and a VM Box for Windows, each is in their own boxes.
This way all you had to do was backup the User VM to save everything.
Sorta like backing up a users Home directory, but in that case there are still files on the root system associated with Home user also.
I learned that the hard way. Just backing up HOME, does not save some required files, so there were a few other folders you had to back up also from the root directory.

Adding more computer users would make the computer a server, not a stand-alone computer for a single user.

Then I've also heard, perhaps wrongly, that on a server, it is not uncommon for each user to be loaded into a VM of their own. Or perhaps I should word it another way, each User is in their own Sandbox? So they can't hurt the main system.

I'll just have to relegate myself to the fact I will never understand much about the confounded computin' contraptions, hi hi.
User avatar
yogi
Posts: 9978
Joined: 14 Feb 2015, 21:49

Re: FarmVille

Post by yogi »

I think you got the right idea, but you don't realize how much you actually know. LOL

The "purpose" of a virtual machine is much the same as the purpose of real hardware. That is to say, it depends on what you the user want to do with it. Of it's own there is no dedicated purpose for a virtual machine. They exist because things can be done with two computers (or more) which cannot be done with a single machine. The virtual computer can do everything a real computer does; the difference, of course, is that it is virtual or simply another software program.

It so happens that the virtual machine is isolated from its host. This is the feature I use to install Linux onto a USB memory stick. If I made that stick in a real Windows machine, more often than not Linux would destroy the Windows bootloader. It's not malicious intent, even though that's what it looks like. It's the old rule of the last OS installed becomes the master boot controller. So, in order to avoid that conundrum, I install Linux from a virtual machine which is a guest OS inside the Windows host. Thus Linux is totally isolated from it's host, Windows. The install process is unaware that Windows exists and does not attempt to take over the boot loading process.

That isolation of computer environments is effectively sandboxing, but better in some respects. Thus, I rely on virtual machines to act as a sandbox when I perform financial transactions on my Windows computer. The premise is that any hacker would need to know about Windows AND Linux, not to mention virtual machines, in order to break into my system. Also, anything I store inside that virtual box has to be treated as a separate and independent computer. If I want backups I have to make them separately from the host machine backups, for example.

You are not the only person to think the /home directory is all you need to save in a Linux operating system. I never backup any of my Linux installations because I don't use them as a primary workstation. They are all disposable as far as I'm concerned. When I say I'm looking for a Linux OS that can replace Windows, I am thinking of making that Linux OS the primary machine. Windows with those few program that only run on Windows would be the secondary and disposable system in that scenario. When Linux becomes my primary system, backups would become critical. I might even have to learn about rsync in that case. LOL

My dream scheme would be to have a virtual machine as my primary operating system. That means it has to be able to access my NAS, for example, and anything else on the network that Windows currently uses. The NAS is not a problem for Linux. However, I also have a partition on a local drive that I use for working storage. All the OS files are on one drive and any documents I create for future reference are on another drive (or partition in this case). When I do backups, it's that working storage partition that gets backed up to the NAS and an off line portable drive. The NAS has long term storage files on it, such as disk images that go all the way back to Windows 98. Certain Windows system files are also backed up to the NAS, but a virtual Linux box would not need that. It's all in the /home directory. The show stopper at the moment is that working storage partition is formatted NTFS and encrypted with Windows Bitlocker. Linux can't touch it. In fact the partition is invisible to all my VM's. The partition is visible to Linux OS's installed side by side with Windows, but cannot be accessed due to the encryption. I think I can work around that particular problem if I tried hard. Then, just yesterday, I discovered that at least one of my Linux VM's cannot read the backup files (created by Windows) that I have stored on the NAS. It claims it does not recognize the archive file type, and I have no idea why it is complaining about that.

So, you see, if I actually want to switch to a VM version of Linux and replace Windows as a primary OS, I have some problems to solve first. Once those storage problems are resolved I will be able to run the two OS's simultaneously. The VM OS will become primary but not because it is isolated and sandboxed or any more secure. Should the day actually come when Windows will require a subscription to be run on my PC, that is the day I want to be prepared to tell Microsoft to go get f***ed.

A server is just that. It serves something, or a lot of things. Technically speaking executable programs should not be run from a server. Thus, any VM, being a software program, should not be run from a server. It is valid to download a VM (vdi file) and run that on your local machine. It looks like you are running your OS from the server, but you are not. You are just getting the configuration that allows you to run the virtual machine software locally. This is also how many game servers work. They serve the game and you run the software on your local computer. Also, servers are designed to accommodate multiple simultaneous connections. My VM inside Windows is a single user running two operating systems. I can set you up to log into my computer and do the same thing, but then I'd have to log out while you are there. Obviously, that is not how servers work.

Clear as mud, eh?
User avatar
Kellemora
Guardian Angel
Guardian Angel
Posts: 7494
Joined: 16 Feb 2015, 17:54

Re: FarmVille

Post by Kellemora »

Actually, everything you said makes perfect sense to me!
Especially when you added that in a server situation, the program is downloaded to my machine first.
That explained something I never could figure out before. Although back when I messed with Edubuntu, it's programs the users accessed did run on the server, and that was my problem. Not enough memory on the computer to do more than two workstations. But having workstations was not my real goal so I abandoned Edubuntu.

Just to make sure I do have it right.
I have a computer on which I have an OS running, in my case, Debian.
I install a VM on this computer. Each box in the VM is like a computer all its own.
I can install something like Windows XP in one of the VMs boxes.
I can install Linux Mint in one of the VMs boxes.
And also install Debian in one of the VMs boxes and use it instead of the Debian on the computer itself.

It seems like I did this once a long time ago, and the VM ran inside a second Window on the computer.
I got a list of the VMs boxes and could boot up to any one of them with ease.
But they all seemed to run quite slow as one problem.
The other was accessing the printer or external drives on the USB ports.
Plus I never ever managed to get to the LAN if I recall.

Then on the other side of the coin.
Public Servers, such as your host provider, has each user account in something like a VM, but it may not be called that.
Going back several years ago to the Galilei/Galileo servers. From my user account I could back up one level and see all the other users accounts, but could not access them of course. We had to be able to back up a level to get to some of the host provided functions. I don't think it is still done that way today though. I can't go below my own user account on any host providers machine I've been on since those early days. Each user is it's own Root directory. How they do that I have no idea, hi hi.

But back to the VMs for a minute. If I recall, I can back up the VM BOX for each program and it saves everything.
Which should mean I could just copy the VM Box to another computers VM and it will work, except for perhaps it might need different drivers for a different monitor type as an example.

What I don't understand is how to address the on-board USB or LAN port from a VM box.
User avatar
yogi
Posts: 9978
Joined: 14 Feb 2015, 21:49

Re: FarmVille

Post by yogi »

By Jove, I think he's got it! :lol:

What I told you in the previous reply was not the whole story. I simplified it a bit to make it all more understandable.

The software that allows virtual machines to be constructed is a stand alone program. I'm using Oracle's version called VirtualBox. There is something called VMware too, but that is typically not free. The point to understand here is that all those virtual machines you create are each a single (vdi) file. Three virtual machines end up being thee .vdi files. These files execute as if they were each a hard drive. Whatever you put on that drive can be run using the VirtualBox software to start it going. Look at VirtualBox as the equivalent of Grub, only it does a lot more than Grub. The similarity is that the VIrtualBox software merely points to one of those virtual disks you created.

As an aside, I don't use a traditional virtual machine in order to install Linux on a Stick. I use the Linux .iso file that you have seen and used a zillion times. However, an empty virtual disk is created. This empty disk is in reality a virtual machine with no data inside it. I need this machine so that I can attach the source .iso and the destination USB hardware. The .iso is not hardware of course, but the blank virtual machine can be made to think it is a CD/DVD. The USB memory is hardware and must be attached to the machine by clicking the appropriate check boxes in the virtual machine device manager.

At this point I have a source DVD, a blank hard disk, and a USB memory stick. When I start the newly created blank machine it searches for something bootable, just like your real computer does via BIOS (or EFI). Since the .iso/DVD is plugged in already it boots that. The Linux live .iso fires up and allows me to install a copy of it onto that USB stick. All of this is happening inside the VirtualBox software, and the virtual machine has no idea Windows is on the host running VirtualBox. Thus it is impossible for the Virtual machine or the Linux Live CD to interact with the Windows host.

Each virtual machine, be it a blank disk as I just described or a fully installed operating system on that virtual disk, has a associated set of parameters that can be adjusted to accommodate your particular situation. These setting, however, are not part of the virtual machine. These settings are instructions to the VirtualBox software that enable those things you asked about. For example, the settings allow you to select either USB-2 or USB-3 port simulation. They also allow adjusting the amount of RAM to use to run the machine. The network interface can be selected too; I choose a bridge adapter as opposed to NAT so that the machine plugs into the LAN directly. Video memory, processor cores, and hardware acceleration can all be configured via the VirtualBox settings for a given machine. In other words, you can customize the environment in which the virtual machine operates to correlate with the realities of your hardware.

The audio and video and network drivers are specific to VirtualBox. So, just because I have a nVidia card on my computer, that does not mean VirtuialBox will run from that card. It runs from the virtual video driver built into VirtualBox software. As it turns out the driver is comprehensive and Linux has no problem with it. My virtual machine sees the VirtualBox driver and the monitor is configured inside Linux as it would be on any other machine. Keep in mind that the virtual machine has no knowledge of your motherboard. It thinks the VirtualBox software is it's motherboard and you configure that in the settings.

So, in theory, I can make a virtual machine and send it to you to run on your computer. You would of course need to have VirtualBox software installed in order to read the .vdi file I sent you. Since your hardware is different than mine, you will need to configure your VirtualBox settings to match your hardware. The .vdi virtual machine doesn't care how you do that. All I am sending you is Linux on a VM. What you connect to the VM is your problem.

Backups ... become unnecessary in virtual machines under certain circumstances. VIrtualBox software has the capability to make snapshots, or what you and I would call disk images. You can take a snapshot of your current system and VirtualBox will save it. It can save as many snapshots as you have memory in which to store them. Thus, instead of backing up selected files of a virtual Linux machine, you could easily take a snapshot and call it back up at some future date. The glitch with snapshots is that it resets your virtual machine to the state of being that existed at the time you did the snapshot. Any changes thereafter are lost. It's just like making images and restoring your machine to the state of the image. You lose whatever you did after that image was made. That can be both good news and bad news depending on why you want to go back in time.

Peripherals on your LAN will run on your virtual machine if the operating system is capable of doing it in the first place. Thus, if Debian can access your HP printer and your Synology NAS on your real hardware, the virtual version of Debian can do it too. You configure it the same way in a virtual machine as you would in a real machine. To put it another way, not only can you add virtual hardware to the virtual machine, but you can also add real hardware.

How this all performs depends on the hardware in your host system. If you are short on memory and/or short on CPU cycles, it's not going to improve just because you made a virtual machine representation of your favorite OS. It will degrade because one processor is now running two computers, but the amount of degradation may not be significant. I have a feeling the Silver Yogi can handle it well. Some of your vintage computers may not. You can run three or more virtual machines simultaneously if your hardware is capable and if you can fit their windowed presentations onto your monitor screen. I have run two virtual machines on this tower and didn't see a lot of performance issues. Then too, I wasn't stress testing at the time.

And lastly, but not leastly, file servers are not the same as web site hosting or game servers. They all do different things. Your NAS is a file server, for example, and is not intended to run any client side software. The NAS will give you files to plug into your client side software, but it's not supposed to execute anything. There is a lot of behind the scenes activity hosting websites and games. Servers try to minimize what they do because they are serving a large audience and not just you a single user. Thus most of the processor intensive software for games or websites is on the client machine. The supporting files are on the server. When you use a cloud server as a computer your session is sandboxed so that you cannot interact with the other users of that server. Each session is run locally but your data is likely in the cloud. That is why it doesn't matter where in the world you connect to the cloud. You get the same data everywhere.
User avatar
Kellemora
Guardian Angel
Guardian Angel
Posts: 7494
Joined: 16 Feb 2015, 17:54

Re: FarmVille

Post by Kellemora »

Wow, most explanatory and clear as a bell! Thank You Yogi!

I have a computer running Debian and it connects to everything, the printer, the USB ports, LAN, etc.
If I install VB or VM, it is merely a Program that allows adding other OSs in one of the VMs boxes.
VM is set up to work with the hardware on the computer, so it sees the computer motherboard.
But nothing I put into a VM box sees anything except the VM program itself.
It views the VM as a stand alone computer.
But this is where I get confused. If the VM is already set up to recognize all the hardware on its host computer.
Then why would each OS that is installed need to know anything more than how to connect to the hardware show as available in the VM Program?
Maybe if I played with it again, I might understand it better.

In a round about way, I think you explained how LIVE CDs work, since they don't mess with the computers own settings.

Many Thanks for going through explaining all of that again. You probably have before too, but each time I pick up a little more valuable info.
User avatar
yogi
Posts: 9978
Joined: 14 Feb 2015, 21:49

Re: FarmVille

Post by yogi »

We probably have discussed virtual machines in the past, and I'm certain that each time I explain it the content is slightly different. I suppose it all can be intimidating at first. I avoided getting involved with virtual machines for many years although I had to work with them at Motorola. I am far from possessing any expertise, but I do feel comfortable with what I'm doing.

VirtualBox is software written and distributed by Oraccle Corporation. In a way it's a shell that wraps around all the virtual machines you create with it. About the closest analogy I can make is WINE software in Linux. WINE creates something like a virtual Windows computer which can interact with the hardware Linux is using. No matter how many versions of Windows you create that way, WINE remains the control system. If you recall, WINE can be configured to act like Windows XP, Vista, 7, and for all I know 8 and 10. That compatibility setting in WINE is equivalent to what the VirualBox program does for all the machines it creates. The difference between WINE and VirtualBox is that each individual virtual machine retains it's own hardware settings which are prescribed by VirtualBox. WINE, if I recall correctly, keeps the same compatibility settings for all versions of Windows. There are some other fundamental differences between the two approaches, but I don't want to bog down your brain. LOL

I investigated virtual machines mostly for intellectual reasons. One day I read an article about how it is effectively a sandbox and how some people are using virtual machines to check out suspected malware. You know those .pdf attachments you get in random e-mails which never ever under any circumstance should be opened? Well, you can open them in a virtual box and see exactly what is in there. The payload probably is for a Windows machine and will not execute in Linux, but it can be anything. Even useful information. By examining it in a virtual machine you can simply delete the machine if it gets trashed and make a new one pronto. I liked that idea and is why I looked into VM's seriously. Then I found a few other useful features such as sandboxing and obfuscation of my browser's user agent. That string is normally your unique ID in the advertising world. Well, I have several now and get different search results depending on which box I am using.

For most people there isn't any need to be running more than one OS at a time. If you are administering a network, however, you can easily log into several servers from one computer; each server would be addressed from a different virtual machine. If you do any remote desktop work, or help your friends remotely, then doing it via virtual machine is the safest approach. The foreign connection cannot destroy your main workstation if you are doing it all via virtual machines. As you become familiar with the world of VM's, you will probably find some heretofore unthought of applications of your own. It's just a bragging point for me. All I need now is to find somebody to brag to. :mrgreen:
User avatar
Kellemora
Guardian Angel
Guardian Angel
Posts: 7494
Joined: 16 Feb 2015, 17:54

Re: FarmVille

Post by Kellemora »

You just reminded me of something from when I was messing with VB.
One problem I had was not enough memory, only 4 gigs or maybe it was only 2 gigs, which is why it ran so slow.
However. After I installed VB, and created a VM box with Windows XP in it. After I had it all set up the way I wanted, I made a copy of that VM for safe keeping.
That way if I messed up Windows XP, I could just delete it and copy the VM with the copy back into VB and be up and running almost instantly.
I also think if I did have 4 gigs when I installed VB, after I stole 2 gigs to build another machine, VB stopped working, so I deleted the whole thing. Then never got back to trying it again.

Now it seems to me, if I understand everything properly here.
I would be much better off running Windows XP in a VM box, than trying to use Wine to run a Windows XP program. Because the program would see it as a real copy of Windows XP and not Wine.

I have a machine with 4 gigs of memory, it's the new machine I bought for Debi she hated, and is just sitting here.
I may install VB on it to see if it works better than Play on Linux with a game I have installed already.
As time permits that is.

If I play with VB, perhaps I will stop asking or making so many dumb statements, hi hi.
User avatar
yogi
Posts: 9978
Joined: 14 Feb 2015, 21:49

Re: FarmVille

Post by yogi »

Ahh, my friend. I can only remind you that the only really dumb question is the one unasked. We all start from ground zero and add to our knowledge base from there.

One of my unknowns about VirtualBox software has to do with how it handles old operating systems. I tried to make a Windows 98 virtual machine and at the time the software told me more or less it was impossible. The processor I was using was not compatible with Windows 98. I didn't know much about it back then, not that I know a lot more now, and I abandoned the idea.

My understanding of WINE is that it is a subsystem and not an emulation. That means WINE runs the executables of Windows as if they are in a native machine. There should be no response delays due to Linux interpreting Windows software. The settings in VirtualBox software accomplish the same thing as does WINE, but the hardware on the host must match the requirements of the virtual software. I don't know what Windows XP requires from a processor, but it is probably best not to try and force anything not compatible to begin with. If Windows XP will run in the native mode on the machine you are using, then it will also work as a virtual machine on the same hardware. It might be possible to cross platforms; it is all software after all. I just never tried to go backwards in my experiments and can't tell you how to do it.

My opinion is that a VM version of Windows would perform better than a WINE edition of the same OS. First of all WINE does not have everything and secondly you are bypassing Linux as an intermediate platform. So, yes, in theory a VM is a better choice.
User avatar
Kellemora
Guardian Angel
Guardian Angel
Posts: 7494
Joined: 16 Feb 2015, 17:54

Re: FarmVille

Post by Kellemora »

I did get a chance to install VB last night, but have not done anything yet.
According to the Help File which I've read a lot of so far.
The guest operating systems it supports does include Windows XP, Windows 2000 and all newer.
DOS, Windows 3.0 to 3.11, 95, 98, and ME have only had limited testing, and will probably not work beyond legacy mode.

I do know the problem I had trying to run old Windows programs on a Windows XP machine in 95 or 98 mode, was the hardware was incompatible with the programs. The program may require a SoundBlaster 16 and without it, the program won't work. No way to emulate that sound card, it is an entirely different architecture. Nor do we have parallel or serial ports of the kind the program may want to drive a printer.

WINE stand for Wine Is Not Emulator, hi hi.

I have a few really old Windows programs, like CARDFILE.EXE that works great on Wine.
Even so, since I still have a Windows XP computer up and running, I use it on that.
Trouble with Cardfile.exe, is it does not have a way to export the data.
So you have to bring up a card on that computer, and retype it on another computer.
Which is basically what I do in my transcription work. So no biggie.

Here is something you might now about, maybe.
It is possible to send something to a printer, but instead of to the printer, to a print file instead.
I've tried that a few times, but then could not print from the .prn file later.
What I was hoping to do was send the data to Print To File, then read the file and convert it to plain text.
Ha ha, it is just scrambled letters with no meaning to anything but a printer.
But then the printers I have don't know how to use that type of file either.
Fortunately, most of the stuff I need to save as a file, I can export as PDF which I can work with.
But not from older programs I used that had no such features.

I probably won't find time to mess with the VB program right away, too many irons in the fire right now.
User avatar
yogi
Posts: 9978
Joined: 14 Feb 2015, 21:49

Re: FarmVille

Post by yogi »

Unfortunately I don't know much about print-to-file because I never had to do it. So, I asked my friend Google, and this is what he came up with:
A PRN file is simply a printer file that is created for a specific printer in a language that the printer understands. Therefor PRN files are printer model specific and will not work with other types of printers.
Your experience with these files is explained here: https://www.neuralabel.com/blog/2019/03 ... -make-one/ Your hardware might be different, but I think you will get the idea.

I forgot what it is called exactly, but there is a conversion program for both Windows and Linux that comes with every HP printer I ever owned. Take a screen shot of the file and then print it. Scan the print out with the program that converts images of characters into actual text. I have used that program a few times to copy recipes from magazines, for example. It's not perfect and some characters might be interpreted incorrectly, but it is pretty easy to edit. The program is amazing for what it can do. That is one way to convert between incompatible formats.

It's been too many years since I tried to make a Windows 98 virtual machine and I don't recall all the problems associated with it. The incompatible processor sticks in my mind but there may have been other issues too. The greatest problem I'd have today is that I don't have a floppy drive anymore. Plus, they stopped making them years ago. I have no way to read the source even if I could make a virtual machine out of it. LOL
User avatar
Kellemora
Guardian Angel
Guardian Angel
Posts: 7494
Joined: 16 Feb 2015, 17:54

Re: FarmVille

Post by Kellemora »

I have a whole drawer filled with old 5-1/4 floppy drives, but no machines they will work in anymore.
I tried to find a new 5-1/4 floppy external attachment, but that type of disk worked differently than 3-1/2 floppy drives.
You can still get a 3-1/2 to USB floppy drive, but to get one to handle a 5-1/4 would need a computer program just for reading 5-1/4 floppies.

My old computer that used the CGA monitor, and had both 5-1/4 and 3-1/2 floppy drives in it finally died.
But at least I managed to get the most important stuff off of the 5-1/4s and onto CDs, then later a few things onto HDs after I found out CDs rot and go bad.

It's been many years, but I remember seeing Images as text files. They looked like garbage but certain programs read them that way. I think you can still do it by opening an image using a text editor, hi hi.

On a side note: Fiber optic cable must be really expensive.
I saw two large utility style service trucks down the street, and they were taking down the fiber optic cable that ran to my neighbors house across the street. I thought for sure he would just leave it after paying to have it installed.
I was hoping he would abandon it actually, then perhaps I could have AT&T run it over to my house.
Just seemed most odd for them to take down something, but then he did own it, and perhaps didn't want to continue paying the lease on each pole it was connected to. I don't know the reason, other than they took it down rolling it onto a spool on one of the trucks. All I remember him saying when it was put in was he had to buy the cable and lease space on the poles to his house, all the way from Chapman Highway to his house.
So I figure, if they are taking it down, either he is paying them to do it, or they are doing it on their own to confiscate his abandoned cable. That's why I think it must be really expensive cable.
User avatar
yogi
Posts: 9978
Joined: 14 Feb 2015, 21:49

Re: FarmVille

Post by yogi »

Not exactly what you are talking about, but enlightening nonetheless
On average, fiber optic cable installation costs $1 to $6 per 30cm depending on the fiber count. It’s very difficult to estimate an exact price for an entire building to be wired, however an example would be $15,000 to $30,000 for a building with 100 to 200 drops. fiber backbone cabling is somewhat more expensive up front than copper cabling, but the greater capacity and reliability of fiber can actually reduce long-term costs.
https://www.upcom.com.tr/cable-blowing- ... tion-cost/

That $6/30cm is for in house cabling and not the the backbone type you are talking about. That is about $20 a meter but I'm guessing the outside cable is at least 10 times that amount. My guess is your neighbor sold the cable back to the providers at a much discounted price.

The conversion technology I was referring to is called Optical Character Recognition (OCR). It's a pretty light weight program and converts character images to ASCII text characters very well. The output isn't formatted pretty and looks like plain text. It's very readable albeit prone to recognition errors. The plain text can easily be formatted in a word processor if you so choose. My demands are not very high so that I was happy each time I used it.

I'm not sure where to begin looking for something that can recognize 5 1/4 disks. There must be some hardware around somewhere, but good luck finding it. The controllers for such a drive must be matched to the hardware and that is the glitch you are running into.
User avatar
Kellemora
Guardian Angel
Guardian Angel
Posts: 7494
Joined: 16 Feb 2015, 17:54

Re: FarmVille

Post by Kellemora »

Since he was only a single house, although he had tons of computers, I have no idea what size fiber bundle he required.
I just remember him saying it cost one heck of a lot of money to have run to his house.
I was actually surprised to see him move so fast, especially after just buying the house next door to him.
I thought he was going to stay in his house for a long time yet, while he got his other place up and running.
But BOOM, as soon as it was, he moved everything out of his house, and some company came and took out the cooling system that he just installed outside. Now that I'm sure he moved to his new place, along with the equipment inside.

I've used several OCR programs, some were really good too. But they all seem to mess up when you have and r next to an n, rn seems like it is always seen as an m.

I've had an external 3-1/2 floppy drive to USB before, but I've never seen one for 5-1/4 that connected to a USB port.
Something about the technology of 5-1/4 drives that requires by the mobo. A different animal than smaller floppies.
I forget now what it was when I was looking into it though.
I do have one drive here that is both 3-1/2 and 5-1/4 in the same unit, but both sections have their own plug types.
Post Reply