Mortgage calculator. Interest rates are down. Hurry, hurry.get that mortgage re-financed NOW. Thisprog. helps you to see what a mortgagewill cost you, or what effect changesto your payments etc. will have on yourtotal outlay. It assumes a no frills,Standard Repayment mortgage, in whichthe fixed rate interest on the balanceof the Principal is charged calendarmonthly at 1/12th of the annualinterest rate. If you go back to yourold 11+ school notes on geometricprogressions (Editor: for those who area little younger, try your GCSE Mathsnotes) you will see that all you haveto do is to work out the value of theloan at compound interest over 'n'years and equate it to the value of asinking fund accumulation over the sameperiod. Then a bit of algebra andyou've sussed it! Actually we use the formula to get themonthly payments but, hail to thecomputer, we then go through ittediously month by month, rounding thepennies up and down to produce aSummmary or a Detailed Listing. Thisway it's never more than a few penceout from the Mortgage Company, providedthey are charging to the same criteria.If they're not it'll cost you more, soput the boot in..but check for anyre-negotiation charges first. Output: The Summary and DetailedListing can be cycled repeatedly (soyou can change your monthly premiums),the original mortgage Principal andannual interest rate being retained.You can ask for the Closing Balance ata specified date (make a note of it),select New Mortgage at the prompt andrun it again with a new Principalafter, say, paying off a lump sum etc.etc. The Cost Factor is simply theratio of your total outlay to theoriginal Mortgage Principal Note: Try this. RUN the prog fromscratch without changing the monthlypremiums at the prompt. Select Repeatat the next prompt but now type in a'new' monthly premium with exactly thesame value as the first run. You willnow see a difference in the finalmonth's due payment and/or the finaldate. Why? Well if you haven't inputthe monthly premiums yourself (twodecimal places implicit) on the firstrun, then the prog. uses its own calcand works it out to umpteen places tocorrespond exactly with the mortgageperiod, then uses this value throughoutthe detail calcs but only shows you twodecimals. Geometric progressions aresensitive to the accuracy usedparticularly over longer time periodsand you can expect some (small)difference from the mortgagee's fingersand toes figures. The column 'Mar' shows you what theMortgage Co. (ie the mortgagee) getsout of it, in case you fancy the jobyourself. They re-invest your monthlypayments as they get them, assumed atthe same monthly compound interest ratethey charge you, and it grows and growsinto the Mortgagee's accrued return,Mar. That's why they sometimes add apenalty charge if you make a latepayment because they lose a wholemonth's interest on it! However they dohave to pay interest on the money theyborrowed to lend to you - tough. Sothey don't really end up with all thatdosh. You work it out. by Steven Flintham Joker is a simple program whichdisplays jokes at random from adisk-based data file. The first versionwas written in October 1991 as my firstmultitasking Archimedes program. Irecently rewrote the Archimedes versionand decided to convert it to the 8-bitBBC series at the same time. The jokefiles on BBC version 1.00 andArchimedes version 2.00 are identical -BBC version 1.10 has a few extra jokesadded. When run, a "title" screen will appearand there will be a relatively shortdelay while the computer scans throughthe joke file. You will then beprompted to press SPACE to continue, atwhich point a joke will be displayed.Pressing SPACE after that eitherdisplays the rest of the joke (if itdoesn't all fit on the screen at once)or displays the next joke. The jokes inthe file are marked as used after beingdisplayed to prevent repetition, so thedisk must be left in the drive and mustnot be write protected during use.Pressing ESCAPE at almost any time willclose the joke file and quit theprogram. When all the jokes have been seen,there will be a short delay while theyare all marked as unused again and theywill begin to repeat - this is,obviously, unavoidable. Repetitionbetween resets is, however, avoided. Modifying the joke file If you don't like the jokes currentlyused by the program or you want to addmore, you can edit the file "Jokes".Each joke begins on a new line with |$or |^ (I recommend you use the former,because although BBC version 1.10ignores these characters, this providesmaximum compatibility with otherversions) and then takes the form ofstraight text with RETURNs ONLY where anew line is required. Jokerautomatically prevents words beingsplit at line ends. The end of the joke is indicated by the|^ or |$ of the next joke, or by a ^ onits own line if there are no morejokes. Examining the existing file should makethe format clear if this isincomprehensible! After modifying the joke file, youshould *Delete JokeInd and then runJoker. This will recreate the JokeIndfile - this can take some time, butonly has to be done when the joke filehas been changed. Copyright and distribution The program code for Joker 1.10 isfreeware, and may be copied freelyprovided no profit is made in theprocess and that all the files remainunchanged. However, it remains (C)Steven Flintham 1993. The joke file is,of course, exempt from this copyright.Nevertheless, the program code may notbe distributed with a changed joke file(to prevent confusion between versionsand to avoid me being held responsiblefor people taking offense at jokesadded by someone else!) If you want,you can distribute changed joke filesseparately, as long as they areaccompanied by a documentation filestating that you are the "author" ofthese files. Credits I would like to thank Chris Richardsonfor his suggestions about version 1.00,which have been implemented in version1.10. Thanks to the use of a separateindex file, it no longer takes a weekor two to load. Disclaimer Joker is not guaranteed suitable forany particular purpose and the authorcannot be held responsible for anydamage caused to software or hardwarethrough the use of this application,nor for any damage caused as a resultof software or hardware damage. If youdiscover any problems, feel free towrite to me at the address below, butit cannot be guaranteed that anyproblems will be corrected. Contacting me If you have any jokes you would like meto consider adding to the joke file inlater versions, please send them to me.A letter will do - no need for a disk,but if you do want to send one for somereason, please note that I can onlyhandle the following formats: 40 track single sided DFS or 40 track single sided ADFS ('S') for 5.25 inch 80 track double sided ADFS ('L') for 3.5 inch Please send an SAE if you want yourdisk back. My address for problems and jokes is: Steven Flintham 6 Laythorpe Avenue Skegness Lincolnshire PE25 3BX Publicity If you're a keen BBC user, why not join8-bit Software, a disk-based magazine &user group. For more information, writeto: 8-bit Software 1 Oakwood Drive Heaton Bolton BL1 5EE enclosing an SAE. Alternatively, send ablank disk in any of the followingformats, either 3.5" or 5.25": 80 track double sided DFS 80 track double sided ADFS ('L') along with a 50p coin for a copy of thelatest edition. Any 8BS members reading this cancontact me via 8BS, user ID 15A. Banners allows messages to be printedhorizontally or vertically down sheetsof continuous listing paper. Thesebanners can then be hung horizontallywith the sprocket holes running left toright if not removed or vertically withthe sprocket holes running top tobottom. Any characters can beincorporated in a banner, the programreads the BBC's character set when runand uses this for each character. Whena banner is printed, a vertical andhorizontal multiplier can be set, theseallow each character to be increased insize up to a factor of ten. The bestsize for the characters will depend onwhat the banner is to be used for, butI usually set the vertical multiplierslightly larger than the horizontal toprevent the characters looking "fat".For simplicity the program is menudriven. There are only 6 options(including quit) displayed. It ispossible to enter operating systemcommands from the menu. The optionsavailable are: Save and Load - these allow the currentsettings to be saved to disk for futureuse. If you are using a tape system youwill have to remove the section in savewhich looks for any file which may havethe same name as the one you havespecified. Change Settings - the settings whichthis allows access to are at the heartof the program. The horizontal andvertical multipliers have already beendescribed. The left, top and bottomgaps allow space to be left on the leftof each character (thus allowingcharacters to be in the centre of asheet), and blank lines to be leftabove or below each letter, these allowfor each letter to be printed onseparate sheets of paper. Normally,when printing, each letter is made ofXs, but this can be changed, somecharacters are more suitable for usethan others, e.g. * can be usedeffectively as can O but - is lesseffective. Likewise a blank (space) isusually used for the background butthis can be changed. Finally linespacing can be set. This allows thespace between each line of charactersmaking up a letter to be varied. Theline spacing is descibed as a fractionof an inch, n/216th of an inch. This isnormally set to 36, the default settingon most printers. By increasing thisvalue, letters become more spaced outand by reducing it they become morecompact. This may necessitate somechanges in the lines at the top andbottom of each letter. Message - this allows three messages tobe specified. The main message, whichwill be printed out in large letters, apre message, which is printed beforethe main message, and a post messagewhich is printed at the end of the mainmessage. Print - this allows the message (pluspre and post messages) to be printedout. The option can be selected andused without the printer being switchedon so some idea of the end result willappear. When entering data, if return ispressed without anything being entered,then the current setting will be leftthe same. By altering settings betweenprinting letters of the same wordvarious effects can be gained, e.g.letters which get smaller (or larger)as read. As it stands Banners is set to use anEpson-standed dot matrix printer, butit is in no way restricted to this. Theprogram should run equally well (if notbetter) on a daisy wheel. The programonly uses two special control codes,the code for Escape (which is normallystandard anyway), and the code forn/216 line feed. These are both set bythe procedure epson#codes. Once thesevalues are changed, the program shouldrun unchanged on any printer.