--- title: "DATASAVE" id: 76391 type: "computer_media" slug: "datasave" url: "http://localhost/computer_media/datasave/" markdown_url: "http://localhost/computer_media/datasave.md" published_at: "2026-11-11T08:02:47+00:00" modified_at: "2026-11-11T08:02:47+00:00" author: "David Anderson" featured_image: url: "http://localhost/wp-content/uploads/2026/11/datasave-1.png" excerpt: "Save any block of memory to tape and load it back anywhere, with a machine-code routine called from BASIC." post_tag: - name: "Downloadable" slug: "downloadable" taxonomy: "post_tag" url: "http://localhost/tag/downloadable/" - name: "TS 1000" slug: "ts1000" taxonomy: "post_tag" url: "http://localhost/tag/ts1000/" - name: "ZX81" slug: "zx81" taxonomy: "post_tag" url: "http://localhost/tag/zx81/" model: - name: "Sinclair ZX81" slug: "zx81" taxonomy: "model" url: "http://localhost/model/zx81/" - name: "Timex/Sinclair 1000" slug: "ts-1000" taxonomy: "model" url: "http://localhost/model/ts-1000/" indiv: - name: "Ron Charlton" slug: "ron-charlton" taxonomy: "indiv" url: "http://localhost/indiv/ron-charlton/" genre: - name: "Utility" slug: "utility" taxonomy: "genre" url: "http://localhost/type/utility/" media_type: "Program" programmers: - name: "Ron Charlton" slug: "ron-charlton" taxonomy: "indiv" url: "http://localhost/indiv/ron-charlton/" download_url: "https://archive.org/download/timex-sinclair-software-archive/DATASAVE%20%281984%29%28Charlton%2C%20Ron%29%28TS1000%29%28US%29%28Program%29.zip" mediadate: "1984" images: - url: "http://localhost/wp-content/uploads/2026/11/datasave-1.png" article_media: - id: 19931 title: "Datasave – Files Without Programs" type: "article" url: "http://localhost/article/datasave-files-without-programs/" media_type_tags: "Utility" license: false --- # DATASAVE A machine-code utility that saves and loads data, not programs. Set S to the start address and E to the end of the memory you want, then RAND USR 16514 saves it to tape and RAND USR 16543 loads it back, to the same place or anywhere else. It uses the ROM’s tape routines, needs no file name, and loads the first block it finds, so a program can save its data, load it back later and carry on. Set RAMTOP below the area you use. The routine lives in a REM in line 1. The article has you type a REM of 155 A’s and a loader, POKE in the numbers of Listing 2 and then delete everything but line 1. The download is that line 1 plus the example from Listing 5, which saves the top 1024 bytes of a 16K machine. The article lists three error reports the routine can give, and notes that POKE 16667,0 and POKE 16668,0 restore the Syntactic Sum after use. Published in Syntax August 1984 ([Datasave – Files Without Programs](https://timexsinclair.com/article/datasave-files-without-programs/)). ## Source Code ``` 1 REM AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 5 REM SAVE TOP 1024 BYTES 10 LET S=31744 20 LET E=32767 30 RAND USR 16514 ```