K-Spread 4

Votes / Statistics
Hits: 4,685
Downloads: 1,018
Votes: 0
My Atarimania
Bookmark and Share
Comments (1)
Doc Maynord - 21/09/2020
K-Spread is the only Atari spreadsheet that I have found that calculates correctly. All of the rest (Works, LDWPower, Calc3D) use floating point math and do not use BCD so their calculations are incorrect and have serious rounding errors. But, K-Spread is temperamental to use.

Screenshots - K-Spread 4

K-Spread 4 atari screenshot
K-Spread 4 atari screenshot
K-Spread 4 atari screenshot
K-Spread 4 atari screenshot
K-Spread 4 atari screenshot

Information - K-Spread 4

GenreDatabase / SpreadsheetYear1990
Language[unknown]PublisherKuma Computers Ltd.
ControlsMouse, KeyboardCountryUnited Kingdom
Box / InstructionsEnglishSoftwareEnglish

Harker, Cliff

SerialST TypeST, STe, TT, Falcon030 / 1MB
ResolutionMedium / HighNumber of Disks2 / Single Sided / HD Installable
Dumpdownload atari K-Spread 4 Download / PastiMIDI

Additional Comments - K-Spread 4

Other versions with the same title:

CCD (version 4.19) (), Guillemot (), Pacific Software ().

Disk - K-Spread 4

K-Spread 4 Atari disk scan K-Spread 4 Atari disk scan

Instructions - K-Spread 4

Errata and Amendments to the KSpread manual
	There is  a  small  error  in the manual regarding the operation of the
	EXPAND.TTP program. 
	The  name  of  the  file  to be expanded should  be  KSPREAD3.PRG,  NOT
	In the install instructions on  page  I,  item  3  should  read:-
	"Enter SPD or SP? in the Document type line........."
Files on the Disk
	There are now no KSPREAD3.INF or KSPREAD3.RSC files on the master
	An .INF file will be generated by the program if the Save Desktop
	function of KSpread is used.

Ducumentation Errors
	The Clr/Home no longer takes you to A0, instead it takes you to
	the Outline Cursor.

	DELETE_ROWS() macro functions.
	  These functions are documented incorrectly. They are documented
	as taking 2 parameters. Infact they all take a single range as their
	only argument. For the INSERT functions the range specified will
	become the new blank space. For the DELETE functions the range is the
	range that is cleared.

