@L|}6CD l0C)HCC WhL/h `CmCDiD`  R@W1  Y0@R !L` D  C D     )16CS S)  C)D1 p p 0 C9DI pCDL~CiCDiD` D  C D     )16CS S)  C)D1 p p }0 C9DI pCDL~CiCDiD` DD˙` d J)L !}D L(( LL()  L| L( S LH 0p n  } CY?  q  L L  ` )} `A! d߰")-݆ "  $G@LLL&0") $G% }H0 3S8`G ȱG ȱG   Gȭ Gȭ GG}GHiH8(()) G$H% `(0 })8` d)L ݆ & LGȘ ݆LL d  ! LL d)N>Q  HH) }  hyhyB q L> Lm JJ  Ln*` dB%' }8  H H` 1 { LL   !L     Hh SY?  q  1L }  !? S   q 1 L   Ll  Lg E`L   !L)  q 1L}) `L0AM݊L݉ ML  N݆LLLNLMLHG!@}1F GȱGLLEEȩÑEȑEEȑE Ed E7EȩE  q} L !,0,0SGɛ L 1 !L EHEh W G gLLSROTCES EERF } G) *Gȩ GȽG GȌd q q G`  8   0G  `D}CEDC0X:Ȣ Y ȱC* ? 0.. , 0%n ?A[ 0 : L`L  `, 0`Y}`piH n0)բY? 08`0 }  0$L GGȽG L `8L`L}8`  05G)݁,G)ȱGȱGHh0})Hh` B! 8`8iiiLE`}E8FEh( l0`ɃLL L8^~jj8jHi hEEEiEȱEiE` dTE} H8EEȱEEȩEh J E8   . m  i`LI!)E1FR}1LJ舩9GIH`LJJ`HGHh l`} S gL   8 rii `дCDCG W  }C  Lq` X٨`DOS SYS IIIIIIIIIIIIIIIC`0 ߩ0}}}y |||DDOS DOSDOS SYS }}}}}CDOS SYS TEST TMP} 0`BDELV !B }`LVUQ   ]   TU J ]L!T  #      TU  } L ? .  t`GBJ V~DEHI B V0dV!}QDEHI VF9 ,0 ,0 s0hhL  L` H hDHEh"}DEL8HI   0 HI,0 0  9 .G VLO#},0 L4*IJ`llD1:AUTORUN.SYSNEED MEM.SAV TO LOAD THIS FILE.D1:MEM.SAV J y08 B|DEHI$} V0 0`B;DELV䌚 !B y`@ʆ v s? F0Ξ05: [ BDEHI%} VY8 B V  @  /DE `E:D1:DUP.SYSERROR-SAVING USER MEMORY ON DISKTYPE Y TO &}STILL RUN DOS B;DE J V (` 9 V⪍ ઍ  -'}LLu DEHILV 9 .l 9 .l  `` s$B VBH(}I|DE V BLV nB,DE J V* \*` B V BLVDEHI BLVL)}1u H232435; 1 ;  hh@2 e1i1LHҍ 00) 08 109hh@ Ҡ2e*}1i1232435ޥ<<8} 3E:}DISK OPERATING SYSTEM II VERSION 2.0SCOPYRIGHT 1980 ATARIA. DISK DIRECTORY I. FORMAT DISKB. RUN CARTRIDGE J. D,}UPLICATE DISKC. COPY FILE K. BINARY SAVED. DELETE FILE(S) L. BINARY LOADE. RENAME FILE M. RUN AT ADDRESSF. LOCK F-}ILE N. CREATE MEM.SAVG. UNLOCK FILE O. DUPLICATE FILEH. WRITE DOS FILES9!&x#!7&p))'&X*./)L''-؆莟.}R'S  vW DEHHI 1A#! @ ~0ɛ8A0.) ȅ 1 1i/}il ! 1L NO SUCH ITEMSELECT ITEM OR FOR MENU! 0 .{z:*{}.|~ 1 0 00}JB 18L^%|DLl%DIRECTORY--SEARCH SPEC,LIST FILE? # 0 0 n&|D! 1L NOT A DISK FILE1}N !B 1L " 1 !BDED:}:1BJ|DE 1DEBH2}I 1 h0ߢ 0.  0?詛 1 ~0YЛ 1 "L<" "L 3} BL1TYPE "Y" TO DELETE...DELETE FILE SPECCOPY--FROM, TO?OPTION NOT ALLOWED SC3 BAS 198 COPYING---D1:SC3.4}BASAS# 0|D .L$A#B#C#JB|DE 1BHIDD#E 1D#0: B5} 1L B#C#C#B# B 1N#$0SYS1}:e#D# d# D# .d#ȽD# d# 𩛙d#X# 1,A#6}PdD#ELO- A.BJdD#E 1 1HH 0hh|DL^%1}:e# Lt% e#dD#EL%7} 1 0 . .0% 1L WILD CARDS NOT ALLOWED IN DESTINATION 0 A.|K@C}//3Hu ξL/L DRIVE TO WRITE DOS FILES TO?WRITING NEW DOS FILESTYPE "Y" TO WRITE DOS TO DRIVE 2.?}D2:DOS.SYSERROR - NOT VERSION 2 FORMAT. , &* բ( 1L `[) 0NΞ 0 L1M) 1@} L BAD LOAD FILELOAD FROM WHAT FILE?) 0 0#B 1L WHAT FILE TO LOCK?) 0 0$B 1L WHAT FILE TO UNLOCK?DUA}P DISK-SOURCE,DEST DRIVES?TYPE "Y" IF OK TO USE PROGRAM AREACAUTION: A "Y" INVALIDATES MEM.SAV. h  ,B}  `)  <0 2 2 0  ,   ,,ޢ* 1L ,K* 1 ~0 0C}FINSERT BOTH DISKS, TYPE RETURNERROR - DRIVES INCOMPATIBLE., 1 ~038  , 1L D}, &*  Lz+, 0 , 1 ~0 + Y,0!,0 ,L+ ,mm  v,"ǭE}0Ξ, 05,Lt+L +,Hh` NOT ENOUGH ROOMINSERT SOURCE DISK,TYPE RETURNF}INSERT DESTINATION DISK,TYPE RETURN`    `L,8,0( rG}L1(`ߢ) 1* 1 ~0Y`hhL S SL1) 8`NAME OF FILE TO MOVE?- 0 0|DLtH}% A., 1 <0 0 .@L# .BJ 1  DEHIB V L1 ,5 1 <0,L. I} JB|,A#Pd#DE 1 HI BDEHHII 1 B 1 , 1 <0,0Lf- B VJ},A#P, 1 <0 0L#L ߢ) 1* 1 ~0Yj383}mm ݭK}}`8}``|* ? ɛ,`|:(|/ 1L `DESTINATION CANT L}BE DOS.SYS0 0H{ $22Δ $28/L /) $2 Π $2 0 ξM}hAΞB,0 J 1 BޝDEHI,HDE 1HIHIDELSAVE-N}GIVE FILE,START,END(,INIT,RUN)O X0 1`BDEPHI V` X0H 1 L O}0 0 1L0`PLEASE TYPE 1 LETTER,0`hhL <0 1L0LA1 ,;ɛ7,"ɛ:ݦ1ݥP}A"D|ݤD|ȩ:|ȩ|ɛ,,(/+.ީ1 1,ɛ`轤{Q}NAME TOO LONG B VL ` L1I H1EӝDL1|mDiE` V0`8d/8 i:"2!22 1R} L ERROR- 165ɛ+,' 20*.. өw2 1``2TOO MANY DIGITSINVALIDS} HEXADECIMAL PARAMETER800 0 8 00`,0'D800H,ɛh`2L1NEED D1 THRU D4uT} HEXADECIMAL PARAMETER800 0 8 00`,0'D800H,ɛh`2L1NEED D1 THRU D4uMNf8>J>DOTIIRDAPOKMOVTEMPMBASPL2ZPL1PL3NRNRCRVNICV} W} !" X}SAVE "D:TUT1.BAS-AR@ }-A6-F:Ap,RR;@,;@0,;@,;@Y},;@,;@,;@,(* 6..67@,.*67@,.2* 6. 67@0,.*67@,.<Z} @FTIMER ROUTINEP@wU1-@%A.F:B2y,"@1$Z   $[U +[}AR@1ACA@UA @_E6-@6-% B7-@@\}B Hello,E(d#"@ B# Af; A-  What is your first name 1; Bg'('  My nam]}e is  the TUTOR.h** "I am going to help you learn abouti'  CodeWriter.'"@Aj+(+  This tutori^}al is self-paced. Tok proceed, press .l B A3w%6-@6-A(% Bx8-@@_}8 From the CodeWriter main menu,9-@@#  you can :/6-A9 @H-@@2 * `}Create a screen layout>6-AH @G-@@1 * Create an application=6-AG @E-@a}@/ * Format a blank disk;6-AE @4-@@4 5-@b}@5 This is where we will begin A3%6-A6-@% B=-@@= # Beforc}e we get into the screen,++ # layout creation, let's define a +  few terms.!6-A+ @;-@d}@; ! When you see the word field,-- % you may think of a football field.,, $ That is not quite correce}t. Let's ,, $ try a real application- a recipe )  file.6-A& @) "++ # Each ingredient orf} instruction,/  is a ."6-AP, @/(6C* " Each recipe card is a .66-AP@ @Cg}(@?&  The recipe box is a .26-AP< @?(J((  The following screen is an T+!  example ofh} one record.+ A3^%6-@6-A2% Bh4-@@4   ӠŠr=-@i}@= # Category .......... Serves .....|** " Name ............. Time(min) ...-* " Key Ingredient ...........j}......-(   a  b  c  d (   1  2  3  k}4  5  6 ( A3%6-@6-A% B;-@@; ! In case you didn't nl}otice, each'' group of dots ..... is a .((  Each dot is a space for a letter+  or number.6-A( @m}+(++ # If only numbers will be expected,** "a # symbol is used in place of the&*  last dot.6-A' n}@*(0,, $ If the field will represent money,:++ #then a $ symbol is used in place ofD** "the last dot. Also ao}n extra dot isN;% needed for the decimal point.16-A; @XI-@@3  MILES PER GALLON ...#p}?6-AI @b06-@"6-@&6.19.90 A30lF-@@0  BALANCE DUE .....$<6-Aq}F @v26-@6-@(6.146.112 A30 A3%6-@$6-A(% B5-@r}@5  Now, just 2 more terms and6 we'll be ready to go.)6-A3 @6((  - 6-As}( @ Because we are creating((  a data entry program, CodeWriter** "will need to know what informationt}++ #on the screen will not require data/ to be entered."6-A, @/(((  An example of a label wouldu} be , a page header."6-A, @a6-@6-@!6.;67B:,%@,.îE A30Q6-Av}P[ @^(a(,, $ Labels are designated using inverse ** "video. They may appear anywhere on  the screen.w} A3 76-@6-@% B7-@@*;"  Now - - - the other term..6-A8 @;(x}4)  - 6-A) @> A prompt asks forH)) !information to be entered. It is R++ #always folly}owed by at least one dot\%% to indicate how much space isf@' available to enter information.36-A= @@(z}p8  NAME ...............+6-AP5 @8(z((  This prompt asks for a name to ((  be filled in. The num{}ber of dots## you place after the prompt,** "indicates the number of characters allowed for that space. |}A3%6-AD6-A% B9-@@9  CodeWriter allows you make the%% choice of the fo}}rmat of dates,, $(American or European). The American%% format is month/day/year. TheC* "European format is day/~}month/year.66-A@ @C(((  The same format is always used '' (../../..) and the error check )) !co}de needed to reject bad entries:! is automatically written.-6-AP7 @:(++ # No matter which format is s}elected$$$ use the format ../../.. and .((  CodeWriter will understand that 8( you have a date field.( A3B}76-@6-@% B7-@@L''  Let's put it all together in aV3 data-entry screen.&6-A}0 @3(`((  These are the things we will bej using:(t##  * label * numeric field~""  * prom}pt * dollar field2(  * date * alphanumeric field2 A3M6-A6-@d% B16-@%; @}M-@@!!  Ӡ2  î(6-AP2 @&-@@}&  REMEMBER....>(  * Use reverse video for labels.46-A> @.-@@ .-@@};% Customer ....................16-A; @&& * This will be an alphanumericC- % field for a maximum} of 20 characters96-AC @-@@  Address ...............R* "City .......... St}ate .. Zip .....66-AP@ @R-@@ & Inv. num6-@P& @ -@@}  &&  - Do not use periods to (((  abreviate. CodeWriter will think2, it is a field."6-AP,} @<1-@@ 1-@@FZ  Inv num ....."6-@P, @D( Items sold ....#}P6-@PZ @P?) !* The # indicates a numeric field56-A? @Z-@@ dU-@}@? %Inv Date ../../.. Del Date ../../..K6-AU @n Amt This Inv .....$x Amt Prev Inv .....}$ Paid on Acct .....$1 Balance DUE ......$'6-A1 @,(, !Total Accounts Receivable ....... } A376-@6-% B7-@** " After you have finished designing** "your data-e}ntry screen, CodeWriter6 will read the screen.)6-AP3 @6()) ! For any numeric or dollar field,** }"you will be asked to choose one of" three types of fields :"(** " - This type of field will((  } be filled in by the >%  program operator.16-AP; @>(** " - CodeWriter will co}mpute** " this amount from other"B) ! fields on the screen.56-AP? @B(,&& } - CodeWriter will add6''  the totals from all@((  records in the file J%%  }and show you thatT)) ! total on every screen^ A3h76-@6-A(% B7-@@}r''  If you are not sure that your |((  screen is exactly what you want,++ #don't worry. CodeWriter allows you }1 to make changes.$6-A. @1(,, $ You may edit the screen. This means++ #adding or deleting fields,} changing** "the number of entry spaces after a>% prompt, or any other changes.16-AP; @>(@* " You} may change the screen format.66-A@ @'' This option allows you to move ++ #existing screen informatio}n around.2(  Nothing may be added or deleted.2 A376-A6-@% B7-@@((  As} soon as you have saved your && screen with the (S)ave screen )) !option, we are ready to create an)) !applicati}on. (application means a'' data-entry program based on the&:! screen we have designed.)-6-A7 @:(0+}+ # Since we indicated in our previous:** "Accounts Receivable screen that weD&& wanted two grand total fields,N(( } CodeWriter will now need to knowX++ #which fields to get the informationb from.(l CodeWriter will ask ...}v A376-@6-A2% B7-@@** " ... please specify which field is"" to be ac}cumulated in this  Grand Total Field.  (F1-F13 or 'l' to list),(, ! Hold on one second !! What's all;"} this about F's and list ??.6-A8 @;(((  Don't worry, CodeWriter is just,, $making things simple by} abbreviating)) !the fields we entered. An F and a)) !number has been assigned to each ((  field entered. If you }chose the ((  'list' option, you could see all,, $of your fields in abbreviated form .  A376-@6}0i̭1iiԠiՠ 9Ԉ J`0/+% 25.$!54/25."!3$!54/25."!3 }1iiԠiՠ 9Ԉ J`0/+% 25.$!54/25."!3$!54/25."!3 /0RRDOTRNRNRVRCNIIIDRIINSC- 7<BU @}A A @ @ @ @@t@@8@}@ SAVE "D:TUT2.BAS-AR@ }-A6-F:Ap,RR;@,;@0,};@,;@,;@,;@,;@,(* 6..67@,.*67@,.2* 6. 67@0,.*6}7@,.< @FTIMER ROUTINEP--@@)B2y@- Q@wU1-@}%Au.F:B2y,"@1$Z   $_U +AR@1ACA@UA @}aE6-@6-% B7-@@B Hello,E(d#"@ B# Af; A- } What is your first name 1; Bg'('  My name is  the TUTOR.h** "I am going to help you learn abouti}'  CodeWriter.'"@Aj+(+  This tutorial is self-paced. Tok proceed, press .l B }A3n76-@6-A(% B7-@@s((  The Report Creation System is ax''(powerful tool t}hat gives you a }>%('window' into your data-base.16-A; @>(++(# It's really not too difficult once;}"(you understand the basics..6-A8 @;(++(# You might want to get a pencil and++(#and paper to take n}otes. If you are(ready, we will begin. A376-A6-@d% B7-@@''( The}re are hundreds of reports ))(!that you can make. Here are a few+( examples :6-AP( @+(4( * M}ailing Labels'6-A1 @4(3( * Form Letters &6-A0 @3(3( * Sales Reports&6-A}-A% B7-@@ #  KEYBOARD ENTERED FIELDS#(*$$  F3=Customer F4=Address4""  F5=City} F6=State>$$  F7=Zip F8=Inv NumH&&  F9=Items sold F10=Inv DateR** " F11=Del Date F12=Amt }This Inv\  F13=Amt Prev Invf  F14=Paid on Acct(p%"  PROGRAM CALCULATED FIELDS%(z  F15=Balance due}(  GRAND TOTAL FIELDS(*'  F16=Total Accounts Receivable*(A A36-@$%6-A(/ BA-}@@** "* Note : Field numbers 1 and 2 are((  missing. This is because label** " fields receive num}bers just like** " any other field, but they do not  appear in the listing. A376-@6-@}% B7-@@((  Now when CodeWriter asks which && field to accumulate for TOTAL ((  ACCOUNTS} RECEIVABLE you will not   be confused.( )) ! You can simply look at your list '' and reply F15, which stands f}or$ -  Balance Due. 6-A* @-(. ,, $ In this case, CodeWriter will keep 8 )) !track of the balance due o}n everyB ((  record entered, and indicate theL ((  the grand total from all recordsV /% at the bottom of each record.}/ A3` 76-AD6-A% B7-@@j )) ! We also have asked CodeWriter tot )) !calculate on}e field, Balance Due.~ '' Let's take another look at our  )) !screen design to see which fields )) !we want CodeWrit}er to use to give 0& us the amount for Balance Due.0 A3 76-@6-@% B7-@@ !!}  Ӡ   î( %% Customer ....................  Address .............}.. ** "City .......... State .. Zip ..... ((  Inv num ..... Items sold ....# ?-@@? %Inv Date ../../}.. Del Date ../../..  Amt This Inv .....$  Amt Prev Inv .....$  Paid on Acct .....$  Balance DUE ..}....$ ,(, !Total Accounts Receivable .......# A3( 76-A6-@d% B7-@@2 )) !} equals < C- %plus minus .96-AuC @F )) !See why CodeWrite}r has allowed usP .  to abreviate.!6-A+ @.(Z ?& But we can write it this way :26-A< @?(}d A6-@6-@76.F15 = F12 + F13 - F14A A30n 6-Au @x .( (.  Because it is someti}mes hard to ++ #remember the field numbers, you can ," see them by typing 'list'., A3 76-@6-}% B7-@@ )) ! Let's look back and see where we   have been.( C* " * We designed a data-entry} screen66-AP@ @C( &&  * We started our application  &&  by telling CodeWriter which 7  fields} to calculate*6-AP4 @7( ,, $ Only one step remains before we can !! generate a BASIC program. A3} 76-@6-A(% B7-@@ :!  CodeWriter Reject If's-6-A7 @:( &&  }CodeWriter will display each  ((  keyboard entered field and it's " ((  type, length, field number, and , )) !field na}me. You then will be able6 ((  to specify what entries are not @ ,  acceptable.6-A) @,(J &&  In the }middle of the screen, T  you will see :(^ +(  Reject If : .................+(h ** " If you do not care what is} filledr )) !in by the user, simply hit return| `" to skip to the next field., A36 BB6-AN6-@}`-@@ .(. # Your field is used for looking ++ #up, updating, and deleting records. 7 It h}ave an entry.*6-AP4 @7(   So you would type :(   Reject If :  46-@6-@*6.}NO ENTRY4 A30 A3 76-@6-A2% B7-@@ )) ! You may also use 'Reject If' }to  ++ #limit the length of an entry, allow '' only numeric entries, limit the '' dollar amount of an entry, etc.} ++ #Check appendix A in your CodeWriter ?& manual for many powerful uses.26-AP< @?( ** " For each 'r}eject if' you have the %% opportunity to enter an error& ** "message to appear if the entry is 0 && rejected. If you} do not want a: ,, $message to appear simply type returnD  when you see :(N ##  Error Message : ..........X }A3b 76-@6-% B7-@@l ##  That's all there is to it.v )) !CodeWriter will now t}ake over and (% code your data-entry program.(( !  A few helpful hints :!( ((  * Start simple - build simple } )) ! screens the first few times '$  to get the hang of it.'( )) ! * Use your manual - it's a very '}'  helpful tool with easy to   read information. A"@6-A% @(2+A% D:TU}T2.BAS 9-@@"9  to rerun, for menu 6-F:B2y, "@ @ ."@}+.% D:AUTORUN.BAS A2 %"@6-A% @ 6-@@"6 , press to }continue F:B2y,@A3 $ CHAR BY CHAR PRINT - .@.@@K}: -@B:,* 7<,4 "Ad@e")@> -@@  H  R  6.@\} $'6.BCDFGHJKLMNPRSTVWXZ'6.AEIOUY'1167@,.7P:H:,$@%@,,'1167@,.7P:H:},$@%@,,$'1167@,.7P:H:,$@%@,,)'1167@,.7P:H:,$@%@,,.'11}67@,.7P:H:,$@%@,,3' B`* }*AA+$>INVERSE ϛ> }0 @3(4( * Customer Lists'6-A1 @4())(! Let's take a look at how reports( are made }... A376-@6-@% B7-@@))(! In CodeWriter part 1, Data Entry**("System, }you designed a program for''(storing individual records in a1(large data-base.$6-AP. @1())(! A }report allows you to take the ))(!information out of this data-base&&(and reorganize it for another )(purpose.}6-AP& @)(!!( Here's an example .... A3 76-@D6-A% B7-@@}))(  has a file that he created,,($with CodeWriter for keeping tutorial/(class records."6-A, @}/(++(# Each student is one record in the "4(file. Like this ...'6-A1 @4(''$( }'(,!!(Name ....................1(Class Time ....(6''(Parents name ..................; (Ad}dress ................@((( City ........... St .. Zip .....E(Birthdate ../../..J A3T%6-@6-@}% BY))(  wants a birthdate list for^))(!his tutorial class. He just needsc@'(a list of names and bi}rthdates.36-A= @@(h/( Like this ..."6-A, @/(m3 (Name( Birthdate&6-A0 @}3(rB)(! Or we could write it like this :56-A? @B(w(F2 ....................|( F9 ../../..} A376-@$6-A(% B7-@@))( When the report runs,  will''(have a lis}t of names that looks,( like this :6-A) @,((Les Humid * Note''(10/10/63 the n}ames will((( fill the screen$$(Willie Makit and then ))(!05/10/63 will be prompte}d))(! to hit to((( Betty Wont for more names.(03/15/63((Polly Urethane}(06/11/63 A376-@6-A% B7-@@''( There are four basic steps in 3}(making any report.&6-A0 @3(%%( 1-Declaring any new program7( calculated fields.*6-A}4 @7(A(( 2-Designing the record format.46-A> @A(((( 3-Specifying which records to ;"(} accept for evaluation..6-A8 @;(''( 4-Sorting the records into an@'( alphabetic or numeric} order36-A= @@())(! Watch for these steps as we walk''(through the making of a report. A3}76-@6-% B7-@@ ,,($ We will use these border and screen++(#colors to designate} that the screen((( represents an actual screen from%%(the CodeWriter Report System.! A3 }&2-@0} úҲ2-@@+>((Enter screen file name ........46-@P> @016-@%6-@}'6.CLASS1 A305 A3 }:1-@0 úҳ1-@@?D.(%What report number is this} (1 - 99) .:6-@`D @A6-@P @D-6-@6-@7#6.1- A30N A3 }S}1-@0 úҴ1-@@X%% Do you wish to enter dates in]7-@@7(merican format} : mm/dd/yy orbN-@@8(uropean format : dd/mm/yy ? .D6-AN @g-6-@6-@3#6.}A- A30l A3 }q1-@0 úҵ1-@@v**("Your report program will display a{}''(title screen which will include( 'Designed By'(($$(Please enter your name below$!( (25 characters o}r less)$(A+("Designed By : ....................76-AA @+6-@6-@!6.+ A30% }A3 }%-@@,,($ In addition to the designer credit,**("a program title will be displayed.1+(#I}t may be up to 25 characters long..(1(%%(Title: ......................6-AP @96-@ 6-@}/6. Birthday List9 A30 A3%6-@6-A% B-@@%%( Before desi}gning your report''(layout, you must define all new))(!program calculated variables that**("you want to appear i}n your report.))(!You will also be asked to enter a%%(brief description of the new *( variable.6-A' }@*(,,($ When you have finished defining the**("new variables, you type 'done' to C*("continue with the repo}rt creation.66-A@ @C(,,($ You enter this new calculation the !!(same way you entered the ''(cal }culations in your data-entry(program. A3 }-@@**(" * NOTE : It is not necessary } to  ,,($define new program calculated fields ((( unless you would like to include --(%calculations other than those } defined ##(in your data-entry program. A376-@6-% B7-@@##( You w }ill now be given the ,,($opportunity to specify the format of **("one record. When the program runs,%%%(the format } will be duplicated*++(#horizontally and vertically as many/''(times as will fit on a page or 4**("screen. Now you }will be asked how 9))(!many records you want across the >((( page and how many lines for eachC(record.H A3}K AM76-@6-% B7-@@Ri) !Records across the page (1-16) ..56-A?} @K6-@W6-@4_6.2i A30W<-@@ < "Each record is 40 characters wide.\z-@}@9 Lines for each record (1-56) ..E6-AO @[6-@2g6-@p6.12z A30a A3f7}6-@6-A(% B7-@@k++(# The following screen is an examplep**("of a completed report sc}reen. You u++(#would be allowed to move around thez))(!screen within the boundaries you /(have selected."6-A}, @/(,,($ The cursor movements are explained ))(!in full in your manual. By using ((( these movements,} the screen will++(#scroll along with you to allow full(access of the screen. A31 +A}1A@'AR@'A @@-@@ &}@-@@!@ & COL: ROW: 6-@86-@ @:, ,@}/%@$ @8-%@$  8-@@!  /-@'@!8  a-@"}A ' Press nter, elete, ist, ove, a  for help or to exit.6-A @B-@ @,} 's Birthday list86-AB @$D-@@. F2..................:6-AD @)8-@}@" F9/../...6-A8 @.9-@@ 9  The prompts for each field are3,,($ommitted from the }report screen, but8++(#you can put them in as text if you =)( would like.6-AP) @B-@"} G A3L76-A6-@d% B7-@@Q%%( You probably noticed severalV++(#prompt}s at the bottom of the reportY,,($screen. If you did not notice, don'tZ))(!worry I will explain each prompt.[6-A} @(`**(" * nter - This allows you to pute))(! text or fields on the j:!( report } screen.-6-A7 @:(o&&( * elete- This allows you tot++(# remove anything from they3( !} screen.&6-A0 @3(~++(# * ove - This allows you to move((( anything you have put"}))(! on the screen, to any ,,($ other place on the screen--(% within the specified ar#}ea. A3%6-@D6-A% B-@@**(" * ist - This allows you to see,,($ $} a list of the fields that++(# you created in your Data9 ( Entry System.,6-A6 %}@9(++(# * help- This allows you to see ++(# a help screen which will++(# explain ab&}out the report2( screen%6-A/ @2())(! * eit - This choice is taken **(" w'}hen you have completed&&( your report screen. A3%6-@6-@% B<-@(}@<(" When the option is selected**("you have the opportunity to insert**("text or a field on your screen)}. To))(!insert text type 't'. To insert a$$(field, type the number that **("corresponds to the field you would*}(like to enter.( **(" If you choose to enter text, you **("will be told the maximum amount of,,($characters+} that can be entered. Then((( type in the text you would like. A3#76-@$6-A(% B7-@,}@(++(# To a field, move the cursor-))(!to a position on top of the field2++(#to be deleted, choose th-}e option,7**("and answer es to the verification<*( question.6-A' @*(A,,($ To move a field posit.}ion the cursorF((( on top of the field to be moved,K**("choose the option, and move the P,,($field using the curso/}r commands. HitU6(return when finished.)6-A3 @6(Z((( The ist, eit, and for help _))(!options 0}can be taken at any time.d((( Simply choose the corresponding i(letter for your choice.n A3s76-@1}6-A% B7-@@x((( Now that  has designed his}((( screen, CodeWriter must be told ''(2}which records to accept for the&&(report. We will assume that ++(#has two classes. So when CodeWriter((( ask3}s 'How many sections for thisA(( report',  would answer two.46-A> @A())(! After the number of se4}ctions has++(been specified,  would then be,,($asked to specify conditions for each%%(section. These condi5}tions are''(specified by using . A376-@6-A2% B7-@@.( 6}Accept if : !6-@u+ @.(,,($ Doesn't this look familiar ? It is ++(#similiar to the 'Reject if' that we7}))(!used in CodeWriter part 1, but it.+(#actually is used quite differently..(((( tells CodeWriter wha8}tD+(#records to evaluate for the report.76-AA @D(**( For instance, if  is making ++(#a list9} of his first class, he would((reply :6-AP% @((='( Accept if : .................36-A= @:}26-@6-@(6.F3='1'2 A300( (0(" F3 is the field in his data-entry(program for cl;}ass time. A3 76-A6-@% B7-@@)( Or ....6-A& @)(++(<} If  wanted a list of students++(#who lived in Chicago, he would type6-A @("='( Accept i=}f : .................36-A= @'86-@6-@.6. F6='CHICAGO'8 A30((( ((( F6 is the f>}ield for city.,,(,( If  wanted a list of all of1>%(his students, he would type :16-A; @>(6='?}( Accept if : .................36-A= @;/6-@6-@%6.ALL/ A30@ A3E76-@}@6-A(% B7-@@w**(" If you wanted to use a date field|%%(to determine which records toA}**("evaluate for the report, you would((( enclose the date in at-signs (@)3(instead of quotes.&6-A0 @B}3(='( Accept if : .................36-A= @?6-@6-@/6. F9=@03/15/63@9 A30C}<(?())(! Field F9 is the birthdate field.((( This will evaluate all%%(records with the Birthdate ofD}( 03/15/63.( A376-A6-@d% B7-@@.+(# One final feature of E} :.(%%( ! Let's say that ,,($would like to have lists of students**("in various cities. Will he F}have to++(#create a DIFFERENT report for each ,,($list ? No, of course not. That would+(( be time consuming and rG}edundant.+())( Instead  can use a variable%%(in his accept if. CodeWriter ++(#automatically detects variaH}bles and**("asks for a prompt. When the report((( is run the user will be asked to*'(input a value for the variaI}ble.*(( For example ... A376-@6-A% B7-@@5( Accept if : F6=VJ}A1(6-A2 @5( ((( This will allow  to input ))(!which city he would like on this ++(#report. SK}o, for a list of different,,($cities, he would simply run the same!C*("report and input different cities.66-AL}@ @C(&,,($ You are allowed to have three types+9 (of variables. They are :,6-Au6 @9(06( * VM}ariable Date - VD (,6-A6 @59 ( * Variable Numeric - VN#(/6-A9 @:7( * Variable Alpha N}- VA!(-6-A7 @?,,($ NOTE - Each abbreviation (VD,VN,VA)D++(# must be followed by a numberI++(# O} from 1 to 30 (VD1, VA2, ...)N A3S76-@6-A2% B7-@@q76-@D6-AP}% B7-@@v((( are a very powerful{++(#tool. Once you become familiar with++(#hoQ}w they operate, you will be able ,,($to create complicated reports easily))(!in a short amount of time. It is **(R}"advised that you read the part in **("the manual about accept if's very ''(well to utilize the power they )(pS}ossess.6-A& @)( A376-@6-A(% B7-@@''( CodeWriter allowT}s you to have ++(#records, a summary, or both printed,,($for each section. A summary consists))(!of totals, minimU}a, maxima, and/or,,($averages for numeric fields that you**("have specified. Summaries are only((( allowed on repV}orts with at least3(one numeric field.&6-A0 @3(,,($ An overall summary is also allowed.((( It wW}ould appear after all of the))(!sections of the report have been ((( printed. Overall summaries have ,,($the sameX} format as section summaries++(#but you are also allowed to include))(!grand totals from your data-entry(progrY}am. A376-@$6-A(% B7-@@<#( That's all there is to it./6-A9 @Z}<( **(" CodeWriter will now take over and++(#create the BASIC program needed for( 's report.(++(# Th[}e final step is to sort the data ''(file. The sort program will run%&&(automatically from the report ***("program \}so you just have to follow/**("the screen instructions on how to 40(run the report.(&6-A0 @9((( ]}The sort program will ask which>++(#field to sort by. You must considerC))(!in what order you would like the H,,($re^}port to appear and enter the fieldM**("number corresponding to the field.R A3W%6-@6-A2% B_}\##( You have completed 'sa((( tutorial for the Report Creationf((( System. Before I leave you, I'llk6(g`}ive you some advice.)6-A3 @6(p++(# * Start Simple - Choose somethingu++(# simple like a}a namez7( list.*6-A4 @7(''( * Start Early - Try a couple ++(# rb}eports before you ))(! have hundreds of ))(! records. You may ''( hc}ave forgotten ;"( something..6-A8 @;(++(# * Practice - Read the manual, try,,($ d} some reports, and do it))(! all again until you ((( get the hang of it.A"e}@6-A% @(2+A% D:TUT1.BAS9-@@"9  to rerun, for menu6-F:Bf}2y,&"@+& @"@A"P A"0"+"% D:AUTORUN.BAS %"@g}6-AP% @ 6-@@"6 , press to continue F:B2y,@A3 $ Cq}1B'DOS SYSB*+DUP SYSB~UTUT1 BASBAUTORUN SYSBTUT2 BASBAUTORUN BASHAR BY CHAR PRINT - .@.@@K: -@B:,* 7<,4 "Ad@er}")@> -@@  H  R  6.@\ $(#76-A6-@% B7-@@s}-#$$( CodeWriter will ask you two2#9 (questions at this point.,6-@u6 @9(7#/,($ 1- How many recordt}s across the page/(<#:!( 2- Lines for each record-6-A7 @:(A#**(" These are two important questionsF#**u}("because they will allow you to setK#$$(the vertical and horizontal P#3)(!boundaries of your report screen.3 A3v}S#76-A6-@d% B7-@@U#**(" The first question allows you to Z#,,($set the width of eachw} record on your_#++(#report screen. The number that you d#,,($input, let's say NR, is then used ini#((( the formula WIDx}TH=80 / NR. This n#((( determines the maximum number ofs#**("characters across allowed for eachx#,,($record on the repoy}rt. The number NR }#((( also determines how many records#*'(will be shown across the page. *(#6-A @z}#!( Here's an example :!(#))(! If you answer 2 to the question,#++(#you will get two records across the#$$({}page. Each record will be 40#(characters wide.# A3#76-@D6-A% B7-@@#--|}(% The question, lines for each record,#$$(will determine the number of#,,($vertical characters for each record.#))}}(!It also determines the number of #))(!records that will appear down the#++(#page. Each page is 56 lines long so#,,~}($the number you enter will be divided#%%(into 56 to determine how many#-*("records will appear down the page.-(#}6-A @#5( Here's an example :(6-A2 @5(#))(! If you chose to have 8 lines per#++(#re}cord, 7 records would appear down#((( the page. If you have 2 records #**("across and 7 down, you get a total#""(of} 14 records on the page.# A3'6.BCDFGHJKLMNPRSTVWXZ'6.AEIOUY'1167@,.7P:H:,$@%@},,'1167@,.7P:H:,$@%@,,$'1167@,.7P:H:,$@%@,,)'1167@,.7P:}'( APOKMOVTEMPMBASPL2Z((A''ARBBs@@} h B(H B1 @ BsDB5@@ISAVE "D:AUTORUN.BAS  } }AP +AR@-@@&& )) ! | } |#)) ! | |()) ! | 1-Data Entry System |-)) ! | } |2)) ! | 2-Report Creation System |7)) ! | |<)) ! | 3-Demo } |A)) ! | |F)) ! | Enter Choice |H)) ! }J @K@@.@@K:@ARP+-@%@( +)@}U*@Z!! @I)!@Q@] @ AR@_"@IAa"@PA}b"@QAd.-@@. eARf% D:TUT1.BASi3-@}@3 jARk% D:TUT2.BASn!-@@! sAR}uAp@w% D:TUT1.BASLIST "D:INTRO.LSTATARI TUTORIALCONVERTED BY JOHN BLUME!!DY}NATECH MICROSOFTWARE INC.&&;@@,;@%,;@9, AU  AUp; +@A)@};A @B2V@6-F:A,&@6-AV$+%@+%@}++6-?:C:,<%@<%@<A,YY6-?:C:,<BBy<<AY<@F<B2w<@<A<A6<A}<A6,?%A?6-?:C:,<%A<%A<A(,?%A@?6-?:C:,<%A@<%A}A<A(, 6.#ode7riter%6-@6-@% AT6. 4utorialfor(%6-@6-@0}% AT26.!tari<%6-@6-@P% ATFINTRO SCREENP-@AZ76-P:H:},$A ,76-P:H:,$A`,d ,n xAA@UB2W@6-}AP6-@`((6-?:C:,:,- }$&&0,0,0,0,0,6,4,124,252,120,12,6,0 D:AUTORUN.BAS(A''ARBBs@@=-@@>67,.>:@:7<,,%A(,> >$ D:TUT1.BASCRVNICOH:,$@%@,,.'1167@,.7P:H:,$@%@,,3' B`* }*AA}+$>INVERSE ϛ>-@@>67,.>:@:7<,,%A(,> >$ D:TUT2.BASU @p,;@9, AU  AUp; +@A)@;A @B2V@}6-F:A,&@6-AV$+%@+%@++6-?:C:,<%@<%@<A,}YY6-?:C:,<BBy<<AY<@F<B2w<@<A<A6<A<A6,?%A?6-?:C:,<}%A<%A<A(,?%A@?6-?:C:,<%A@<%AA<A(, 6.#ode7riter%6}-@6-@% AT6. 4utorialfor(%6-@6-@0% AT26.!tari<%6-@6}-@P% ATFINTRO SCREENP-@AZ76-P:H:,$A ,76-P:H:,$A`,d ,n} xAA@UB2W@6-AP6-@`((6-?:C:,:,- $&&0,0,0,0,0,6,4,124,252,120,12,6,0 D}:MENU.BAS% 7 APOKMOVTEMPMBASPL2Z((A''ARBB @`@