; Teletext "cnn_news" script.
;

; select satellite decoder
channel(5)
poll_now()

; now we want to receive CNN
.isitcnn
  channelid(A)
  if (A ! &804F) message("Please set satellite receiver to CNN (channel 1)")
  if (A ! &804F) go("isitcnn")

; Entertainment news (weekends only; unless ALT was held from before)
set A to 101
.getent
  getframe(A)
  A++
  if (A [ 111) go("getent")
getframes(178)
.skipent

; now we have all the frames, let's generate ourselves a document
poll_nomessages()
poll_disable()

filewrite("<Teletext$Temp>.Report")
filewriteovnhead()
filewritestring("{align 1}") ; make it all centred

; NEWS

; ENTERTAINMENT HEADLINES
filewritestring("{newpara}{textsize 16000}{bold 1}{underline 1}")
filewritebyte(34)
filewritestring("News headlines")
filewritebyte(34)
filewritestring("{bold 0}{underline 0}{textsize 12000}")
filewritebyte(34)
filewritestring(" (from CNN)")
filewritebyte(34)
filewritebyte(10)
filewritestring("{textsize}{bold}{underline}{newpara}")
appendframe(130, 3)

; M should still be the day number... (weekends only, unless ALTed)
set A to 101
.write
  appendframe(A, 3)
  A++
  if (A [ 111) go("write")

; QUOTE
filewritestring("{newpara}{textsize 16000}{bold 1}{underline 1}")
filewritebyte(34)
filewritestring("Quote for the day")
filewritebyte(34)
filewritestring("{bold 0}{underline 0}{textsize 12000}")
filewritebyte(34)
filewritestring(" (from CNN)")
filewritebyte(34)
filewritebyte(10)
filewritestring("{textsize}{bold}{underline}{newpara}")
appendframe(178, 3)

; tidy up
filewriteovntail()
fileclose()
filetype("<Teletext$Temp>.Report", &B25)
oscall("Filer_Run <Teletext$Temp>.Report")

; we're done
terminate()