Version 4.01

	A problem with saving text present on graphs has been fixed. If you
	intend to load files that contain graph info that were generated using
	Kspread 4.00 you will need to load these into Kspread 4.00 and then
	delete ALL the text on ALL the graphs. You then save the file and
	load it into Kspread 4.01 and replace the text. You will then be OK,
	but don't reload the file back into 4.00 otherwise you will have to
	do it again.
	Metafiles now work. I have been unable to generate metafiles that
	will load into Easydraw (their format is non-standard I think) but
	they do load into Timeworks. If you have problems loading them into
	other programs please let me know. A tip for generating metafiles for
	timeworks is that if you want the grid to fit the Timeworks rectangle
	you should reduce the paper size in Kspread4 to be just big enough
	to hold the image. If you don't do this you end up with a tiny grid
	in the middle of a lot of white space, unless of course it's a large

	This version differs from the manual in that the sizes specified in
	the GDOS Dialog are now in tenths of inches rather than the units
	originally choosen. So if your printer paper is 8.5 inches across and
	11 inches deep you would enter 85 and 110 respectively. The printer
	driver has its own idea of paper sizes which you can see by clicking
	on the 'default' button. Larger sizes can be used to great effect. By
	making the height 3 times larger you can get the image to spill over
	many sheets. This will work for graphs as well as the the grid, and of
	course you can also print sideways by selecting landscape. Also the
	paper X & Y values are now uneditable, this is intensional. If you
	find that you are getting a blank page between every printed page
	reduce the paper size slightly or turn off the 'Page Break' option
	in the Printer Setup Dialog.

	The GDOS printing routines now recognise the 'Page Break' and 'Form
	Feed' options in the Printer Setup Dialog. The 'Cut Sheet' option
	from the Config Dialog also forces Kspread to wait between sheets
	of paper.

	Page Break - Causes a Form Feed code to be sent to the printer
		between sheets. The amount of paper actually fed through
		will depend upon the printers idea of the paper size
		rather than Kspreads. You can send codes to the printer to
		change its idea of the paper size via Kspread but you will
		need to refer to your printer manual.

	Form Feed - Causes a Form Feed code to be sent to the printer when all
		the printing has finished.

	Cut Sheet - will pause between each page so you can insert a new piece
		of paper.

	Some confusion about what the grid option does in the GDOS dialog has
	arisen. This button has the same effect as the grid option in the
	window menu, it has no effect on the grids set inside surround boxes.
	This button will usually default to what is on the screen so generally
	you will not need to alter it if the screen is showing what you want
	printed. It is there in case you forgot the set the menu option before
	you started the printing process, so you don't need to quit and start

	The Col Head and Row Head options in the GDOS Dialog when altered also 
	alter the Col Head and Row Head settings in the Printer Setup Dialog.

	A problem with GDOS has arisen. When memory is getting short GDOS should
	still be able to generate a picture on your printer by using a temporary
	file on disk. This works up to a point, if you find that you are 
	printing a range of cells which need to be split over several sheets
	and none of the bottom sheets are printed this is the fault. I have 
	been unable to fix it but if you print the bottom part of the range 
	separately you should be OK. You could instead print the full range 
	to a metafile and then print the metafile using OUTPUT.PRG.

	Remember if memory is getting short remove the large point fonts from
	the ASSIGN.SYS file. Believe it or not removing the two 24 point fonts
	for 24 pin printers will free up 300K !! To remove the fonts from the
	ASSIGN.SYS file edit the file using an editor and simply place a semi-
	colon at the start of each line with a 24 in it.

Version 4.02

	The GDOS Function GDOS_PAPER_SIZE() now only takes 2 parameters as
	follows :

	   GDOS_PAPER_SIZE( width, height )

	GDOS_IMAGE_SIZE() remains unchanged ie. GDOS_IMAGE_SIZE(x, y, w, h)

	As explained above Version 4.01 onwards takes paper and image sizes
	in tenths of inches, so GDOS_PAPER_SIZE() and GDOS_IMAGE_SIZE() takes
	their parameters in tenths of inches.

	If you have problems with GRAPH_OPEN() not being able to find the
	data set, try putting .SPD on the data set name. If you have data sets
	FRED.SPD and FRED.SPM Kspread may find the wrong one if you just give
	"FRED" as the data name for GRAPH_OPEN().

Version 4.04 (released 6/2/90)

	This version now draws pie charts. Only the points in the first
	data set are drawn in the chart.

	2 new graph menu options (only selectable when a pie chart visible).

	  Show Percent : Shows percentage values on the labels in a pie chart.
	  Show Values  : Shows point values on the labels in a pie chart.

	Pie charts can be dragged and sized just like normal graphs. A single
	click on the pie will allow you to set the label font and size.

Version 4.05 onwards (released 22/2/90)

	This version will now read and write Lotus Symphony .WRK files. It
	is accessed via the Give and Take options.

	Sorry but Kspread4.inf has slightly changed format, so delete any
	you have and generate a new one

