!Teletext Script
Annotated version of 'bbcnewswhizz2'

 

As for 'bbcnews', this script was written in January 2002.

This is exactly the same as bbcnewswhizz, except we disable polling while processing. Sadly, I do not have any time statistics for this...

; Script to fetch news articles on BBC ceefax, in whizz time!

¤script "bbcnewswhz"

set A to status(scriptver)
if(A < 105) error("Script interpreter is too old, please upgrade to a newer version of !Teletext.")

channel(1)

getframe(100)
set A to status(pagefound)
if (A ! 1) error("Timed out trying to fetch page - is antenna connected?")

set A to 104
set E to 109

.fetchloop
  getframe(A)
  set F to A
  add(F, 5)
  getframe(F)
  add(F, 5)
  getframe(F)
  add(F, 5)
  getframe(F)
  A++
  if(A [ E) go("fetchloop")

set A to 104
set E to 124
And here's the difference...
poll_nomessages()
poll_disable()
poll_now() ; to ensure status window is removed
(that's all folks!)
.processloop
  set B to 1
  selectframe(A)
  set C to 1
  .omittop
    omitline(C)
    C++
    if(C [ 5) go("omittop")
  set C to 22
  .omitend
    omitline(C)
    C++
    if(C [ 25) go("omitend")
  storeframe()
  A++
  if(A [ E) go("processloop")

filewrite("<Teletext$Temp>.bbcnews")
set A to 104
set E to 124
.outputframes
  appendframe(A, 2)
  filewritebyte(10)
  filewritebyte(10)
  A++
  if(A [ E) go("outputframes")
fileclose()
filetype("<Teletext$Temp>.bbcnews", &FFF)
oscall("%Filer_Run <Teletext$Temp>.bbcnews")

terminate()

Return to !Teletext index
Copyright © 2003 Richard Murray