Post Reply 
(HP71B) Speed experience with Video (EMU71 and Video80 screen)
11-15-2023, 03:06 PM
Post: #19
RE: (HP71B) Speed experience with Video (EMU71 and Video80 screen)
(11-15-2023 11:32 AM)floppy Wrote:  
(11-03-2023 06:45 PM)Sylvain Cote Wrote:  904 SEND UNT UNL LISTEN A MTA DATA B$ UNT UNL
I never had controlled an IL device with such method. However, I suppose it will accelerate the video rendering of the current Forth programms I made (clock and snake): looping continuously with the word EMIT is probably not the quickest method (HP-71 SoftDevHandbook chapter 15.7)

(11-15-2023 11:32 AM)floppy Wrote:  I see you use a buffering.
Unless specified otherwise, BASIC is passing variable by reference, so B$ is a reference to the string variable of the caller.

(11-15-2023 11:32 AM)floppy Wrote:  Is the Video command buffer B$ sensitive to blanks in the middle ?
I do not understand that question, the video interface will interprete and/or output any string it receives.

(11-15-2023 11:32 AM)floppy Wrote:  However, I suppose it will accelerate the video rendering of the current Forth programms I made (clock and snake): looping continuously with the word EMIT is probably not the quickest method (HP-71 SoftDevHandbook chapter 15.7)
The video interface is a remote display, so it is slow.
The HP-71B is also slow and sometime slower that the external interface.
To get the feastest speed possible, you need to do the following:
  • read the video interface manual
  • try the different escape sequences until you completely understand the behavior of the interface
  • organize you code to minimize the bytes that need to be sent to the interface
  • organize you code to minimize the string generation time on the 71B
I am using the HP-IL protocol directly in my VIDEO2 program, you can replace it with high level BASIC commands, add/replace the following lines:

add these configuration lines
Code:
 15 DISPLAY IS * @ PRINTER IS :A @ PWIDTH INF
Code:
193 PRINTER IS *

and the SEND replacement
Code:
904 PRINT B$;

Example: the following example generate the same set of HP-IL messages

SEND UNL LISTEN 1 MTA DATA "HELLO!" UNT UNL
or
PRINT "HELLO!";
(assuming: PRINTER IS :1 @ PWIDTH INF)

Code:
UNL    (43F)  unlisten
RFC    (500)  ready for command
LAD 01 (421)  listen address 1
RFC    (500)  ready for command
UNT    (45F)  untalk
RFC    (500)  ready for command
DAB 48 (048)  data byte 'H'
DAB 45 (045)  data byte 'E'
DAB 4C (04C)  data byte 'L'
DAB 4C (04C)  data byte 'L'
DAB 4F (04F)  data byte 'O'
DAB 21 (021)  data byte '!'
UNT    (45F)  untalk
RFC    (500)  ready for command
UNL    (43F)  unlisten
RFC    (500)  ready for command

Sylvain Côté
Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
RE: (HP71B) Speed experience with Video (EMU71 and Video80 screen) - Sylvain Cote - 11-15-2023 03:06 PM



User(s) browsing this thread: 3 Guest(s)