Thursday, May 10, 2018

Running Quattro Pro on FreeDOS

In the 1990s, my spreadsheet of choice was first the venerable Lotus 1-2-3 spreadsheet, then the shareware As-Easy-As spreadsheet. As an undergraduate physics student at university, I lived by my spreadsheet. I was always analyzing data from some lab.

I was first exposed to the Lotus 1-2-3 spreadsheet when I was still in high school, and my dad brought home a copy of the DOS spreadsheet from his office, so he could do work from home. My dad's office eventually migrated from Lotus 1-2-3 to Borland's Quattro Pro. And I sometimes experimented with that, too.

Quattro Pro was the first DOS program I encountered that used a WYSIWYG interface ("what you see is what you get"). Even though Quattro Pro was a DOS application, the program actually ran in graphics mode. This allowed the application to render numbers and text using fonts, lending a modern feel to the spreadsheet. Even today, the DOS version of Quattro Pro looks similar to today's spreadsheets with the sans-serif proportionally-spaced black-on-white text, and clickable row and column headers rendered as buttons.

The graphics mode also allowed Quattro Pro to fit in more text on the screen without it feeling crowded. In other DOS spreadsheets, you really only have room for about 20 spreadsheet rows on screen. That's because a DOS text console runs at 80×25 columns and lines (standard) and with a cell data line, column headers, horizontal scroll bar, status line, and help line, you've already taken five lines from the screen (leaving 20 for data). But Quattro Pro runs in graphical mode, so can display text at various sizes. Quattro Pro manages to squeeze in a menu bar, quick-reference action bar, cell data line, column headers, horizontal scroll bar, and status line—and still have room for 20 spreadsheet rows:


As an experiment, I entered some sample download data from our website into a sample spreadsheet. Like other spreadsheets at the time, Quattro Pro used the same data entry rules as Lotus 1-2-3, using .. to specify ranges of data (modern spreadsheets use :), + or @ to start calculations (today's spreadsheets use =), and other rules.

An advantage to running the spreadsheet in graphics mode all the time is generating a chart seems to run faster. The program doesn't need to flip the display into graphics mode; it just erases the display and draws a chart. Here's a sample chart based on the data I entered:


A common function needed by many professionals (and physics students) was the ability to fit a line to x,y data. To test this feature, I generated a simple line y=x+0. Because a straight line isn't very interesting, I added some randomness to the data using the @RAND function. This generates a random value between 0 and 1, so I centered the randomness using the cell function +x+@RAND-0.5.

As you can see, Quattro Pro fit a straight line of slope 1.03 ± 0.03, and y intercept -0.3 ± 0.3. That's the y=x+0 line that you'd expect:


And charting the data is just as easy. I added the straight line by defining a second y series that was the same as a the x series. You can adjust line types in Quattro Pro, like other spreadsheets, so I adjusted the data to be a red line with dots, and the line to be dotted green without points:



No comments:

Post a Comment