Version 4.06 onwards (released 15/3/90)

	Bug fixed in GDOS_GRAPH() and GDOS_SHEET() macro functions which
	did not use the filename argument correctly.

	Bug fixed in SAVE_RANGE() macro function, to do with 'save formula'

	Bug fixed in the LOAD() macro function, generating a Macro Error when
	all was OK.

	Bug fixed in Recording mode with the COMBINE() macro function being
	recorded incorrectly.

	SAVE_RANGE and COMBINE operation
	Also due to a user request (so ALL complaints should be sent in a
	marked envelope, so we can send them on to him!!) the COMBINE 
	option operates differently.

	1) When you do a Save Range operation KSPREAD writes the location of the
	  range into the file.

	2) As explained in the manual when you do a COMBINE you need to 
	   specify a 'File Range..'. This 'File Range..' is THE range KSPREAD 
	   wrote into the file when you saved it. 

	3) KSPREAD will only load cells from the disk that fall inside this 
	   'File Range..'. This may seem OK but it does mean that you need to 
	   remember where the cells were on the original sheet when you saved 
	   them, not so easy.

	The 'User Request' was as follows, when you do a Save Range what you
	infact do is create a 'sub sheet' starting at A0. 

	In other words if you save a range D5:F10 into a file and then LOAD this
	file it will load into A0:C5 (not D5:F10 where it was saved from).

	Suppose you do a 'Save Range' of D5:F10 into a file. 

	i)  In the original setup when you COMBINED the file you would have to 
	   enter D5:F10 as the 'File Range..' because Kspread knows the range
	   D5:F10 is the range written into the file. If you get the range 
	   wrong (you can't remember it, and why should you!) Kspread may load 
	   NO cells at all.

	ii) In the new system you enter A0:C5 as the 'File Range..' because a 
	   new 'mini sheet' was created when the cells were written to disk. 
	   Only the 'File Range..' entry has changed, everything else operates 
	   as normal. You may say "How will I remember A0:C5 when I couldn't
	   remember D5:F10?" which is a good question. Simple, enter A0:IV8191
	   and ALL the cells in the file will be combined.

	From my point of view this seems quite sensible (otherwise I would not
	have implemented it!) and I hope it does not cause too many problems. It
	will only be the COMBINE() macro function that you will need to change.

	Global Protection

	A new option in the Global Fmt Dialog called 'Global Protection' has
	been introduced. This operates as follows. Kspread now defaults to
	protection ON in ALL new cells. You will not be warned if you try to
	overwrite this cell unless the 'Global Protection' option is ON (it is
	OFF by default). By operating in this manner Kspread now emulates the
	way Lotus 123 does it.

	It is done this way so that you can design a sheet layout and then give 
	the sheet to someone else with Global protection ON firm in the 
	knowledge that any cells YOU want protected cannot be overwritten 
	(unless they turn of Global Protection, that is! ).

	Of course you can override the protection on a cell/range and even the 
	default by using the 'Protected' buttons in the Value, Formula and 
	Label Format Dialogs.

	You can override the default of protection ON by setting the default 
	format of Values, Formulae and Labels in their respective Format Dialogs
	and then doing a Save Desktop from Kspreads Global Menu.

	If you have a KSPREAD4.INF you will already be overriding the default,
	so if you want to make use of the new feature delete KSPREAD4.INF and 
	make a new one using Kspreads 'Save Desktop' in the Global Menu.

	Lotus Files

	Kspread now loads and uses, as well as saves, the position of the sheet
	and the cursor in Lotus files.

	Kspread now sets the cell format to FIXED (0..14 decimal places) for 
	the Lotus 'general' format. This emulates better the way the 'general'
	format works.

	Kspread has changed the way protection works (see above) so the problem
	with things becoming unprotected when saved has been removed.

	If you find lots of '>>>>>>' (arrows) in you cells you will need to 
	widen the columns. The  Lotus 'general' format uses as many places as 
	necessary to display the number provided it fits in the cell. Kspreads
	FIXED 0..14 format uses as many places as necessary regardless of space.


	Lets you create a new graph on the current data set.

	syntax : GRAPH_NEW( "name", {type}, {solid} )

	name  : Name to be given to the graph.
	type  : Type of graph.
		1 - H. Clustered.
		2 - H. Stacked.
		3 - V. Clustered.  (default if missing)
		4 - V. Stacked.
		5 - Line.
		6 - Pie.
	solid : Whether solid type graph. 0-No 1-Yes (default NO if missing)

	Rename a graph on the current sheet.

	syntax : GRAPH_RENAME( {"old name"}, "new name" )

	old name : The graphs name. Top graph used if name missing (top 
		window MUST be a graph window).

	Make a copy of a graph on current sheet.

	syntax : GRAPH_COPY( {"name"}, "new name" )

	name : The graphs name. Top graph used if name missing (top window MUST
		be a graph window).

	Delete a graph on current data sheet.

	syntax : GRAPH_DELETE( {"name"} )

	name : The graphs name. Top graph used if name missing (top window MUST
		be a graph window).

	Delete ALL graphs on current data sheet.

	syntax : GRAPH_RESET()

	Change the type of the named graph.

	syntax : GRAPH_TYPE( {"name"}, {type}, {solid} )

	name : The graphs name. Top graph used if name missing (top window MUST
		be a graph window).
	type  : Type of graph. Type unaltered if parameter missing.
		   1 - H. Clustered.
		   2 - H. Stacked.
		   3 - V. Clustered.
		   4 - V. Stacked.
		   5 - Line.
		   6 - Pie.
	solid : Whether solid type graph. 0-No 1-Yes (not changed if missing)

	Put a new data range onto the named graph.

	syntax : GRAPH_DATARNG_CREATE( {"name"}, {range}, in_columns, position )

	name : The graphs name. Top graph used if name missing (top window MUST
		be a graph window).
	range : The Range to be put on data list. (Solid Cursor default if 
	in_columns : Whether data arranged in columns. 1-Yes 0-No
	position : Position on the list (0..Num on list). 0 is the start.

	Delete a data range from a graph.

	syntax : GRAPH_DATARNG_DELETE( {"name"}, rc_range|A0_range|position )

	name : The graphs name. Top graph used if name missing (top window MUST
		be a graph window).
	range : The range to be deleted, either A0 range or RC range.
	position : Position on the list of the range.

	You can specify a range OR a position.
	  ie. GRAPH_DATARNG_DELETE( "name", A0:C3 ) or
	      GRAPH_DATARNG_DELETE( "name", 0 )

	Delete ALL data ranges from named graph.

	syntax : GRAPH_DATARNG_RESET( {"name"} )

	name : The graphs name. Top graph used if name missing (top window MUST
		be a graph window).

	Put a new text range onto the named graph.

	syntax : GRAPH_TEXTRNG_CREATE( {"name"}, {rc_range|A0_range} )

	name : The graphs name. Top graph used if name missing (top window MUST
		be a graph window).
	range : The Range to be put on text list. (Solid Cursor default if 

	Delete a text range from a graph.

	syntax : GRAPH_TEXTRNG_DELETE( {"name"}, rc_range|A0_range|position )

	name : The graphs name. Top graph used if name missing (top window MUST
		be a graph window).
	range : The range to be deleted, either A0 range or RC range.
	position : Position on the list of the range.

	You can specify a range OR a position.
	  ie. GRAPH_TEXTRNG_DELETE( "name", A0:C3 ) or

	Delete ALL text ranges from named graph.

	syntax : GRAPH_TEXTRNG_RESET( {"name"} )

	name : The graphs name. Top graph used if name missing (top window MUST
		be a graph window).

	Add a name range to a data range.

	syntax : GRAPH_NAMERNG_INSERT( {"name"}, data_range, {name_range} )

	name : The graphs name. Top graph used if name missing (top window MUST
		be a graph window).
	data_range : The data range that is to get the name range.
	name_range : The range with the names in. (default to solid cursor
			if missing)

	Delete a name range from a data range.

	syntax : GRAPH_NAMERNG_DELETE( {"name"}, range )

	name : The graphs name. Top graph used if name missing (top window MUST
		be a graph window).
	range : The range to delete.

	Insert the label range on a named graph.

	syntax : GRAPH_LABELRNG_INSERT( {"name"}, {range} )

	name : The graphs name. Top graph used if name missing (top window MUST
		be a graph window).
	range : The new label range.

	Delete the label range on a named graph.

	syntax : GRAPH_LABELRNG_DELETE( {"name"} )

	name : The graphs name. Top graph used if name missing (top window MUST
		be a graph window).

	Set the vertical and horizontal grid on a graph.

	syntax : GRAPH_GRID( {"name"}, v, h )

	name : The graphs name. Top graph used if name missing (top window MUST
		be a graph window).
	v : Vertical grid flag. 1-On 0-Off.
	h : Horizontal grid flag. 1-On 0-Off.

	Add/Remove key from a graph. Also set the font and the font size.

	syntax : GRAPH_KEY( {"name"}, {on}, {"font"}, {size} )

	name : The graphs name. Top graph used if name missing (top window MUST
		be a graph window).
	on : Whether key on or off. 1-On 0-Off. If missing, key unchanged.
	font : Name of the font ie. "swiss". If missing font unchanged.
	size : Size of the font ie. 10. If missing size unchanged.

	Set the Axis Start and Increment values.

	syntax : GRAPH_SET_AXIS( {"name"}, {Xorigin}, {Xstart}, {Xinc}, 
						{Yorigin} )

	name : The graphs name. Top graph used if name missing (top window MUST
		be a graph window).
	Xorigin : The Xorigin value. If missing, value remains unchanged.
	Xstart  : The Xstart value. If missing, value remains unchanged.
	Xinc    : The Xinc value. If missing, value remains unchanged.
	Yorigin : The Yorigin value. If missing, value remains unchanged.

	Set the axis fonts on a graph.

	syntax : GRAPH_AXIS_FONTS( {"name"}, {hfont}, {hsize}, {vfont}, 
								{vsize} )

	name : The graphs name. Top graph used if name missing (top window MUST
		be a graph window).
	hfont : The H. Axis font name.
	hsize : The H. Axis font size.
	vfont : The V. Axis font name.
	vsize : The V. Axis font size.

	Move the graphs key.

	syntax : GRAPH_MOVE_KEY( {"name"}, {x}, {y} )

	name : The graphs name. Top graph used if name missing (top window MUST
		be a graph window).
	x : x position.
	y : y position.

	Set the Percent and Value labels on a pie chart.

	syntax : GRAPH_PIE_LABELS( {"name"}, {percent}, {values} )

	name : The graphs name. Top graph used if name missing (top window MUST
		be a graph window).
	percent : The percent flag. 1-On 0-Off. Value unchanged if missing.
	values  : The values flag. 1-On 0-Off.  Value unchanged if missing.

	CALCULATE() allows you to recalculate cells on a sheet from within a 
	macro. The function takes either no argument or one argument.

	ie. CALCULATE()		  ..Calculates ALL cells on current sheet.
	    CALCULATE( A0:C15 )	..Calculates range on current sheet.
	    CALCULATE( fred!A0:C15 ) ..Calculates ranges on the data sheet
					called 'fred' which must be in memory.

	The following restrictions apply. You cannot recalc cells on a sheet 
	that is not in memory. You cannot recalc cells on a macro sheet, only 
	cells on a data sheet. This last restriction is so that recursion 
	(CALCULATE() calling CALCULATE(), calling CALCULATE() etc) cannot occur.

Version 4.07 onwards (released 19/4/90)

	Bug fixed in TIMEVALUE() which calculated 12 noon incorrectly, also
	the HHhMMm format is now recognised.

	Bug fixed in single sheet printing. ALL the printing for the current
	page is printed before "Next Sheet" message appears.

	Edit Bar contents are now cleared when you open a new window or move
	to a different window.

	Protected cells cannot be overwritten or deleted without removing
	Global Protection.

	With this new version if you find that the data files created with
	older versions of Kspread do not reopen ALL their windows in their
	old positions then you will need to resave the file using Kspread
	V4.07, after you have set up the windows again. This should only 
	affect VERY FEW files.

Version 4.08 onwards (released 25/5/90)

	Bug fixed in GDOS Landscape printing. Bug showed as corrupt display
	after printing compete. I think this bug only existed in 4.07.
	External References (ie. FRED.SPD!A0) are now updated when a data set
	has its name changed. Only sheets that are in memory that refer the
	the sheet being renamed are affected.

	SHIFT_F5 expands sheet to fill the screen until you hit a key or
	press the mouse button. Useful to get a bigger view!

	NEXT ERROR CELL (window menu) & SHIFT_F6
	Takes the outline cursor to the next cell containing an error.
	This has been implemented because trying to find 10 errors on a data
	sheet that's 600K big can take a while!! Now, just pressing SHIFT_F6 you
	can effortlessly skip from one to the next. Note that the search starts
	from the OUTLINE cursor so start with it in A0.

	Also a single click of the mouse in the SOLID cursor will move the
	OUTLINE cursor onto the cell you clicked on. So to try this out click
	on D5 to turn it black and then click on it again. Hey Presto!! no
	need to use ALT_CLICK.

	When you select Open Window and you only have one data set you no 
	longer need to tell Kspread which data set to open the window on. It 
	makes a wild guess that you want to open the window on the only data 
	set you have!!

	Similarly when you enter Data/Name/Label/Text Ranges onto a graph or
	open a graph window you no longer need to specify which graph if you
	only have one.

	This function allows you to 'chop up' strings. The format is identical
	to the Parse Range option.

	Syntax : STRPARSE( "parse string", "string", index )

	parse string : A string which contains the layout of the "string" 

	string : The string to be scanned.

	index : The location of the token we are interested in.

	  ie. 	STRPARSE( "V V V", "12 13 14", 2 ) gives 13.
		STRPARSE( "L V L", "Fred 13 Sid", 2 ) gives 13.

	For further details see the Parse Range option.

Version 4.09 not released

Version 4.10 onwards (released 8/6/90)

	Bug fixed in COMBINE operation.

	A new option in the Macro Menu allows you to tell KSPREAD a date
	and a time and which macro you would like to run. At the given
	time on the given day the macro will be executed. This assumes you
	left your machine on of course and the clock is correct!

	Select Timer Set in macro menu.
	You get 5 options:

	Create - Create a new timer record.
		 You will be asked for a date. Enter dd/mm/yy or any of
		 the formats recognised by the DATEVALUE() function.
		 You are then asked for a time. Enter hh:mm or any of
		 the formats recognised by the TIMEVALUE() function.
		 Next you have to choose a macro from the selector dialog.

	Edit - 	 Edit an existing Timer Record.
		 As with CREATE above you enter a data, time and macro

	Delete - Delete a Timer record. Simply click on the one you want
		 to delete.

	Reset  - Delete ALL timer records.

	Cancel - Exit and do nothing.

	Now that KSPREAD has the information it will check the clock every
	few moments to see if a macro needs to be run.

	1) The Timer Code works from the system clock so make sure the
	   correct time is set via the Control Panel.

	2) When a macro timer record has been executed it is deleted
	   from the Timer List.

	3) If a dialog, alert or menu is visible the macro will not be
	   executed until the dialog, alert, menu is removed. This is
	   due to the way GEM works. This can cause problems:

		i) If an error occurs in a macro while being executed
		   on a timer ALL macro timers will be suspended until
		   YOU respond to the error. This means you must be
		   there if you expect an error to occur.
		 ii) If the mouse travels into the menu bar and a menu
		   bar appears no timer macros will be executed. We have
		   all seen the Atari mouse move around of its own accord
		   so if you are leaving your machine unattended turn your
		   mouse over.
		iii) Make sure no dialogs or accessories are visible when
		   you leave your machine. 


	syntax CREATE_TIMER_RECORD( time, "macro_name" )

	time : A time in Kspread format. Generated by using TIME(), 
		TIMEVALUE() and NOW() functions. ie. NOW() + TIME( 0, 2, 0 ) 
		sets a timer 2 minutes form now.

	macro_name : the name of the sheet and the macro. ie. FRED.SPM!timer
        	     where FRED.SPM is a sheet and 'timer' is the macro name.

	syntax DELETE_TIMER_RECORD( {index|"macro_name"} )

	Delete a timer record by either giving the macro name or the position of
	the record in the list.


	Delete all timer records.

