| Home CBM ASCII-X BASIC Disk Commands Enter RUN mode Program Format Secret Variables Variable Format Expressions Keywords (divide) (equal) (less) (minus) (more) (multiply) (plus) (power) Abs And Append Asc Atn Auto Backup Bank Begin Bend Bload Boot Box Bsave Bump Catalog Char Chr Circle Close Clr Cmd Collect Collision Color Concat Cont Copy Cos Data Dclear Dclose Dec Def Delete Dim Directory Dispose Dload Do Dopen Draw Ds Ds string Dsave Dverify El Else End Envelope Er Err Exit Exp Fast Fetch Filter Fn For Fre Get Get num Getkey Go Gosub Goto Graphic Gshape Header Help Hex If Input Input num Instr Int Joy Key Left Len Let List Load Locate Log Loop Mid Monitor Movspr New Next Not Off On Open Or Paint Peek Pen Pi Play Pointer Poke Pos Pot Print num Pudef Quit Rclr Rdot Read Record Rem Rename Renumber Restore Resume Return Rgr Right Rlum Rnd Rreg Rspcolor Rsppos Rsprite Run Rwindow Save Scale Scnclr Scratch Sgn Sin Sleep Slow Sound Spc Sprcolor Sprdef Sprite Sprsav Sqr Sshape St Stash Step Stop Str Swap Sys Tab Tan Tempo Then Ti Ti string To Trap Troff Tron Until Using Usr Val Verify Vol Wait While Width Window Xor Syntax Tokens C128 D64plus Disk Escape Codes Hardware PCxface PETSCII Pet2asc Futurama IBM PC-AT Contact Games Glossary Hall of fame Hall of shame Miscellaneous Privacy policy Programming Twisty puzzles |
CLOSE fileNumber [ , deviceNumber [ , flags [ , commandString ] ] ]
Close an open "file".
The CLOSE statement should be used after all communication has ended following a previous OPEN. For most devices, CLOSE will flush any buffer. Failure to use CLOSE often results in corrupt "files" due to the final bytes (whatever is buffered) not being flushed. Note the BASIC command CLR (which is called by NEW, RUN, and in direct mode, LOAD) commits this dangerous mistake! The deviceNumber, flags, and commandString can have any value of the appropriate type. They are (generally) ignored. However, if their type is wrong, a TYPE MISMATCH ERROR is generated, and otherwise if the values are not legal (see table above) an ILLEGAL QUANTITY ERROR occurs. CLOSE will silently "succeed" if fileNumber refers to a file that was never opened. If the fileNumber refers to an RS-232(C) device of a previous OPEN statement (regardless of this statement's deviceNumber) then any/all character(s) buffered for output will be "lost"; you have to check a secret variable to determine if the transmit buffer is empty (see ST). CLOSE will also de-allocate RS-232(C) buffers on most systems. Most printers (both IEEE/IEC bus and RS-232) buffers data by line. You often need to use an "empty" PRINT# to flush the line they have buffered. Examples:
© H2Obsession, 2014 |