/******************************* PRE6 ******************************/
/*       I2ICE TUTORIAL MODULES G, H and J PREREQUISITE LOADER     */
/*******************************************************************/
menu = 1
cls
write screen (15t,5t) '        Loading Module prerequisites '
write screen (15t,6t) '---------------------------------------------'

write screen (15t,8t) 'Defining procedure IOPROC '
define proc IOPROC = do
  define char io_char
  if %1 then
    io_char = ci
    portdata = io_char
  else
    io_char = portdata
    write using ('0,>') io_char
  end
end






write screen (15t,9t) 'Defining procedure PATCH_AID'
define proc patch_aid = do
sasm 0h:1000h = 'mov,ax,word .:cmaker.get_input.value',
 'mov dx,00ah',
 'mul dx',
 'mov word .:cmaker.get_input.value,ax',
 'mov dl,byte .:cmaker.get_input.char',
 'mov dh,0',
 'add ax,dx',
 'mov cl,30h',
 'mov ch,0',
 'sub ax,cx',
 'mov word .:cmaker.get_input.value,ax',
 'jmp far :cmaker#74'
end

write screen (15t,10t) 'Setting MAP to "0 length 3K HS" '
reset map
map 0 length 3k hs
write screen (15t,11t)'Setting MAPIO to "0 length 40H ICE (IOPROC)" '
reset mapio
mapio 0 length 40H ice (ioproc)
write screen (15t,12t)'Setting BASE to hexadecimal '
base=16t
write screen (15t,13t)'Loading CMKER2.ABS '
load cmker2.abs
write screen (15t,14t)'Defining TOP = $ '
define pointer top = $
write screen (15t,15t)'Setting NAMESCOPE to :CMAKER '
namescope = :cmaker
write screen (15t,16t)'Defining literally CM = :CMAKER '
define literally cm = ':cmaker'

write screen (29t,18t)'LOADING COMPLETE'
write screen (15t,19t)'-------Press the space bar to continue-------'
define char reply = ci
remove reply
cls
GTS  /* go to first screen of module */