Version 4.11 onwards (released 26/6/90)

	Kspread now handles characters better. People were having problems
	with the WORD WRAP feature not 'breaking' lines up correctly. This
	has now been fixed.

	Kspread now makes cells wider when using fonts other that the default
	font. As you know you set the width of a column in characters, which
	is fine when using the default font because ALL characters have the
	same width. When using 'swiss' or 'dutch' fonts each character
	has a different width and problems occur. Which character width
	do you use? Previously Kspread used the width of character '8' which
	is about average width. This caused problems with people printing
	cells to GDOS and finding non of their text would fit in the cells
	because the printer fonts are different to the screen fonts. Kspread 
	now uses the width of character 'W', the widest, so most problems 
	should be fixed.

	A user asked me "How many cells can I get across a sheet of A4 or A3?".
	As explained above characters have different widths and you the user
	can also set the point sizes so making a guess is tricky. One other
	complication is that you have a 'default' font on the screen in which
	all characters have the same width. Printers do not have a 'default'
	font, their 'default' is in fact 'swiss' which is not monospaced.
	Just remember that the GDOS Dialog lets you set Paper and Image Sizes
	in 1/10ths of inches so you can set it to what you like, even A3.

	The same user was also confused over the printer width 10" and 15".
	These sizes refer to normal printing ans not to GDOS printing. They
	have no effect when printing to GDOS. 

	He also wanted to know if he could abort a GDOS printout. I'm
	afraid to say that there really is no way. Kspread will allow you to
	abort printing between pages but we all know how long a page can take
	to print. The reason there is no way to abort is because of the way
	GDOS operates. GDOS asks Kspread to draw the picture which takes a
	few moments. It then starts printing which can take a long time. While
	it's printing Kspread nows nothing about it until the next page. What
	is need is a way of aborting GDOS. Please write to Atari and ask them
	to put it in! Programs which allow you to break in do not use GDOS.
	Bug fixed which caused program to hang on Find/Value/All.

	Loading new .CFG does not now move users icons about.

	The '*' button nows clears itself properly in Label Format Dialog.

	We had a user complain that the '|' character cannot be displayed. This
	is because it has special meaning. '||' start a printer command ^PCOM
	and a '|' within a string causes a line feed in a cell >1 character
	in height. See pages 18 para 3, 90 para 2 for details.

	The DIVIDER option in the Number/Formula/Label Format dialogs has been
	replaced with a GLOBAL FONT option.

	GLOBAL FONT - YES = Contents of cell displayed in Global Font. ie. The
				font you chose in the Window Menu.
	GLOBAL FONT - NO  = Two new buttons appear marked 'Font:' and 'Size:'
				By clicking on these as you would in the GDOS
				dialog you can set a different font for a
				single cell or range of cells.

	Note any cells with GLOBAL FONT set to NO need 2 extra bytes of memory
	so use it sparingly, unless you have lots of memory! You can turn the
	feature OFF each or every cell at any time to recover the memory.

	The new GLOBAL FONT options also works in Predefined Ranges.

	Because the DIVIDER option has been sacrificed to allow this new
	facility (which I think you will agree is worth it) any old files
	with DIVIDER set to ON, have this bit set to zero when the file is
	loaded into KSPREAD4. New files generated with this new version will
	work as you would expect, the font info is saved and loaded with the

