--- title: "Screen Display Storage and Memory Relocate" type: "article" slug: "screen-display-storage-and-memory-relocate-2" url: "http://localhost/article/screen-display-storage-and-memory-relocate-2/" markdown_url: "http://localhost/article/screen-display-storage-and-memory-relocate-2.md" published_at: "2022-10-07T12:26:18+00:00" modified_at: "2026-08-01T01:12:33+00:00" featured_image: url: "http://localhost/wp-content/uploads/2022/04/20230809-041332.jpg" excerpt: "The following is a routine that will work on the TS 2068, and with address modifications, on the IS 1000. You can save screen displays, or use it to relocate a program in memory from one address to another. The program as it is written here, will allow three screen displays to be stored and…" category: - name: "LISTing Newsletter" slug: "listing-newsletter" taxonomy: "category" url: "http://localhost/category/periodicals/listing-newsletter/" post_tag: - name: "Best of Timex/Sinclair 2068 Articles and Documents" slug: "ts2068best" taxonomy: "post_tag" url: "http://localhost/tag/ts2068best/" - name: "TS 2068" slug: "ts2068" taxonomy: "post_tag" url: "http://localhost/tag/ts2068/" - name: "Type-in program" slug: "type-in-program" taxonomy: "post_tag" url: "http://localhost/tag/type-in-program/" model: - name: "Timex/Sinclair 2068" slug: "ts-2068" taxonomy: "model" url: "http://localhost/model/ts-2068/" indiv: - name: "Dennis Jurries" slug: "dennis-jurries" taxonomy: "indiv" url: "http://localhost/indiv/dennis-jurries/" publication_r: id: 38992 title: "LISTing Newsletter" type: "periodical" url: "http://localhost/periodical/listing-newsletter/" authors: "Dennis Jurries" authors_r: - name: "Dennis Jurries" slug: "dennis-jurries" taxonomy: "indiv" url: "http://localhost/indiv/dennis-jurries/" issues_articles: - id: 40200 title: "LISTing Newsletter November 1991" type: "issue" url: "http://localhost/issue/listing-newsletter-november-1991/" pages: "10" pubdate: "November 1991" archive_link: false --- The following is a routine that will work on the TS 2068, and with address modifications, on the IS 1000. You can save screen displays, or use it to relocate a program in memory from one address to another. The program as it is written here, will allow three screen displays to be stored and recalled in approximately 0.04 seconds. The screen display on the TS 2068 is located at adress 16384 and takes up 6912 bytes of memory. #### Machine code loader and MC ``` 5 CLEAR 44609 10 FOR i=44610 TO 44629 15 READ x: POKE i,x: NEXT i 20 DATA 33,0,64,17,86,174,24,6,33,86,174,17,0,64,1,0, 27,237,176,201 ``` RUN and DELETE 5,20 If you wish to allow space for more, the two 174’s in line 20 will have to be reduced by 27 for each extra screen display, and the addresses in lines 5 and 10 will have to be reduced by 6912 for each extra screen. Be sure to check to see if you have enough memory to add the extra screens. Load in or design the first screen display. Type RAND USR 44610 and press ENTER to store the first screen. POKE 44615,201 for the second screen display set up. Load in or design your second screen display. Press RAND USR 44610 and ENTER to store the second screen. To set up for the third screen display, type POKE 44616,226. LOAD in or design your third screen display. Press RAND USR 44610 and ENTER to store the third screen. The USR addresses will change by 6912 for each screen display over the three set up here. To recover your screen displays: - POKE 44620,174 for screen #1 - POKE 44620,201 for screen #2 - POKE 44620,228 for screen #3 and press RAND USR 44618. For any extra screens, change address 44616 to 6912 less than 44618 for each extra screen, and the same for address 44620. The value of the number poked into address 44620 changes by 27 for each screen, and will also do so for any extra screen displays. To save your screen displays, press SAVE “name”“CODE 44610,20756. If more than three screen displays are to be saved, then change the first number after the CODE to the new starting address, and add 6912 times the number if screens in excess of the three to the second number. #### OP-CODES for Machine Code ``` 44610 LD HL,16384 44613 LD DE,44630 44616 JR 6 41618 LD HL,44630 44621 LD DE,16384 44624 LD BE,6912 44627 LDIR 44629 RET ```