;Assembler header file for PDriver
;written by DefMod (Dec 31 2005) on Sat Dec 31 14:11:42 2005
;Jonathan Coxhead, jonathan@doves.demon.co.uk, 19 May 1995

        [       :LNOT: :DEF: PDriver_Hdr
        GBLS    PDriver_Hdr

        [       :LNOT: :DEF: Get_Types
        GBLS    Get_Types
        ]
        [       :LNOT: :DEF: Types_Hdr
Get_Types                       SETS    "GET oslib/Types.Hdr"
        |
Get_Types                       SETS    ""
        ]
        $Get_Types

        [       :LNOT: :DEF: Get_OS
        GBLS    Get_OS
        ]
        [       :LNOT: :DEF: OS_Hdr
Get_OS                          SETS    "GET oslib/OS.Hdr"
        |
Get_OS                          SETS    ""
        ]
        $Get_OS

        [       :LNOT: :DEF: Get_Wimp
        GBLS    Get_Wimp
        ]
        [       :LNOT: :DEF: Wimp_Hdr
Get_Wimp                        SETS    "GET oslib/Wimp.Hdr"
        |
Get_Wimp                        SETS    ""
        ]
        $Get_Wimp

        [       :LNOT: :DEF: Get_Draw
        GBLS    Get_Draw
        ]
        [       :LNOT: :DEF: Draw_Hdr
Get_Draw                        SETS    "GET oslib/Draw.Hdr"
        |
Get_Draw                        SETS    ""
        ]
        $Get_Draw

        [       :LNOT: :DEF: Get_Font
        GBLS    Get_Font
        ]
        [       :LNOT: :DEF: Font_Hdr
Get_Font                        SETS    "GET oslib/Font.Hdr"
        |
Get_Font                        SETS    ""
        ]
        $Get_Font

        [       :LNOT: :DEF: Get_MessageTrans
        GBLS    Get_MessageTrans
        ]
        [       :LNOT: :DEF: MessageTrans_Hdr
Get_MessageTrans                SETS    "GET oslib/MessageTrans.Hdr"
        |
Get_MessageTrans                SETS    ""
        ]
        $Get_MessageTrans

        [       :LNOT: :DEF: Get_JPEG
        GBLS    Get_JPEG
        ]
        [       :LNOT: :DEF: JPEG_Hdr
Get_JPEG                        SETS    "GET oslib/JPEG.Hdr"
        |
Get_JPEG                        SETS    ""
        ]
        $Get_JPEG

;Symbols for constants
PDriver_OSUnit                  *       400
PDriver_Inch                    *       72000
PDriver_Point                   *       1000
PDriver_TypePS                  *       &0
PDriver_TypeDM                  *       &1
PDriver_TypeLJ                  *       &2
PDriver_TypeIX                  *       &3
PDriver_TypeFX                  *       &4
PDriver_TypeLZ                  *       &5
PDriver_TypeLB                  *       &6
PDriver_TypeUF                  *       &7
PDriver_TypeJX                  *       &63
PDriver_TypePJ                  *       &63
PDriver_FeatureColour           *       &1
PDriver_FeatureLimitedColours   *       &2
PDriver_FeatureDiscreteColours  *       &4
PDriver_FeatureOutlinesOnly     *       &100
PDriver_FeatureThinLinesOnly    *       &200
PDriver_FeatureNoOverwrite      *       &400
PDriver_FeatureTrfmSprite       *       &800
PDriver_FeatureTrfmFont         *       &1000
PDriver_FeatureDrawPageFlags    *       &2000
PDriver_FeatureScreenDump       *       &1000000
PDriver_FeatureGeneralTrfm      *       &2000000
PDriver_FeatureInsertIllustration *       &4000000
PDriver_FeatureMiscOp           *       &8000000
PDriver_FeatureSetDriver        *       &10000000
PDriver_FeatureDeclareFont      *       &20000000
PDriver_NoDownload              *       &1
PDriver_Kerned                  *       &2
PDriver_FontResident            *       &1
PDriver_FontDownload            *       &2
PDriver_FontDownloaded          *       &4
PDriver_FontOverwrite           *       &1
Error_PDriverBadFeatures        *       &5C0
Error_PDriverNoCurrentSprite    *       &5C1
Error_PDriverNoJobSelected      *       &5C2
Error_PDriverNoSuchJob          *       &5C3
Error_PDriverNoCurrentPage      *       &5C4
Error_PDriverPrintingPage       *       &5C5
Error_PDriverInvalidCopies      *       &5C6
Error_PDriverCannotHandle       *       &5C7
Error_PDriverBadHalftone        *       &5C8
Error_PDriverCancelled          *       &5C9
Error_PDriverSingularMatrix     *       &5CA
Error_PDriverBadRectangle       *       &5CB
Error_PDriverRectanglesMiss     *       &5CC
Error_PDriverNoFreeMemory       *       &5CD
Error_PDriverNotOnePage         *       &5CE
Error_PDriverInUse              *       &5CF
Error_PDriverOverflow           *       &5D0
Error_PDriverBadMiscOp          *       &5D1
Error_PDriverNoDuplicates       *       &5D2
Error_PDriverNoCurrentDriver    *       &5D3
Error_PDriverUnknownNumber      *       &5D4
Error_PDriverDuplicateNumber    *       &5D5
Error_PDriverBadSetPrinter      *       &5D6
Message_PrintFile               *       &80140
Message_WillPrint               *       &80141
Message_PrintSave               *       &80142
Message_PrintInit               *       &80143
Message_PrintError              *       &80144
Message_PrintTypeOdd            *       &80145
Message_PrintTypeKnown          *       &80146
Message_SetPrinter              *       &80147
Message_PrintInit2              *       &80148
Message_PrintConfigure          *       &8014A
Message_PrintInterrogate        *       &8014B
Message_PSPrinterQuery          *       &8014C
Message_PSPrinterAck            *       &8014D
Message_PSPrinterModified       *       &8014E
Message_PSPrinterDefaults       *       &8014F
Message_PSPrinterDefaulted      *       &80150
Message_PSPrinterNotPS          *       &80151
Message_ResetPrinter            *       &80152
Message_PSIsFontprintRunning    *       &80153
PDriver_ConfigurePaperSizes     *       &0
PDriver_InterrogateSettings     *       &0
PDriver_DrawCopyCount           *       &FFFFFF
PDriver_DrawMayPrescan          *       &1000000

;Symbols for structure offsets and sizes
                                ^       0
                                #       Int
PDriver_Type                    *       @

                                ^       0
                                #       Bits
PDriver_Features                *       @

                                ^       0
                                #       Bits
PDriver_FontFlags               *       @

                                ^       0
                                #       Bits
PDriver_FontMapFlags            *       @

                                ^       0
                                #       Bits
PDriver_FontAddFlags            *       @

                                ^       0
                                #       Bits
PDriver_EnumerateFlags          *       @

                                ^       0
                                #       Int
PDriver_ConfigureReason         *       @

                                ^       0
                                #       Int
PDriver_InterrogateReason       *       @

                                ^       0
PDriver_MessagePrintError_errnum #       Int
PDriver_MessagePrintError_errmess #       232*Char
PDriver_MessagePrintError       *       @

                                ^       0
PDriver_MessagePrintTypeOdd_pad #       20*Byte
PDriver_MessagePrintTypeOdd_file_type #       Bits
PDriver_MessagePrintTypeOdd_file_name #       212*Char
PDriver_MessagePrintTypeOdd     *       @

                                ^       0
PDriver_MessagePrintConfigure_reason #       PDriver_ConfigureReason
PDriver_MessagePrintConfigure_data *       @
PDriver_MessagePrintConfigure_data_filename #       Ptr
PDriver_MessagePrintConfigure   *       @

                                ^       0
PDriver_MessagePrintInterrogate_reason #       PDriver_InterrogateReason
PDriver_MessagePrintInterrogate_data *       @
PDriver_MessagePrintInterrogate_data_settings_printer_id #       Int
PDriver_MessagePrintInterrogate_data_settings_palette_number #       Int
PDriver_MessagePrintInterrogate_data_settings_options #       Int
PDriver_MessagePrintInterrogate_data_settings_resolution #       OS_Coord
PDriver_MessagePrintInterrogate_data_settings_flags #       Bits
PDriver_MessagePrintInterrogate_data_settings_mode_name #       208*Char
PDriver_MessagePrintInterrogate *       @

                                ^       0
PDriver_MessagePSPrinterQuery_buffer #       Ptr
PDriver_MessagePSPrinterQuery_size #       Int
PDriver_MessagePSPrinterQuery   *       @

                                ^       0
PDriver_FullMessagePrintError   Wimp_MessageHeader_MEMBERS
PDriver_FullMessagePrintError_errnum #       Int
PDriver_FullMessagePrintError_errmess #       232*Char
PDriver_FullMessagePrintError   *       @

                                ^       0
PDriver_FullMessagePrintTypeOdd Wimp_MessageHeader_MEMBERS
PDriver_FullMessagePrintTypeOdd_pad #       20*Byte
PDriver_FullMessagePrintTypeOdd_file_type #       Bits
PDriver_FullMessagePrintTypeOdd_file_name #       212*Char
PDriver_FullMessagePrintTypeOdd *       @

                                ^       0
PDriver_FullMessagePrintConfigure Wimp_MessageHeader_MEMBERS
PDriver_FullMessagePrintConfigure_reason #       PDriver_ConfigureReason
PDriver_FullMessagePrintConfigure_data *       @
PDriver_FullMessagePrintConfigure_data_filename #       Ptr
PDriver_FullMessagePrintConfigure *       @

                                ^       0
PDriver_FullMessagePrintInterrogate Wimp_MessageHeader_MEMBERS
PDriver_FullMessagePrintInterrogate_reason #       PDriver_InterrogateReason
PDriver_FullMessagePrintInterrogate_data *       @
PDriver_FullMessagePrintInterrogate_data_settings_printer_id #       Int
PDriver_FullMessagePrintInterrogate_data_settings_palette_number #       Int
PDriver_FullMessagePrintInterrogate_data_settings_options #       Int
PDriver_FullMessagePrintInterrogate_data_settings_resolution #       OS_Coord
PDriver_FullMessagePrintInterrogate_data_settings_flags #       Bits
PDriver_FullMessagePrintInterrogate_data_settings_mode_name #       208*Char
PDriver_FullMessagePrintInterrogate *       @

                                ^       0
PDriver_FullMessagePSPrinterQuery Wimp_MessageHeader_MEMBERS
PDriver_FullMessagePSPrinterQuery_buffer #       Ptr
PDriver_FullMessagePSPrinterQuery_buffer_size #       Int
PDriver_FullMessagePSPrinterQuery *       @

                                ^       0
                                #       Bits
PDriver_InfoType                *       @

                                ^       0
                                #       Bits
PDriver_DrawFlags               *       @

                                ^       0
PDriver_ConfigurationInfo_entry_count #       Int
PDriver_ConfigurationInfo_block_size #       Int
PDriver_ConfigurationInfo_entry_offsets #       20*Int
PDriver_ConfigurationInfo_data  #       Char
PDriver_ConfigurationInfo       *       @
        
        MACRO
$label                          PDriver_ConfigurationInfo_MEMBERS
$label._entry_count             #       Int
$label._block_size              #       Int
$label._entry_offsets           #       20*Int
        MEND
        
                                ^       0
PDriver_ConfigurationInfoBase   PDriver_ConfigurationInfo_MEMBERS
PDriver_ConfigurationInfoBase   *       @


;Symbols for SWI's and SWI reason codes
XPDriver_Info                   *       &A0140
PDriver_Info                    *       &80140
   ;Exit
   ;  R0 = type (PDriver_InfoType)
   ;  R1 = xres (Int)
   ;  R2 = yres (Int)
   ;  R3 = features (PDriver_Features)
   ;  R4 -> desc (String)
   ;  R5 = halftone_xres (Int)
   ;  R6 = halftone_yres (Int)
   ;  R7 = printer (Int)

XPDriver_SetInfo                *       &A0141
PDriver_SetInfo                 *       &80141
   ;Entry
   ;  R1 = xres (Int)
   ;  R2 = yres (Int)
   ;  R3 = features (PDriver_Features)
   ;  R4 -> printer_name (String)
   ;  R5 = halftone_xres (Int)
   ;  R6 = halftone_yres (Int)
   ;  R7 = printer (Int)

XPDriver_CheckFeatures          *       &A0142
PDriver_CheckFeatures           *       &80142
   ;Entry
   ;  R0 = features (PDriver_Features)
   ;  R1 = value (PDriver_Features)

XPDriver_PageSize               *       &A0143
PDriver_PageSize                *       &80143
   ;Exit
   ;  R1 = xsize (Int)
   ;  R2 = ysize (Int)
   ;  R3 = left (Int)
   ;  R4 = bottom (Int)
   ;  R5 = right (Int)
   ;  R6 = top (Int)

XPDriver_SetPageSize            *       &A0144
PDriver_SetPageSize             *       &80144
   ;Entry
   ;  R1 = xsize (Int)
   ;  R2 = ysize (Int)
   ;  R3 = left (Int)
   ;  R4 = bottom (Int)
   ;  R5 = right (Int)
   ;  R6 = top (Int)

XPDriver_SelectJob              *       &A0145
PDriver_SelectJob               *       &80145
   ;Entry
   ;  R0 = job (OS_F)
   ;  R1 -> title (String)
   ;Exit
   ;  R0 = old_job (OS_F)
   ;  R7 corrupted

XPDriver_SelectJobW             *       &A0145
PDriver_SelectJobW              *       &80145
   ;Entry
   ;  R0 = job (OS_FW)
   ;  R1 -> title (String)
   ;Exit
   ;  R0 = old_job (OS_FW)
   ;  R7 corrupted

XPDriver_CurrentJob             *       &A0146
PDriver_CurrentJob              *       &80146
   ;Exit
   ;  R0 = job (OS_F)

XPDriver_CurrentJobW            *       &A0146
PDriver_CurrentJobW             *       &80146
   ;Exit
   ;  R0 = job (OS_FW)

XPDriver_FontSWI                *       &A0147
PDriver_FontSWI                 *       &80147

XPDriver_EndJob                 *       &A0148
PDriver_EndJob                  *       &80148
   ;Entry
   ;  R0 = job (OS_F)

XPDriver_EndJobW                *       &A0148
PDriver_EndJobW                 *       &80148
   ;Entry
   ;  R0 = job (OS_FW)

XPDriver_AbortJob               *       &A0149
PDriver_AbortJob                *       &80149
   ;Entry
   ;  R0 = job (OS_F)

XPDriver_AbortJobW              *       &A0149
PDriver_AbortJobW               *       &80149
   ;Entry
   ;  R0 = job (OS_FW)

XPDriver_Reset                  *       &A014A
PDriver_Reset                   *       &8014A

XPDriver_GiveRectangle          *       &A014B
PDriver_GiveRectangle           *       &8014B
   ;Entry
   ;  R0 = id (Int)
   ;  R1 -> rect (OS_Box)
   ;  R2 -> trfm (OS_HomTrfm)
   ;  R3 -> pos (OS_Coord)
   ;  R4 = bg (OS_Colour)

XPDriver_DrawPage               *       &A014C
PDriver_DrawPage                *       &8014C
   ;Entry
   ;  R0 = copies_and_flags (PDriver_DrawFlags)
   ;  R1 = rect (pointer to OS_Box)
   ;  R2 = page (Int)
   ;  R3 -> page_no (String)
   ;Exit
   ;  R0 = more (Bool)
   ;  R2 = id (Int)

XPDriver_GetRectangle           *       &A014D
PDriver_GetRectangle            *       &8014D
   ;Entry
   ;  R1 = rect (pointer to OS_Box)
   ;Exit
   ;  R0 = more (Bool)
   ;  R2 = id (Int)

XPDriver_CancelJob              *       &A014E
PDriver_CancelJob               *       &8014E
   ;Entry
   ;  R0 = job (OS_F)

XPDriver_CancelJobW             *       &A014E
PDriver_CancelJobW              *       &8014E
   ;Entry
   ;  R0 = job (OS_FW)

XPDriver_ScreenDump             *       &A014F
PDriver_ScreenDump              *       &8014F
   ;Entry
   ;  R0 = job (OS_F)

XPDriver_ScreenDumpW            *       &A014F
PDriver_ScreenDumpW             *       &8014F
   ;Entry
   ;  R0 = job (OS_FW)

XPDriver_EnumerateJobs          *       &A0150
PDriver_EnumerateJobs           *       &80150
   ;Entry
   ;  R0 = context (Int)
   ;Exit
   ;  R0 = context_out (Int)

XPDriver_SetPrinter             *       &A0151
PDriver_SetPrinter              *       &80151

XPDriver_CancelJobWithError     *       &A0152
PDriver_CancelJobWithError      *       &80152
   ;Entry
   ;  R0 = job (OS_F)
   ;  R1 -> error (OS_Error)

XPDriver_CancelJobWithErrorW    *       &A0152
PDriver_CancelJobWithErrorW     *       &80152
   ;Entry
   ;  R0 = job (OS_FW)
   ;  R1 -> error (OS_Error)

XPDriver_SelectIllustration     *       &A0153
PDriver_SelectIllustration      *       &80153
   ;Entry
   ;  R0 = job (OS_F)
   ;  R1 -> title (String)
   ;Exit
   ;  R0 = old_job (OS_F)

XPDriver_SelectIllustrationW    *       &A0153
PDriver_SelectIllustrationW     *       &80153
   ;Entry
   ;  R0 = job (OS_FW)
   ;  R1 -> title (String)
   ;Exit
   ;  R0 = old_job (OS_FW)

XPDriver_InsertIllustration     *       &A0154
PDriver_InsertIllustration      *       &80154
   ;Entry
   ;  R0 = job (OS_F)
   ;  R1 -> clip_path (Draw_Path)
   ;  R2 = x0 (Int)
   ;  R3 = y0 (Int)
   ;  R4 = x1 (Int)
   ;  R5 = y1 (Int)
   ;  R6 = x2 (Int)
   ;  R7 = y2 (Int)

XPDriver_InsertIllustrationW    *       &A0154
PDriver_InsertIllustrationW     *       &80154
   ;Entry
   ;  R0 = job (OS_FW)
   ;  R1 -> clip_path (Draw_Path)
   ;  R2 = x0 (Int)
   ;  R3 = y0 (Int)
   ;  R4 = x1 (Int)
   ;  R5 = y1 (Int)
   ;  R6 = x2 (Int)
   ;  R7 = y2 (Int)

XPDriver_DeclareFont            *       &A0155
PDriver_DeclareFont             *       &80155
   ;Entry
   ;  R0 = font (Font_F)
   ;  R1 -> font_name (String)
   ;  R2 = flags (PDriver_FontFlags)

XPDriver_DeclareDriver          *       &A0156
PDriver_DeclareDriver           *       &80156
   ;Entry
   ;  R0 = reason (Int)
   ;  R1 = workspace (pointer to Void)
   ;  R2 = type (PDriver_Type)

XPDriver_RemoveDriver           *       &A0157
PDriver_RemoveDriver            *       &80157
   ;Entry
   ;  R0 = type (PDriver_Type)

XPDriver_SelectDriver           *       &A0158
PDriver_SelectDriver            *       &80158
   ;Entry
   ;  R0 = type (PDriver_Type)
   ;Exit
   ;  R0 = old_type (PDriver_Type)

XPDriver_EnumerateDrivers       *       &A0159
PDriver_EnumerateDrivers        *       &80159
   ;Entry
   ;  R0 = context (Int)
   ;Exit
   ;  R0 = context_out (Int)
   ;  R1 = type (PDriver_Type)

XPDriver_MiscOp                 *       &A015A
PDriver_MiscOp                  *       &8015A

PDriverMiscOp_AddFont           *       &0
   ;Entry
   ;  R0 = &0
   ;  R1 -> font_name (String)
   ;  R2 -> alien_name (String)
   ;  R3 = flags (PDriver_FontMapFlags)
   ;  R4 = add_flags (PDriver_FontAddFlags)

PDriverMiscOp_RemoveFont        *       &1
   ;Entry
   ;  R0 = &1
   ;  R1 -> font_name (String)

PDriverMiscOp_EnumerateFonts    *       &2
   ;Entry
   ;  R0 = &2
   ;  R1 = buffer (pointer to String)
   ;  R2 = size (Int)
   ;  R3 = context (Int)
   ;  R4 = flags (PDriver_EnumerateFlags)
   ;Exit
   ;  R1 -> end (Char)
   ;  R2 corrupted
   ;  R3 = context_out (Int)

PDriverMiscOp_RegisterDumper    *       &80000000
   ;Entry
   ;  R0 = &80000000
   ;  R1 = pdumper_no (Int)
   ;  R2 = dp_version_required (Int)
   ;  R3 = dumper_workspace (pointer to Void)
   ;  R4 -> dumper_code (code)
   ;  R5 = supported_calls (Bits)
   ;  R6 = supported_strips (Bits)

PDriverMiscOp_DeregisterDumper  *       &80000001
   ;Entry
   ;  R0 = &80000001
   ;  R1 = pdumper_no (Int)

PDriverMiscOp_StripTypes        *       &80000002
   ;Entry
   ;  R0 = &80000002
   ;  R1 = pdumper_no (Int)
   ;Exit
   ;  R0 = supported_strips (Bits)

XPDriver_MiscOpForDriver        *       &A015B
PDriver_MiscOpForDriver         *       &8015B

PDriverMiscOpForDriver_AddFont  *       &0
   ;Entry
   ;  R0 = &0
   ;  R1 -> font_name (String)
   ;  R2 -> alien_name (String)
   ;  R3 = flags (PDriver_FontMapFlags)
   ;  R4 = add_flags (PDriver_FontAddFlags)
   ;  R8 = type (PDriver_Type)

PDriverMiscOpForDriver_RemoveFont *       &1
   ;Entry
   ;  R0 = &1
   ;  R1 -> font_name (String)
   ;  R8 = type (PDriver_Type)

PDriverMiscOpForDriver_EnumerateFonts *       &2
   ;Entry
   ;  R0 = &2
   ;  R1 = buffer (pointer to String)
   ;  R2 = size (Int)
   ;  R3 = context (Int)
   ;  R4 = flags (PDriver_EnumerateFlags)
   ;  R8 = type (PDriver_Type)
   ;Exit
   ;  R1 -> end (Char)
   ;  R2 corrupted
   ;  R3 = context_out (Int)

PDriverMiscOpForDriver_RegisterDumper *       &80000000
   ;Entry
   ;  R0 = &80000000
   ;  R1 = pdumper_no (Int)
   ;  R2 = dp_version_required (Int)
   ;  R3 = dumper_workspace (pointer to Void)
   ;  R4 -> dumper_code (code)
   ;  R5 = supported_calls (Bits)
   ;  R6 = supported_strips (Bits)
   ;  R8 = type (PDriver_Type)

PDriverMiscOpForDriver_DeregisterDumper *       &80000001
   ;Entry
   ;  R0 = &80000001
   ;  R1 = pdumper_no (Int)
   ;  R8 = type (PDriver_Type)

PDriverMiscOpForDriver_StripTypes *       &80000002
   ;Entry
   ;  R0 = &80000002
   ;  R1 = pdumper_no (Int)
   ;  R8 = type (PDriver_Type)
   ;Exit
   ;  R0 = supported_strips (Bits)

XPDriver_SetDriver              *       &A015C
PDriver_SetDriver               *       &8015C
   ;Entry
   ;  R1 = pdumper_no (Int)
   ;  R2 -> ensure_command (String)
   ;  R3 -> configuration_data1 (Byte)
   ;  R4 -> configuration_data2 (Byte)
   ;  R5 = configuration_word (Int)

XPDriver_SetDriverExtended      *       &A015C
PDriver_SetDriverExtended       *       &8015C
   ;Entry
   ;  R1 = pdumper_no (Int)
   ;  R2 -> ensure_command (String)
   ;  R3 -> configuration_data1 (Byte)
   ;  R4 -> configuration_data2 (Byte)
   ;  R5 = configuration_word (Int)
   ;  R6 -> configuration_info (PDriver_ConfigurationInfo)

XPDriver_JPEGSWI                *       &A015D
PDriver_JPEGSWI                 *       &8015D

PDriverJPEGSWI_Info             *       &49980

PDriverJPEGSWIInfo_Dimensions   *       &1
   ;Entry
   ;  R0 = &1
   ;  R1 -> image (JPEG_Image)
   ;  R2 = size (Int)
   ;  R8 = &49980
   ;Exit
   ;  R0 = info_flags (JPEG_InfoFlags)
   ;  R2 = width (Int)
   ;  R3 = height (Int)
   ;  R4 = xdpi (Int)
   ;  R5 = ydpi (Int)
   ;  R6 = workspace_size (Int)

PDriverJPEGSWI_FileInfo         *       &49981

PDriverJPEGSWIFileInfo_Dimensions *       &1
   ;Entry
   ;  R0 = &1
   ;  R1 -> file_name (String)
   ;  R8 = &49981
   ;Exit
   ;  R0 = info_flags (JPEG_InfoFlags)
   ;  R2 = width (Int)
   ;  R3 = height (Int)
   ;  R4 = xdpi (Int)
   ;  R5 = ydpi (Int)
   ;  R6 = workspace_size (Int)

PDriverJPEGSWI_PlotScaled       *       &49982
   ;Entry
   ;  R0 -> image (JPEG_Image)
   ;  R1 = x (Int)
   ;  R2 = y (Int)
   ;  R3 -> factors (OS_Factors)
   ;  R4 = size (Int)
   ;  R5 = flags (JPEG_ScaleFlags)
   ;  R8 = &49982

PDriverJPEGSWI_PlotFileScaled   *       &49983
   ;Entry
   ;  R0 -> file_name (String)
   ;  R1 = x (Int)
   ;  R2 = y (Int)
   ;  R3 -> factors (OS_Factors)
   ;  R4 = flags (JPEG_ScaleFlags)
   ;  R8 = &49983

PDriverJPEGSWI_PlotTransformed  *       &49984
   ;Entry
   ;  R0 -> image (JPEG_Image)
   ;  R1 = flags (JPEG_TransformFlags)
   ;  R2 -> trfm_or_rect (OS_Trfm)
   ;  R3 = size (Int)
   ;  R8 = &49984

PDriverJPEGSWI_PlotFileTransformed *       &49985
   ;Entry
   ;  R0 -> file_name (String)
   ;  R1 = flags (JPEG_TransformFlags)
   ;  R2 -> trfm_or_rect (OS_Trfm)
   ;  R8 = &49985

Service_Print                   *       &41
   ;Entry
   ;  R1 = &41

Service_PDriverStarting         *       &65
   ;Entry
   ;  R1 = &65

Service_PDriverGetMessages      *       &78
   ;Entry
   ;  R1 = &78
   ;Exit
   ;  R1 = unclaimed (Bool)
   ;  R3 -> common_cb (MessageTrans_ControlBlock)

Service_PDriverChanged          *       &7F
   ;Entry
   ;  R1 = &7F

        ]
        END