Version 4.12, 4.12t onwards (released 6/7/90)

	Bug Fixed that caused Kspread to crash when dragging cells or icons.
	This bug happened sometimes and has taken an age to track down, but
	now should be OK, thank goodness!

	General Problems

	ALT-Click hides rows!!

	A common problem people report is ALT-Clicking on a cell causes the
	entire row to disappear. This is not a bug, it is the user clicking
	the mouse in the wrong place. You can alter a row height and a
	column width (ie. a cells size) by ALT-Dragging the bottom right
	corner of a cell. If instead of ALT-Clicking in the middle of the cell
	you place the mouse over the bottom right corner of the cell and hold
	the mouse button down too long, Kspread thinks you want to change the
	size if the cell. Now, because you think your just selecting the cell
	you immediately release the button, Kspread thinks you want to set the
	cell height to zero and therefore hides the row.

	To rememedy the problem click in the right place or instead of using
	ALT-Click simply click on the cell (to turn it BLACK) and then click
	on it again. The outline cursor will move to that cell.

	You can run a macro by pressing Alternate (ALT) along with a function
	key f1 -> f10. You select Macro Key from the Macro Menu and enter a
	number in the range 1 -> 10 corresponding to the function key you
	want to use. Now you can run the Macro by hitting ALT-function_key.

	AUTOLOAD Macro Sheets with Data Sheets
	Remember if you save you Data Sheet with the same name as a Macro
	Sheet (apart from the .SPD and .SPM) when you load the Data Sheet
	the Macro Sheet loads as well.

	AUTOLOAD a Data Sheet
	If you save your data with the name KSPREAD4.SPD it will load
	automatically every time you run Kspread. A Macro Sheet named
	KSPREAD4.SPM will load automatically as well if present.

	If while running any programs on the ST you see 'BOMBS' appear at
	the left edge of the screen. You should TURN OFF your ST and start
	all over again. Just pressing the RESET button may not be enough, it
	is much safer to TURN OFF, count to 3 and TURN ON again.

	Even if you see 'BOMBS' and the desktop appears you must still TURN
	OFF and start again. This is because internal software settings within
	the ST are probably corrupt. Things like 'have we a menu?', 'how many
	disk drives?' etc. Have you ever noticed that sometimes after you see 
	'BOMBS' the desktop menu will not work?

	We sometimes get bug reports like, I tried several times to save a
	file and only after 10 attempts did it work. In this situation I can
	usually guarantee that the machine had crashed before Kspread was run.

	Overlay XX was not found  OR
	The file saved too the wrong drive OR
	The File Selector had no files and I know they are there OR
	The Menu would not drop
	are usually caused by some ST internal 'mess' caused by a 'BOMB' crash.

	Remember if Kspread behaves really badly, TURN OFF and try again.

Version 4.13, 4.13t onwards (released 23/7/90)

	Problem with .DIF files removing digits on values above 1,000,000

	Kspread no longer resorts to E-Format numbers when their value exceeds

	If anybody out there is using TURBODOS (A program that speeds up
	Hard Disk access released a long time ago by Atari France) remember 
	some versions have problems writing to floppy disk. Sometimes 
	TURBODOS writes garbage.

	You will see that the Caps Lock button (bottom right of the desktop)
	has been replaced with CAPS and SOLID. The CAPS key is the same as the
	old CAPS LOCK key. The SOLID button can be clicked on to enable and
	disable it. You can also switch it on and off by pressing both SHIFT
	keys at the same time. When the SOLID button is BLACK the arrow
	keys along with the SHIFT keys move and size the SOLID-BLACK cursor
	on the cells (this is how Kspread worked before). When turned off the 
	arrow keys along with either SHIFT key move the OUTLINE cursor 
	Up/Down/Left or Right by a full page. This is how LOTUS 123 works.

Version 4.14, 4.14t onwards (released 3/11/90)
	Macro Names can have spaces.

Version 4.15, 4.15t onwards (released 12/11/90)
	Bug fixed in entering Udefn and Range Names. Also bug which stopped
	data above row 955 being loaded. These bugs only existed in versions 
	4.15 and 4.15t.

	You can now use Range Names in Macro Functions.
		ie. PRINT_SHEET("PRN:", RangeName)

	You can also use Range Names in External Refs.
		ie. S(DATA.SPD!RangeName)

	A problem with floating point rounding errors returning the wrong
	answer for INT(5.6/0.4) fixed.

Article - K-Spread 4

K-Spread 4 Article K-Spread 4 Article K-Spread 4 Article

Book / Magazine Reviews - K-Spread 4

 International TOS Software Catalog · Winter, 1992

K-Spread 4 Atari review K-Spread 4 Atari review 

About Us - Contact - Credits - Powered with Webdev - © Atarimania 2003-2022