From 0218951158289b2e86ef06811b58305e5d5f2272 Mon Sep 17 00:00:00 2001 From: Gwenhael Le Moine Date: Wed, 20 Mar 2024 07:46:29 +0100 Subject: [PATCH] 2022-07-31: Updated to version 64 Signed-off-by: Gwenhael Le Moine --- Emu48.dll | Bin 348160 -> 348160 bytes Emu48.exe | Bin 356352 -> 356352 bytes Emu48.htm | 170 +++++++++++-------- source/CHANGES.TXT | 2 +- source/EMU48.C | 27 ++- source/EMU48.H | 5 +- source/EMU48.RC | 12 +- source/ENGINE.C | 9 +- source/EXTERNAL.C | 101 +++++++++++ source/FILES.C | 52 +++--- source/LODEPNG.C | 405 +++++++++++++++++++++++++++++++-------------- source/LODEPNG.H | 108 +++++++++--- source/MOPS.C | 11 +- source/MRU.C | 45 ++++- source/PCH.H | 1 + source/SERIAL.C | 7 +- source/gpl.txt | 340 +++++++++++++++++++++++++++++++++++++ 17 files changed, 1011 insertions(+), 284 deletions(-) create mode 100644 source/EXTERNAL.C create mode 100644 source/gpl.txt diff --git a/Emu48.dll b/Emu48.dll index 8a8d10954304da123bc2472e892477776adfc6ce..554526c85720e2f905e521a17b2c8700795c78e6 100644 GIT binary patch literal 348160 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 v( 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 a`wKk#3q1P^Jo^hg`wKk#3;h587x*73r7ms& diff --git a/Emu48.exe b/Emu48.exe index c0813f002ceb2557838cc911a735d24810402891..cc0bb3887a8d537defd84d6d440e501d95a2a740 100644 GIT binary patch delta 32877 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 delta 32466 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

+>h#GDjwp2Qjfs`hkWIs5Q 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Ɗ@K%u|JgHxU`N*xHw9*kP=_ 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 diff --git a/Emu48.htm b/Emu48.htm index 685c7a4..b8d0a3f 100644 --- a/Emu48.htm +++ b/Emu48.htm @@ -34,7 +34,8 @@ h3 { color:red; font-size:1.1em; }

1. General

-

Emu48 is an +

Emu48 is an emulator for the Hewlett Packard HP38G, HP39G, HP40G, HP48SX, HP48GX and HP49G calculator hardware. These calculators are based on the 1LT8 Clarke (HP48SX) and on the Yorke chip.

@@ -127,73 +127,97 @@ h3 { color:red; font-size:1.1em; } in the destination file with zeros. Final notice, the convert utility shows the CRC result after the file convert and a passed ROM CRC test does not imply, that the source file - is in an Emu48 suitable format! + is in an Emu48 suitable format! To create a ROM image in a suitable + format, call the convert utility with the 2nd file argument.

-
    -
  • HP38 -

    To upload the ROM of your HP38G, you will need a special aplet - called "ROM UPLOAD". - Once you've uploaded the ROM, you have to convert it using the - Convert utility.

    -

    To do that, start a Command Prompt while running Windows, and - type:

    -
    Convert <rom-file> ROM.38G
    -

    Where <rom-file> is the path to your ROM image. This will - create a file named ROM.38G. This tool will also check its validity. -

  • -
  • HP39/40 -

    To upload the ROM of your HP39G/HP40G, you will need a special aplet - called "ROM UPLOAD". - Once you've uploaded the ROM, you have to convert it using the Rom2emu utility. -

    -

    To do that, start a Command Prompt while running Windows, and - type:

    -
    Rom2emu <rom-file> ROM.39G
    -

    There's also a HP39G/HP40G beta ROM for emulators inside an old - Emu48 package. -

  • -
  • HP48 -

    If you have already used another HP48 emulator, you can convert - the ROM using the Convert utility. -

    -

    To do that, start a Command Prompt while running Windows, and - type:

    -
    Convert <rom-file> ROM.48G
    -

    or

    -
    Convert <rom-file> ROM.48S
    -

    Where <rom-file> is the path to your old ROM image. This - will create a file named ROM.48G or ROM.48S, depending on the version - you own. This tool should be able to read any style of ROM image, and - will also check its validity. Note that if you run it with only one - parameter, no file will be written, but it will still check the - validity of the ROM.

    -

    If you have never used an HP48 emulator, and don't have a ROM - dump, you can either use Jean-Yves Avenard's ROMUPL.BIN or the - ROMDump Wizard V1.x, which will almost automatically get the ROM from - your HP48. After the download you may have to convert your dump with - the CONVERT utility into the Emu48 format.

    -

    You can find the latest version of the ROM dump programs on:

    -
    - ROMUPL.BIN - http://www.hpcalc.org/details.php?id=3686
    - ROMDump Wizard - - http://hp.giesselink.com/emu48.htm -
  • -
  • HP49G -

    There's no ROM download program available so far. But you can - create a ROM image with the - UPD49ROM tool - and a - ROM update file for the HP49G calculator. I suggested to use - version 1.19-6 -

    -

    To create a HP49G ROM image file, start a Command Prompt while - running Windows, and type:

    -
    UPD49ROM -f hp49119-6.flash ROM.49G
    -

    This will create a HP49G ROM image file with an empty User - Port 2.

  • -
+

The general syntax of the convert utility is:

+
Convert [-p] <old-rom-dump> [<new-rom-dump>]
+

where:

+
Convert <old-rom-dump>
+

check if <old-rom-dump> is in a known source format and + report the ROM Model, the ROM Version and the result of the CRC + check. +

+

where:

+
Convert <old-rom-dump> <new-rom-dump>
+

convert the file <old-rom-dump> into the unpacked + ROM image file <new-rom-dump> valid for use in Emu48. +

+

where:

+
Convert -p <old-rom-dump> <new-rom-dump>
+

convert the file <old-rom-dump> into the packed + ROM image file <new-rom-dump> valid for use in Emu48. +

+

3.1 Creation examples

+
    +
  • HP38 +

    To upload the ROM of your HP38G, you will need a special aplet + called "ROM UPLOAD". + Once you've uploaded the ROM, you have to convert it using the + Convert utility.

    +

    To do that, start a Command Prompt while running Windows, and + type:

    +
    Convert -p <rom-file> ROM.38G
    +

    Where <rom-file> is the path to your ROM image. This will + create a packed file named ROM.38G. This tool will also check its validity. +

  • +
  • HP39/40 +

    To upload the ROM of your HP39G/HP40G, you will need a special aplet + called "ROM UPLOAD". + Once you've uploaded the ROM, you may convert it to the unpacked format + using the Rom2emu utility or rename it when you want to keep the packed + format. +

    +

    To do that, start a Command Prompt while running Windows, and + type:

    +
    Rom2emu <rom-file> ROM.39G
    +

    or

    +
    rename <rom-file> ROM.39G
    +

    There's also a HP39G/HP40G beta ROM for emulators inside an old + Emu48 package. +

  • +
  • HP48 +

    If you have already used another HP48 emulator, you can convert + the ROM using the Convert utility. +

    +

    To do that, start a Command Prompt while running Windows, and + type:

    +
    Convert <rom-file> ROM.48G
    +

    or

    +
    Convert <rom-file> ROM.48S
    +

    Where <rom-file> is the path to your old ROM image. This + will create a file named ROM.48G or ROM.48S, depending on the + version you own. This tool should be able to read any style of + ROM image, and will also check its validity. Note that if you run + it with only one parameter, no file will be written, but it will + still check the validity of the ROM.

    +

    If you have never used an HP48 emulator, and don't have a ROM + dump, you can either use Jean-Yves Avenard's ROMUPL.BIN or the + ROMDump Wizard V1.x, which will almost automatically get the ROM + from your HP48. After the download you may have to convert your + dump with the CONVERT utility into the Emu48 format.

    +

    You can find the latest version of the ROM dump programs on:

    +
    + ROMUPL.BIN + http://www.hpcalc.org/details.php?id=3686
    + ROMDump Wizard + + https://hp.giesselink.com/emu48.htm +
  • +
  • HP49G +

    There's no ROM download program available so far. But you can + create a ROM image with the + UPD49ROM tool + and a + ROM update file for the HP49G calculator. I suggested to use + version 1.19-6 +

    +

    To create a HP49G ROM image file, start a Command Prompt while + running Windows, and type:

    +
    UPD49ROM -f hp49119-6.flash ROM.49G
    +

    This will create a HP49G ROM image file with an empty User + Port 2.

  • +

4. Installation

To install Emu48 you may use the installer package which contain, among the binaries, some HP48 KML scripts or just unzip the emulator @@ -239,7 +263,7 @@ h3 { color:red; font-size:1.1em; }

If you want other great scripts, visit Rechlin's great HP archive

If you are interested in writing new scripts, get the KML 2.0 - documentation from the + documentation from the authors Emu48 page.

Having selected a script, press OK to start the emulator. In most cases, when Emu48 crash after pressing the OK button, you are using @@ -462,7 +486,7 @@ h3 { color:red; font-size:1.1em; } simulation. The data transfer to the printer simulator is done over UDP. In this section you can the define the IPv4 address and the port the printer simulator is listening. A suitable HP82240B printer simulation can - be found here.

+ be found here.

8.6.3.3 Section Serial Ports

  • Wire @@ -651,7 +675,7 @@ h3 { color:red; font-size:1.1em; } Cyrille de Brebisson of Hewlett-Packard.

    15. License

    Emu48 - A HP38G/39G/40G/48SX/48GX/49G Emulator
    - Copyright (C) 2021 Christoph Gießelink

    + Copyright (C) 2022 Christoph Gießelink

    This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) diff --git a/source/CHANGES.TXT b/source/CHANGES.TXT index 3fe8d48..63d624a 100644 --- a/source/CHANGES.TXT +++ b/source/CHANGES.TXT @@ -1,4 +1,4 @@ -Service Pack 63+ based on Emu48 Service Pack 64 +Service Pack 64+ based on Emu48 Service Pack 65 See CHANGES.TXT in Emu48 for full history. Only changes specifically made to Emu48+ are shown below. diff --git a/source/EMU48.C b/source/EMU48.C index 2bb7880..57ed1c6 100644 --- a/source/EMU48.C +++ b/source/EMU48.C @@ -13,7 +13,7 @@ #include "kml.h" #include "debugger.h" -#define VERSION "1.63+" +#define VERSION "1.64+" #ifdef _DEBUG LPCTSTR szNoTitle = _T("Emu48 ")_T(VERSION)_T(" Debug"); @@ -681,7 +681,7 @@ static INT_PTR CALLBACK SettingsPeripheralProc(HWND hDlg, UINT uMsg, WPARAM wPar // set combobox parameter SetCommList(hDlg,szSerialWire,szSerialIr); - if (bCommInit) // disable when port open + if (CommIsOpen()) // disable when port open { EnableWindow(GetDlgItem(hDlg,IDC_WIRE),FALSE); EnableWindow(GetDlgItem(hDlg,IDC_IR),FALSE); @@ -768,7 +768,10 @@ static UINT SaveChanges(BOOL bAuto) if (GetSaveAsFilename()) { if (SaveDocumentAs(szBufferFilename)) + { + MruAdd(szBufferFilename); return IDYES; + } else return IDCANCEL; } @@ -776,6 +779,7 @@ static UINT SaveChanges(BOOL bAuto) } SaveDocument(); + MruAdd(szCurrentFilename); return IDYES; } @@ -1056,25 +1060,32 @@ cancel: // static LRESULT OnFileMruOpen(UINT wID) { - LPCTSTR lpszFilename; + TCHAR szFilename[MAX_PATH]; wID -= ID_FILE_MRU_FILE1; // zero based MRU index - lpszFilename = MruFilename(wID); // full filename from MRU list - if (lpszFilename == NULL) return 0; // MRU slot not filled + + // full filename from MRU list + MruFilename(wID,szFilename,ARRAYSIZEOF(szFilename)); + if (*szFilename == 0) return 0; // MRU slot not filled if (bDocumentAvail) { SwitchToState(SM_INVALID); + // saving may change MRU index and destroy lpszFilename pointer content if (IDCANCEL == SaveChanges(bAutoSave)) goto cancel; } - if (!OpenDocument(lpszFilename)) // document loading failed + if (!OpenDocument(szFilename)) // document loading failed { - MruRemove(wID); // entry not valid any more + wID = MruID(szFilename); // get actual MRU ID after saving + if (wID != (UINT) -1) // entry still in MRU list + { + MruRemove(wID); // entry not valid any more + } } else { - MruMoveTop(wID); // move entry to top of MRU list + MruAdd(szFilename); // add entry to top of MRU list } cancel: if (pbyRom) SwitchToState(SM_RUN); diff --git a/source/EMU48.H b/source/EMU48.H index f438d2a..1a4287c 100644 --- a/source/EMU48.H +++ b/source/EMU48.H @@ -133,7 +133,8 @@ extern VOID MruAdd(LPCTSTR lpszEntry); extern VOID MruRemove(UINT nIndex); extern VOID MruMoveTop(UINT nIndex); extern UINT MruEntries(VOID); -extern LPCTSTR MruFilename(UINT nIndex); +extern UINT MruID(LPCTSTR lpszEntry); +extern VOID MruFilename(UINT nIndex, LPTSTR szFilename, UINT nBuffersize); extern VOID MruUpdateMenu(HMENU hMenu); extern VOID MruWriteList(VOID); extern VOID MruReadList(VOID); @@ -193,7 +194,6 @@ extern BOOL bRealSpeed; extern BOOL bKeySlow; extern BOOL bSoundSlow; extern UINT nOpcSlow; -extern BOOL bCommInit; extern CHIPSET Chipset; extern TCHAR szSerialWire[16]; extern TCHAR szSerialIr[16]; @@ -412,6 +412,7 @@ extern LPCTSTR RplGetName(DWORD dwAddr); extern BOOL RplGetAddr(LPCTSTR lpszName, DWORD *pdwAddr); // Serial.c +extern BOOL CommIsOpen(VOID); extern BOOL CommOpen(LPTSTR strWirePort,LPTSTR strIrPort); extern VOID CommClose(VOID); extern VOID CommSetBaud(VOID); diff --git a/source/EMU48.RC b/source/EMU48.RC index 573dc5f..8f735d0 100644 --- a/source/EMU48.RC +++ b/source/EMU48.RC @@ -303,7 +303,7 @@ FONT 8, "MS Sans Serif" BEGIN ICON IDI_EMU48,IDC_STATIC,7,6,20,20,SS_REALSIZEIMAGE LTEXT "",IDC_VERSION,29,6,151,8,NOT WS_GROUP - LTEXT "Copyright © 2021 Christoph Gießelink && Sébastien Carlier", + LTEXT "Copyright © 2022 Christoph Gießelink && Sébastien Carlier", IDC_STATIC,29,18,181,8 DEFPUSHBUTTON "OK",IDOK,215,12,39,14 EDITTEXT IDC_LICENSE,7,33,247,112,ES_MULTILINE | ES_AUTOHSCROLL | @@ -723,8 +723,8 @@ END // VS_VERSION_INFO VERSIONINFO - FILEVERSION 1,6,3,0 - PRODUCTVERSION 1,6,3,0 + FILEVERSION 1,6,4,0 + PRODUCTVERSION 1,6,4,0 FILEFLAGSMASK 0x3fL #ifdef _DEBUG FILEFLAGS 0x1L @@ -741,12 +741,12 @@ BEGIN BEGIN VALUE "CompanyName", "Christoph Gießelink & Sebastien Carlier\0" VALUE "FileDescription", "HP38/39/40/48/49/50 Emulator\0" - VALUE "FileVersion", "1, 6, 3, 0\0" + VALUE "FileVersion", "1, 6, 4, 0\0" VALUE "InternalName", "Emu48+\0" - VALUE "LegalCopyright", "Copyright © 2021\0" + VALUE "LegalCopyright", "Copyright © 2022\0" VALUE "OriginalFilename", "Emu48.exe\0" VALUE "ProductName", "Emu48+\0" - VALUE "ProductVersion", "1, 6, 3, 0\0" + VALUE "ProductVersion", "1, 6, 4, 0\0" END END BLOCK "VarFileInfo" diff --git a/source/ENGINE.C b/source/ENGINE.C index eaf84a9..e905793 100644 --- a/source/ENGINE.C +++ b/source/ENGINE.C @@ -22,7 +22,6 @@ BOOL bRealSpeed = FALSE; BOOL bKeySlow = FALSE; // slow down for key emulation BOOL bSoundSlow = FALSE; // slow down for sound emulation UINT nOpcSlow = 0; // no. of opcodes to slow down -BOOL bCommInit = FALSE; // COM port not open CHIPSET Chipset; @@ -353,16 +352,15 @@ static __inline VOID SetT2Cycles(VOID) // set device specific cpu cycles in int VOID CheckSerial(VOID) { // COM port closed and serial on - if (bCommInit == FALSE && (Chipset.IORam[IOC] & SON) != 0) + if (CommIsOpen() == FALSE && (Chipset.IORam[IOC] & SON) != 0) { - bCommInit = CommOpen(szSerialWire,szSerialIr); // open COM ports + CommOpen(szSerialWire,szSerialIr); // open COM ports } // COM port opened and serial off - if (bCommInit == TRUE && (Chipset.IORam[IOC] & SON) == 0) + if (CommIsOpen() == TRUE && (Chipset.IORam[IOC] & SON) == 0) { CommClose(); // close COM port - bCommInit = FALSE; } return; } @@ -551,7 +549,6 @@ loop: { OnToolMacroStop(); // close open keyboard macro handler CommClose(); // close COM port - bCommInit = FALSE; // COM port not open nState = SM_INVALID; // in invalid state WaitForSingleObject(hEventShutdn,INFINITE); if (nNextState == SM_RETURN) // go into return state diff --git a/source/EXTERNAL.C b/source/EXTERNAL.C new file mode 100644 index 0000000..a4b8ec8 --- /dev/null +++ b/source/EXTERNAL.C @@ -0,0 +1,101 @@ +/* + * external.c + * + * This file is part of Emu48 + * + * Copyright (C) 1995 Sebastien Carlier + * + */ +#include "pch.h" +#include "Emu48.h" +#include "ops.h" + +#define SAMPLES_PER_SEC 44100 // sound sampling rate + +//| 38G | 39G | 40G | 48SX | 48GX | 49G | Name +//#F0E4F #80F0F #80F0F #706D2 #80850 #80F0F =SFLAG53_56 + +// memory address for flags -53 to -56 + // CdB for HP: add apples beep management +#define SFLAG53_56 ( (cCurrentRomType=='6') \ + ? 0xE0E4F \ + : ( (cCurrentRomType=='A') \ + ? 0xF0E4F \ + : ( (cCurrentRomType!='E' && cCurrentRomType!='X' && cCurrentRomType!='P' && cCurrentRomType!='2' && cCurrentRomType!='Q') \ + ? ( (cCurrentRomType=='S') \ + ? 0x706D2 \ + : 0x80850 \ + ) \ + : 0x80F0F \ + ) \ + ) \ + ) + +VOID External(CHIPSET* w) // Beep patch +{ + BYTE fbeep; + DWORD freq,dur; + + freq = Npack(w->D,5); // frequency in Hz + dur = Npack(w->C,5); // duration in ms + Nread(&fbeep,SFLAG53_56,1); // fetch system flags -53 to -56 + + w->carry = TRUE; // setting of no beep + if (!(fbeep & 0x8) && freq) // bit -56 clear and frequency > 0 Hz + { + if (freq > 4400) freq = 4400; // high limit of HP (SX) + + SoundBeep(freq,dur); // beeping + + // estimate cpu cycles for beeping time (2MHz / 4MHz) + w->cycles += dur * ((cCurrentRomType=='S') ? 2000 : 4000); + + // original routine return with... + w->P = 0; // P=0 + w->intk = TRUE; // INTON + w->carry = FALSE; // RTNCC + } + w->pc = rstkpop(); + return; +} + +VOID RCKBp(CHIPSET* w) // ROM Check Beep patch +{ + DWORD dw2F,dwCpuFreq; + DWORD freq,dur; + BYTE f,d; + + f = w->C[1]; // f = freq ctl + d = w->C[0]; // d = duration ctl + + if (cCurrentRomType == 'S') // Clarke chip with 48S ROM + { + // CPU strobe frequency @ RATE 14 = 1.97MHz + dwCpuFreq = ((14 + 1) * 524288) >> 2; + + dw2F = f * 126 + 262; // F=f*63+131 + } + else // York chip with 48G and later ROM + { + // CPU strobe frequency @ RATE 27 = 3.67MHz + // CPU strobe frequency @ RATE 29 = 3.93MHz + dwCpuFreq = ((27 + 1) * 524288) >> 2; + + dw2F = f * 180 + 367; // F=f*90+183.5 + } + + freq = dwCpuFreq / dw2F; + dur = (dw2F * (256 - 16 * d)) * 1000 / 2 / dwCpuFreq; + + if (freq > 4400) freq = 4400; // high limit of HP + + SoundBeep(freq,dur); // beeping + + // estimate cpu cycles for beeping time (2MHz / 4MHz) + w->cycles += dur * ((cCurrentRomType=='S') ? 2000 : 4000); + + w->P = 0; // P=0 + w->carry = FALSE; // RTNCC + w->pc = rstkpop(); + return; +} diff --git a/source/FILES.C b/source/FILES.C index 5861ef3..79d630b 100644 --- a/source/FILES.C +++ b/source/FILES.C @@ -1730,7 +1730,7 @@ typedef struct _BmpFile LPBYTE pbyFile; // buffer } BMPFILE, FAR *LPBMPFILE, *PBMPFILE; -static __inline WORD DibNumColors(BITMAPINFOHEADER CONST *lpbi) +static __inline WORD DibNumColors(__unaligned BITMAPINFOHEADER CONST *lpbi) { if (lpbi->biClrUsed != 0) return (WORD) lpbi->biClrUsed; @@ -1738,7 +1738,7 @@ static __inline WORD DibNumColors(BITMAPINFOHEADER CONST *lpbi) return (lpbi->biBitCount <= 8) ? (1 << lpbi->biBitCount) : 0; } -static HPALETTE CreateBIPalette(BITMAPINFOHEADER CONST *lpbi) +static HPALETTE CreateBIPalette(__unaligned BITMAPINFOHEADER CONST *lpbi) { LOGPALETTE* pPal; HPALETTE hpal = NULL; @@ -1747,12 +1747,9 @@ static HPALETTE CreateBIPalette(BITMAPINFOHEADER CONST *lpbi) BYTE green; BYTE blue; UINT i; - RGBQUAD* pRgb; + __unaligned RGBQUAD* pRgb; - if (!lpbi) - return NULL; - - if (lpbi->biSize != sizeof(BITMAPINFOHEADER)) + if (!lpbi || lpbi->biSize != sizeof(BITMAPINFOHEADER)) return NULL; // Get a pointer to the color table and the number of colors in it @@ -1816,22 +1813,19 @@ static HPALETTE CreateBIPalette(BITMAPINFOHEADER CONST *lpbi) static HBITMAP DecodeBmp(LPBMPFILE pBmp,BOOL bPalette) { - LPBITMAPFILEHEADER pBmfh; - LPBITMAPINFO pBmi; - HBITMAP hBitmap; - DWORD dwFileSize; + DWORD dwFileSize; - hBitmap = NULL; + HBITMAP hBitmap = NULL; - // size of bitmap header information + // map memory to BITMAPFILEHEADER and BITMAPINFO + const LPBITMAPFILEHEADER pBmfh = (LPBITMAPFILEHEADER) pBmp->pbyFile; + const __unaligned LPBITMAPINFO pBmi = (__unaligned LPBITMAPINFO) & pBmfh[1]; + + // size of bitmap header information & check for bitmap dwFileSize = sizeof(BITMAPFILEHEADER) + sizeof(BITMAPINFOHEADER); - if (pBmp->dwFileSize < dwFileSize) return NULL; - - // check for bitmap - pBmfh = (LPBITMAPFILEHEADER) pBmp->pbyFile; - if (pBmfh->bfType != 0x4D42) return NULL; // "BM" - - pBmi = (LPBITMAPINFO) (pBmp->pbyFile + sizeof(BITMAPFILEHEADER)); + if ( pBmp->dwFileSize < dwFileSize // minimum size to read data from BITMAPFILEHEADER + BITMAPINFOHEADER + || pBmfh->bfType != 0x4D42) // "BM" + return NULL; // size with color table if (pBmi->bmiHeader.biCompression == BI_BITFIELDS) @@ -1852,7 +1846,7 @@ static HBITMAP DecodeBmp(LPBMPFILE pBmp,BOOL bPalette) else { dwFileSize += WIDTHBYTES(pBmi->bmiHeader.biWidth * pBmi->bmiHeader.biBitCount) - * labs(pBmi->bmiHeader.biHeight); + * labs(pBmi->bmiHeader.biHeight); } if (pBmp->dwFileSize < dwFileSize) return NULL; @@ -2452,11 +2446,15 @@ static HBITMAP DecodePng(LPBMPFILE pBmp,BOOL bPalette) if (hBitmap == NULL) goto quit; pbySrc = pbyImage; // init source loop pointer + pbyPixels += bmi.bmiHeader.biSizeImage; // end of destination bitmap // fill bottom up DIB pixel buffer with color information - for (nHeight = bmi.bmiHeader.biHeight - 1; nHeight >= 0; --nHeight) + for (nHeight = 0; nHeight < bmi.bmiHeader.biHeight; ++nHeight) { - LPBYTE pbyLine = pbyPixels + nHeight * lBytesPerLine; + LPBYTE pbyLine; + + pbyPixels -= lBytesPerLine; // begin of previous row + pbyLine = pbyPixels; // row working copy for (nWidth = 0; nWidth < bmi.bmiHeader.biWidth; ++nWidth) { @@ -2465,8 +2463,6 @@ static HBITMAP DecodePng(LPBMPFILE pBmp,BOOL bPalette) *pbyLine++ = pbySrc[0]; // red pbySrc += 3; } - - _ASSERT((DWORD) (pbyLine - pbyPixels) <= bmi.bmiHeader.biSizeImage); } if (bPalette && hPalette == NULL) @@ -2482,12 +2478,6 @@ quit: { free(pbyImage); // free PNG image data } - - if (hBitmap != NULL && uError != 0) // creation failed - { - DeleteObject(hBitmap); // delete bitmap - hBitmap = NULL; - } return hBitmap; } diff --git a/source/LODEPNG.C b/source/LODEPNG.C index 532a21c..9d82e29 100644 --- a/source/LODEPNG.C +++ b/source/LODEPNG.C @@ -1,7 +1,7 @@ /* -LodePNG version 20210627 +LodePNG version 20220717 -Copyright (c) 2005-2021 Lode Vandevenne +Copyright (c) 2005-2022 Lode Vandevenne This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -44,10 +44,10 @@ Rename this file to lodepng.cpp to use it for C++, or to lodepng.c to use it for #pragma warning( disable : 4996 ) /*VS does not like fopen, but fopen_s is not standard C so unusable here*/ #endif /*_MSC_VER */ -const char* LODEPNG_VERSION_STRING = "20210627"; +const char* LODEPNG_VERSION_STRING = "20220717"; /* -This source file is built up in the following large parts. The code sections +This source file is divided into the following large parts. The code sections with the "LODEPNG_COMPILE_" #defines divide this up further in an intermixed way. -Tools for C and common code for PNG and Zlib -C Code for Zlib (huffman, deflate, ...) @@ -267,7 +267,7 @@ typedef struct ucvector { } ucvector; /*returns 1 if success, 0 if failure ==> nothing done*/ -static unsigned ucvector_resize(ucvector* p, size_t size) { +static unsigned ucvector_reserve(ucvector* p, size_t size) { if(size > p->allocsize) { size_t newsize = size + (p->allocsize >> 1u); void* data = lodepng_realloc(p->data, newsize); @@ -277,10 +277,15 @@ static unsigned ucvector_resize(ucvector* p, size_t size) { } else return 0; /*error: not enough memory*/ } - p->size = size; return 1; /*success*/ } +/*returns 1 if success, 0 if failure ==> nothing done*/ +static unsigned ucvector_resize(ucvector* p, size_t size) { + p->size = size; + return ucvector_reserve(p, size); +} + static ucvector ucvector_init(unsigned char* buffer, size_t size) { ucvector v; v.data = buffer; @@ -480,71 +485,62 @@ static unsigned LodePNGBitReader_init(LodePNGBitReader* reader, const unsigned c ensureBits functions: Ensures the reader can at least read nbits bits in one or more readBits calls, safely even if not enough bits are available. -Returns 1 if there are enough bits available, 0 if not. +The nbits parameter is unused but is given for documentation purposes, error +checking for amount of bits must be done beforehand. */ -/*See ensureBits documentation above. This one ensures exactly 1 bit */ -/*static unsigned ensureBits1(LodePNGBitReader* reader) { - if(reader->bp >= reader->bitsize) return 0; - reader->buffer = (unsigned)reader->data[reader->bp >> 3u] >> (reader->bp & 7u); - return 1; -}*/ - /*See ensureBits documentation above. This one ensures up to 9 bits */ -static unsigned ensureBits9(LodePNGBitReader* reader, size_t nbits) { +static LODEPNG_INLINE void ensureBits9(LodePNGBitReader* reader, size_t nbits) { size_t start = reader->bp >> 3u; size_t size = reader->size; if(start + 1u < size) { reader->buffer = (unsigned)reader->data[start + 0] | ((unsigned)reader->data[start + 1] << 8u); reader->buffer >>= (reader->bp & 7u); - return 1; } else { reader->buffer = 0; - if(start + 0u < size) reader->buffer |= reader->data[start + 0]; + if(start + 0u < size) reader->buffer = reader->data[start + 0]; reader->buffer >>= (reader->bp & 7u); - return reader->bp + nbits <= reader->bitsize; } + (void)nbits; } /*See ensureBits documentation above. This one ensures up to 17 bits */ -static unsigned ensureBits17(LodePNGBitReader* reader, size_t nbits) { +static LODEPNG_INLINE void ensureBits17(LodePNGBitReader* reader, size_t nbits) { size_t start = reader->bp >> 3u; size_t size = reader->size; if(start + 2u < size) { reader->buffer = (unsigned)reader->data[start + 0] | ((unsigned)reader->data[start + 1] << 8u) | ((unsigned)reader->data[start + 2] << 16u); reader->buffer >>= (reader->bp & 7u); - return 1; } else { reader->buffer = 0; if(start + 0u < size) reader->buffer |= reader->data[start + 0]; if(start + 1u < size) reader->buffer |= ((unsigned)reader->data[start + 1] << 8u); reader->buffer >>= (reader->bp & 7u); - return reader->bp + nbits <= reader->bitsize; } + (void)nbits; } /*See ensureBits documentation above. This one ensures up to 25 bits */ -static LODEPNG_INLINE unsigned ensureBits25(LodePNGBitReader* reader, size_t nbits) { +static LODEPNG_INLINE void ensureBits25(LodePNGBitReader* reader, size_t nbits) { size_t start = reader->bp >> 3u; size_t size = reader->size; if(start + 3u < size) { reader->buffer = (unsigned)reader->data[start + 0] | ((unsigned)reader->data[start + 1] << 8u) | ((unsigned)reader->data[start + 2] << 16u) | ((unsigned)reader->data[start + 3] << 24u); reader->buffer >>= (reader->bp & 7u); - return 1; } else { reader->buffer = 0; if(start + 0u < size) reader->buffer |= reader->data[start + 0]; if(start + 1u < size) reader->buffer |= ((unsigned)reader->data[start + 1] << 8u); if(start + 2u < size) reader->buffer |= ((unsigned)reader->data[start + 2] << 16u); reader->buffer >>= (reader->bp & 7u); - return reader->bp + nbits <= reader->bitsize; } + (void)nbits; } /*See ensureBits documentation above. This one ensures up to 32 bits */ -static LODEPNG_INLINE unsigned ensureBits32(LodePNGBitReader* reader, size_t nbits) { +static LODEPNG_INLINE void ensureBits32(LodePNGBitReader* reader, size_t nbits) { size_t start = reader->bp >> 3u; size_t size = reader->size; if(start + 4u < size) { @@ -552,7 +548,6 @@ static LODEPNG_INLINE unsigned ensureBits32(LodePNGBitReader* reader, size_t nbi ((unsigned)reader->data[start + 2] << 16u) | ((unsigned)reader->data[start + 3] << 24u); reader->buffer >>= (reader->bp & 7u); reader->buffer |= (((unsigned)reader->data[start + 4] << 24u) << (8u - (reader->bp & 7u))); - return 1; } else { reader->buffer = 0; if(start + 0u < size) reader->buffer |= reader->data[start + 0]; @@ -560,48 +555,28 @@ static LODEPNG_INLINE unsigned ensureBits32(LodePNGBitReader* reader, size_t nbi if(start + 2u < size) reader->buffer |= ((unsigned)reader->data[start + 2] << 16u); if(start + 3u < size) reader->buffer |= ((unsigned)reader->data[start + 3] << 24u); reader->buffer >>= (reader->bp & 7u); - return reader->bp + nbits <= reader->bitsize; } + (void)nbits; } /* Get bits without advancing the bit pointer. Must have enough bits available with ensureBits. Max nbits is 31. */ -static unsigned peekBits(LodePNGBitReader* reader, size_t nbits) { +static LODEPNG_INLINE unsigned peekBits(LodePNGBitReader* reader, size_t nbits) { /* The shift allows nbits to be only up to 31. */ return reader->buffer & ((1u << nbits) - 1u); } /* Must have enough bits available with ensureBits */ -static void advanceBits(LodePNGBitReader* reader, size_t nbits) { +static LODEPNG_INLINE void advanceBits(LodePNGBitReader* reader, size_t nbits) { reader->buffer >>= nbits; reader->bp += nbits; } /* Must have enough bits available with ensureBits */ -static unsigned readBits(LodePNGBitReader* reader, size_t nbits) { +static LODEPNG_INLINE unsigned readBits(LodePNGBitReader* reader, size_t nbits) { unsigned result = peekBits(reader, nbits); advanceBits(reader, nbits); return result; } - -/* Public for testing only. steps and result must have numsteps values. */ -unsigned lode_png_test_bitreader(const unsigned char* data, size_t size, - size_t numsteps, const size_t* steps, unsigned* result) { - size_t i; - LodePNGBitReader reader; - unsigned error = LodePNGBitReader_init(&reader, data, size); - if(error) return 0; - for(i = 0; i < numsteps; i++) { - size_t step = steps[i]; - unsigned ok; - if(step > 25) ok = ensureBits32(&reader, step); - else if(step > 17) ok = ensureBits25(&reader, step); - else if(step > 9) ok = ensureBits17(&reader, step); - else ok = ensureBits9(&reader, step); - if(!ok) return 0; - result[i] = readBits(&reader, step); - } - return 1; -} #endif /*LODEPNG_COMPILE_DECODER*/ static unsigned reverseBits(unsigned bits, unsigned num) { @@ -736,10 +711,11 @@ static unsigned HuffmanTree_makeTable(HuffmanTree* tree) { numpresent = 0; for(i = 0; i < tree->numcodes; ++i) { unsigned l = tree->lengths[i]; - unsigned symbol = tree->codes[i]; /*the huffman bit pattern. i itself is the value.*/ - /*reverse bits, because the huffman bits are given in MSB first order but the bit reader reads LSB first*/ - unsigned reverse = reverseBits(symbol, l); + unsigned symbol, reverse; if(l == 0) continue; + symbol = tree->codes[i]; /*the huffman bit pattern. i itself is the value.*/ + /*reverse bits, because the huffman bits are given in MSB first order but the bit reader reads LSB first*/ + reverse = reverseBits(symbol, l); numpresent++; if(l <= FIRSTBITS) { @@ -1103,11 +1079,10 @@ static unsigned huffmanDecodeSymbol(LodePNGBitReader* reader, const HuffmanTree* advanceBits(reader, l); return value; } else { - unsigned index2; advanceBits(reader, FIRSTBITS); - index2 = value + peekBits(reader, l - FIRSTBITS); - advanceBits(reader, codetree->table_len[index2] - FIRSTBITS); - return codetree->table_value[index2]; + value += peekBits(reader, l - FIRSTBITS); + advanceBits(reader, codetree->table_len[value] - FIRSTBITS); + return codetree->table_value[value]; } } #endif /*LODEPNG_COMPILE_DECODER*/ @@ -1140,7 +1115,8 @@ static unsigned getTreeInflateDynamic(HuffmanTree* tree_ll, HuffmanTree* tree_d, unsigned* bitlen_cl = 0; HuffmanTree tree_cl; /*the code tree for code length codes (the huffman tree for compressed huffman trees)*/ - if(!ensureBits17(reader, 14)) return 49; /*error: the bit pointer is or will go past the memory*/ + if(reader->bitsize - reader->bp < 14) return 49; /*error: the bit pointer is or will go past the memory*/ + ensureBits17(reader, 14); /*number of literal/length codes + 257. Unlike the spec, the value 257 is added to it here already*/ HLIT = readBits(reader, 5) + 257; @@ -1265,6 +1241,10 @@ static unsigned inflateHuffmanBlock(ucvector* out, LodePNGBitReader* reader, unsigned error = 0; HuffmanTree tree_ll; /*the huffman tree for literal and length codes*/ HuffmanTree tree_d; /*the huffman tree for distance codes*/ + const size_t reserved_size = 260; /* must be at least 258 for max length, and a few extra for adding a few extra literals */ + int done = 0; + + if(!ucvector_reserve(out, out->size + reserved_size)) return 83; /*alloc fail*/ HuffmanTree_init(&tree_ll); HuffmanTree_init(&tree_d); @@ -1272,14 +1252,21 @@ static unsigned inflateHuffmanBlock(ucvector* out, LodePNGBitReader* reader, if(btype == 1) error = getTreeInflateFixed(&tree_ll, &tree_d); else /*if(btype == 2)*/ error = getTreeInflateDynamic(&tree_ll, &tree_d, reader); - while(!error) /*decode all symbols until end reached, breaks at end code*/ { + + while(!error && !done) /*decode all symbols until end reached, breaks at end code*/ { /*code_ll is literal, length or end code*/ unsigned code_ll; - ensureBits25(reader, 20); /* up to 15 for the huffman symbol, up to 5 for the length extra bits */ + /* ensure enough bits for 2 huffman code reads (15 bits each): if the first is a literal, a second literal is read at once. This + appears to be slightly faster, than ensuring 20 bits here for 1 huffman symbol and the potential 5 extra bits for the length symbol.*/ + ensureBits32(reader, 30); code_ll = huffmanDecodeSymbol(reader, &tree_ll); + if(code_ll <= 255) { + /*slightly faster code path if multiple literals in a row*/ + out->data[out->size++] = (unsigned char)code_ll; + code_ll = huffmanDecodeSymbol(reader, &tree_ll); + } if(code_ll <= 255) /*literal symbol*/ { - if(!ucvector_resize(out, out->size + 1)) ERROR_BREAK(83 /*alloc fail*/); - out->data[out->size - 1] = (unsigned char)code_ll; + out->data[out->size++] = (unsigned char)code_ll; } else if(code_ll >= FIRST_LENGTH_CODE_INDEX && code_ll <= LAST_LENGTH_CODE_INDEX) /*length code*/ { unsigned code_d, distance; unsigned numextrabits_l, numextrabits_d; /*extra bits for length and distance*/ @@ -1292,6 +1279,7 @@ static unsigned inflateHuffmanBlock(ucvector* out, LodePNGBitReader* reader, numextrabits_l = LENGTHEXTRA[code_ll - FIRST_LENGTH_CODE_INDEX]; if(numextrabits_l != 0) { /* bits already ensured above */ + ensureBits25(reader, 5); length += readBits(reader, numextrabits_l); } @@ -1319,7 +1307,7 @@ static unsigned inflateHuffmanBlock(ucvector* out, LodePNGBitReader* reader, if(distance > start) ERROR_BREAK(52); /*too long backward distance*/ backward = start - distance; - if(!ucvector_resize(out, out->size + length)) ERROR_BREAK(83 /*alloc fail*/); + out->size += length; if(distance < length) { size_t forward; lodepng_memcpy(out->data + start, out->data + backward, distance); @@ -1331,10 +1319,13 @@ static unsigned inflateHuffmanBlock(ucvector* out, LodePNGBitReader* reader, lodepng_memcpy(out->data + start, out->data + backward, length); } } else if(code_ll == 256) { - break; /*end code, break the loop*/ + done = 1; /*end code, finish the loop*/ } else /*if(code_ll == INVALIDSYMBOL)*/ { ERROR_BREAK(16); /*error: tried to read disallowed huffman symbol*/ } + if(out->allocsize - out->size < reserved_size) { + if(!ucvector_reserve(out, out->size + reserved_size)) ERROR_BREAK(83); /*alloc fail*/ + } /*check if any of the ensureBits above went out of bounds*/ if(reader->bp > reader->bitsize) { /*return error code 10 or 11 depending on the situation that happened in huffmanDecodeSymbol @@ -1377,8 +1368,11 @@ static unsigned inflateNoCompression(ucvector* out, LodePNGBitReader* reader, /*read the literal data: LEN bytes are now stored in the out buffer*/ if(bytepos + LEN > size) return 23; /*error: reading outside of in buffer*/ - lodepng_memcpy(out->data + out->size - LEN, reader->data + bytepos, LEN); - bytepos += LEN; + /*out->data can be NULL (when LEN is zero), and arithmetics on NULL ptr is undefined*/ + if (LEN) { + lodepng_memcpy(out->data + out->size - LEN, reader->data + bytepos, LEN); + bytepos += LEN; + } reader->bp = bytepos << 3u; @@ -1396,7 +1390,8 @@ static unsigned lodepng_inflatev(ucvector* out, while(!BFINAL) { unsigned BTYPE; - if(!ensureBits9(&reader, 3)) return 52; /*error, bit pointer will jump past memory*/ + if(reader.bitsize - reader.bp < 3) return 52; /*error, bit pointer will jump past memory*/ + ensureBits9(&reader, 3); BFINAL = readBits(&reader, 1); BTYPE = readBits(&reader, 2); @@ -2378,7 +2373,7 @@ const LodePNGDecompressSettings lodepng_default_decompress_settings = {0, 0, 0, /* ////////////////////////////////////////////////////////////////////////// */ -#ifndef LODEPNG_NO_COMPILE_CRC +#ifdef LODEPNG_COMPILE_CRC /* CRC polynomial: 0xedb88320 */ static unsigned lodepng_crc32_table[256] = { 0u, 1996959894u, 3993919788u, 2567524794u, 124634137u, 1886057615u, 3915621685u, 2657392035u, @@ -2424,9 +2419,11 @@ unsigned lodepng_crc32(const unsigned char* data, size_t length) { } return r ^ 0xffffffffu; } -#else /* !LODEPNG_NO_COMPILE_CRC */ +#else /* LODEPNG_COMPILE_CRC */ +/*in this case, the function is only declared here, and must be defined externally +so that it will be linked in*/ unsigned lodepng_crc32(const unsigned char* data, size_t length); -#endif /* !LODEPNG_NO_COMPILE_CRC */ +#endif /* LODEPNG_COMPILE_CRC */ /* ////////////////////////////////////////////////////////////////////////// */ /* / Reading and writing PNG color channel bits / */ @@ -2464,7 +2461,7 @@ static void setBitOfReversedStream(size_t* bitpointer, unsigned char* bitstream, /* ////////////////////////////////////////////////////////////////////////// */ unsigned lodepng_chunk_length(const unsigned char* chunk) { - return lodepng_read32bitInt(&chunk[0]); + return lodepng_read32bitInt(chunk); } void lodepng_chunk_type(char type[5], const unsigned char* chunk) { @@ -2514,34 +2511,32 @@ void lodepng_chunk_generate_crc(unsigned char* chunk) { } unsigned char* lodepng_chunk_next(unsigned char* chunk, unsigned char* end) { - if(chunk >= end || end - chunk < 12) return end; /*too small to contain a chunk*/ + size_t available_size = (size_t)(end - chunk); + if(chunk >= end || available_size < 12) return end; /*too small to contain a chunk*/ if(chunk[0] == 0x89 && chunk[1] == 0x50 && chunk[2] == 0x4e && chunk[3] == 0x47 && chunk[4] == 0x0d && chunk[5] == 0x0a && chunk[6] == 0x1a && chunk[7] == 0x0a) { /* Is PNG magic header at start of PNG file. Jump to first actual chunk. */ return chunk + 8; } else { size_t total_chunk_length; - unsigned char* result; if(lodepng_addofl(lodepng_chunk_length(chunk), 12, &total_chunk_length)) return end; - result = chunk + total_chunk_length; - if(result < chunk) return end; /*pointer overflow*/ - return result; + if(total_chunk_length > available_size) return end; /*outside of range*/ + return chunk + total_chunk_length; } } const unsigned char* lodepng_chunk_next_const(const unsigned char* chunk, const unsigned char* end) { - if(chunk >= end || end - chunk < 12) return end; /*too small to contain a chunk*/ + size_t available_size = (size_t)(end - chunk); + if(chunk >= end || available_size < 12) return end; /*too small to contain a chunk*/ if(chunk[0] == 0x89 && chunk[1] == 0x50 && chunk[2] == 0x4e && chunk[3] == 0x47 && chunk[4] == 0x0d && chunk[5] == 0x0a && chunk[6] == 0x1a && chunk[7] == 0x0a) { /* Is PNG magic header at start of PNG file. Jump to first actual chunk. */ return chunk + 8; } else { size_t total_chunk_length; - const unsigned char* result; if(lodepng_addofl(lodepng_chunk_length(chunk), 12, &total_chunk_length)) return end; - result = chunk + total_chunk_length; - if(result < chunk) return end; /*pointer overflow*/ - return result; + if(total_chunk_length > available_size) return end; /*outside of range*/ + return chunk + total_chunk_length; } } @@ -2586,7 +2581,7 @@ the data is at chunk + 8. To finalize chunk, add the data, then use lodepng_chunk_generate_crc */ static unsigned lodepng_chunk_init(unsigned char** chunk, ucvector* out, - unsigned length, const char* type) { + size_t length, const char* type) { size_t new_length = out->size; if(lodepng_addofl(new_length, length, &new_length)) return 77; if(lodepng_addofl(new_length, 12, &new_length)) return 77; @@ -2594,7 +2589,7 @@ static unsigned lodepng_chunk_init(unsigned char** chunk, *chunk = out->data + new_length - length - 12u; /*1: length*/ - lodepng_set32bitInt(*chunk, length); + lodepng_set32bitInt(*chunk, (unsigned)length); /*2: chunk name (4 letters)*/ lodepng_memcpy(*chunk + 4, type, 4); @@ -2604,7 +2599,7 @@ static unsigned lodepng_chunk_init(unsigned char** chunk, /* like lodepng_chunk_create but with custom allocsize */ static unsigned lodepng_chunk_createv(ucvector* out, - unsigned length, const char* type, const unsigned char* data) { + size_t length, const char* type, const unsigned char* data) { unsigned char* chunk; CERROR_TRY_RETURN(lodepng_chunk_init(&chunk, out, length, type)); @@ -3051,6 +3046,9 @@ void lodepng_info_init(LodePNGInfo* info) { info->iccp_name = NULL; info->iccp_profile = NULL; + info->sbit_defined = 0; + info->sbit_r = info->sbit_g = info->sbit_b = info->sbit_a = 0; + LodePNGUnknownChunks_init(info); #endif /*LODEPNG_COMPILE_ANCILLARY_CHUNKS*/ } @@ -3945,7 +3943,7 @@ static unsigned auto_choose_color(LodePNGColorMode* mode_out, if(mode_in->colortype == LCT_PALETTE && mode_in->palettesize >= mode_out->palettesize && mode_in->bitdepth == mode_out->bitdepth) { /*If input should have same palette colors, keep original to preserve its order and prevent conversion*/ - lodepng_color_mode_cleanup(mode_out); + lodepng_color_mode_cleanup(mode_out); /*clears palette, keeps the above set colortype and bitdepth fields as-is*/ lodepng_color_mode_copy(mode_out, mode_in); } } else /*8-bit or 16-bit per channel*/ { @@ -4135,10 +4133,9 @@ static unsigned unfilterScanline(unsigned char* recon, const unsigned char* scan too much code. Whether this speeds up anything depends on compiler and settings. */ if(bytewidth >= 4) { for(; i + 3 < length; i += 4, j += 4) { - unsigned char s0 = scanline[i + 0], r0 = recon[j + 0], p0 = precon[i + 0]; - unsigned char s1 = scanline[i + 1], r1 = recon[j + 1], p1 = precon[i + 1]; - unsigned char s2 = scanline[i + 2], r2 = recon[j + 2], p2 = precon[i + 2]; - unsigned char s3 = scanline[i + 3], r3 = recon[j + 3], p3 = precon[i + 3]; + unsigned char s0 = scanline[i + 0], s1 = scanline[i + 1], s2 = scanline[i + 2], s3 = scanline[i + 3]; + unsigned char r0 = recon[j + 0], r1 = recon[j + 1], r2 = recon[j + 2], r3 = recon[j + 3]; + unsigned char p0 = precon[i + 0], p1 = precon[i + 1], p2 = precon[i + 2], p3 = precon[i + 3]; recon[i + 0] = s0 + ((r0 + p0) >> 1u); recon[i + 1] = s1 + ((r1 + p1) >> 1u); recon[i + 2] = s2 + ((r2 + p2) >> 1u); @@ -4146,17 +4143,18 @@ static unsigned unfilterScanline(unsigned char* recon, const unsigned char* scan } } else if(bytewidth >= 3) { for(; i + 2 < length; i += 3, j += 3) { - unsigned char s0 = scanline[i + 0], r0 = recon[j + 0], p0 = precon[i + 0]; - unsigned char s1 = scanline[i + 1], r1 = recon[j + 1], p1 = precon[i + 1]; - unsigned char s2 = scanline[i + 2], r2 = recon[j + 2], p2 = precon[i + 2]; + unsigned char s0 = scanline[i + 0], s1 = scanline[i + 1], s2 = scanline[i + 2]; + unsigned char r0 = recon[j + 0], r1 = recon[j + 1], r2 = recon[j + 2]; + unsigned char p0 = precon[i + 0], p1 = precon[i + 1], p2 = precon[i + 2]; recon[i + 0] = s0 + ((r0 + p0) >> 1u); recon[i + 1] = s1 + ((r1 + p1) >> 1u); recon[i + 2] = s2 + ((r2 + p2) >> 1u); } } else if(bytewidth >= 2) { for(; i + 1 < length; i += 2, j += 2) { - unsigned char s0 = scanline[i + 0], r0 = recon[j + 0], p0 = precon[i + 0]; - unsigned char s1 = scanline[i + 1], r1 = recon[j + 1], p1 = precon[i + 1]; + unsigned char s0 = scanline[i + 0], s1 = scanline[i + 1]; + unsigned char r0 = recon[j + 0], r1 = recon[j + 1]; + unsigned char p0 = precon[i + 0], p1 = precon[i + 1]; recon[i + 0] = s0 + ((r0 + p0) >> 1u); recon[i + 1] = s1 + ((r1 + p1) >> 1u); } @@ -4732,6 +4730,47 @@ static unsigned readChunk_iCCP(LodePNGInfo* info, const LodePNGDecoderSettings* if(!error && !info->iccp_profile_size) error = 100; /*invalid ICC profile size*/ return error; } + +/*significant bits chunk (sBIT)*/ +static unsigned readChunk_sBIT(LodePNGInfo* info, const unsigned char* data, size_t chunkLength) { + unsigned bitdepth = (info->color.colortype == LCT_PALETTE) ? 8 : info->color.bitdepth; + if(info->color.colortype == LCT_GREY) { + /*error: this chunk must be 1 bytes for grayscale image*/ + if(chunkLength != 1) return 114; + if(data[0] == 0 || data[0] > bitdepth) return 115; + info->sbit_defined = 1; + info->sbit_r = info->sbit_g = info->sbit_b = data[0]; /*setting g and b is not required, but sensible*/ + } else if(info->color.colortype == LCT_RGB || info->color.colortype == LCT_PALETTE) { + /*error: this chunk must be 3 bytes for RGB and palette image*/ + if(chunkLength != 3) return 114; + if(data[0] == 0 || data[1] == 0 || data[2] == 0) return 115; + if(data[0] > bitdepth || data[1] > bitdepth || data[2] > bitdepth) return 115; + info->sbit_defined = 1; + info->sbit_r = data[0]; + info->sbit_g = data[1]; + info->sbit_b = data[2]; + } else if(info->color.colortype == LCT_GREY_ALPHA) { + /*error: this chunk must be 2 byte for grayscale with alpha image*/ + if(chunkLength != 2) return 114; + if(data[0] == 0 || data[1] == 0) return 115; + if(data[0] > bitdepth || data[1] > bitdepth) return 115; + info->sbit_defined = 1; + info->sbit_r = info->sbit_g = info->sbit_b = data[0]; /*setting g and b is not required, but sensible*/ + info->sbit_a = data[1]; + } else if(info->color.colortype == LCT_RGBA) { + /*error: this chunk must be 4 bytes for grayscale image*/ + if(chunkLength != 4) return 114; + if(data[0] == 0 || data[1] == 0 || data[2] == 0 || data[3] == 0) return 115; + if(data[0] > bitdepth || data[1] > bitdepth || data[2] > bitdepth || data[3] > bitdepth) return 115; + info->sbit_defined = 1; + info->sbit_r = data[0]; + info->sbit_g = data[1]; + info->sbit_b = data[2]; + info->sbit_a = data[3]; + } + + return 0; /* OK */ +} #endif /*LODEPNG_COMPILE_ANCILLARY_CHUNKS*/ unsigned lodepng_inspect_chunk(LodePNGState* state, size_t pos, @@ -4746,7 +4785,7 @@ unsigned lodepng_inspect_chunk(LodePNGState* state, size_t pos, chunkLength = lodepng_chunk_length(chunk); if(chunkLength > 2147483647) return 63; data = lodepng_chunk_data_const(chunk); - if(data + chunkLength + 4 > in + insize) return 30; + if(chunkLength + 12 > insize - pos) return 30; if(lodepng_chunk_type_equals(chunk, "PLTE")) { error = readChunk_PLTE(&state->info_png.color, data, chunkLength); @@ -4773,6 +4812,8 @@ unsigned lodepng_inspect_chunk(LodePNGState* state, size_t pos, error = readChunk_sRGB(&state->info_png, data, chunkLength); } else if(lodepng_chunk_type_equals(chunk, "iCCP")) { error = readChunk_iCCP(&state->info_png, &state->decoder, data, chunkLength); + } else if(lodepng_chunk_type_equals(chunk, "sBIT")) { + error = readChunk_sBIT(&state->info_png, data, chunkLength); #endif /*LODEPNG_COMPILE_ANCILLARY_CHUNKS*/ } else { /* unhandled chunk is ok (is not an error) */ @@ -4791,7 +4832,7 @@ static void decodeGeneric(unsigned char** out, unsigned* w, unsigned* h, LodePNGState* state, const unsigned char* in, size_t insize) { unsigned char IEND = 0; - const unsigned char* chunk; + const unsigned char* chunk; /*points to beginning of next chunk*/ unsigned char* idat; /*the data from idat chunks, zlib compressed*/ size_t idatsize = 0; unsigned char* scanlines = 0; @@ -4827,14 +4868,15 @@ static void decodeGeneric(unsigned char** out, unsigned* w, unsigned* h, while(!IEND && !state->error) { unsigned chunkLength; const unsigned char* data; /*the data in the chunk*/ + size_t pos = (size_t)(chunk - in); - /*error: size of the in buffer too small to contain next chunk*/ - if((size_t)((chunk - in) + 12) > insize || chunk < in) { + /*error: next chunk out of bounds of the in buffer*/ + if(chunk < in || pos + 12 > insize) { if(state->decoder.ignore_end) break; /*other errors may still happen though*/ CERROR_BREAK(state->error, 30); } - /*length of the data of the chunk, excluding the length bytes, chunk type and CRC bytes*/ + /*length of the data of the chunk, excluding the 12 bytes for length, chunk type and CRC*/ chunkLength = lodepng_chunk_length(chunk); /*error: chunk length larger than the max PNG chunk size*/ if(chunkLength > 2147483647) { @@ -4842,8 +4884,8 @@ static void decodeGeneric(unsigned char** out, unsigned* w, unsigned* h, CERROR_BREAK(state->error, 63); } - if((size_t)((chunk - in) + chunkLength + 12) > insize || (chunk + chunkLength + 12) < in) { - CERROR_BREAK(state->error, 64); /*error: size of the in buffer too small to contain next chunk*/ + if(pos + (size_t)chunkLength + 12 > insize || pos + (size_t)chunkLength + 12 < pos) { + CERROR_BREAK(state->error, 64); /*error: size of the in buffer too small to contain next chunk (or int overflow)*/ } data = lodepng_chunk_data_const(chunk); @@ -4917,6 +4959,9 @@ static void decodeGeneric(unsigned char** out, unsigned* w, unsigned* h, } else if(lodepng_chunk_type_equals(chunk, "iCCP")) { state->error = readChunk_iCCP(&state->info_png, &state->decoder, data, chunkLength); if(state->error) break; + } else if(lodepng_chunk_type_equals(chunk, "sBIT")) { + state->error = readChunk_sBIT(&state->info_png, data, chunkLength); + if(state->error) break; #endif /*LODEPNG_COMPILE_ANCILLARY_CHUNKS*/ } else /*it's not an implemented chunk type, so ignore it: skip over the data*/ { /*error: unknown critical chunk (5th bit of first byte of chunk type is 0)*/ @@ -5152,7 +5197,11 @@ static unsigned addChunk_PLTE(ucvector* out, const LodePNGColorMode* info) { unsigned char* chunk; size_t i, j = 8; - CERROR_TRY_RETURN(lodepng_chunk_init(&chunk, out, (unsigned)info->palettesize * 3, "PLTE")); + if(info->palettesize == 0 || info->palettesize > 256) { + return 68; /*invalid palette size, it is only allowed to be 1-256*/ + } + + CERROR_TRY_RETURN(lodepng_chunk_init(&chunk, out, info->palettesize * 3, "PLTE")); for(i = 0; i != info->palettesize; ++i) { /*add all channels except alpha channel*/ @@ -5176,7 +5225,7 @@ static unsigned addChunk_tRNS(ucvector* out, const LodePNGColorMode* info) { --amount; } if(amount) { - CERROR_TRY_RETURN(lodepng_chunk_init(&chunk, out, (unsigned)amount, "tRNS")); + CERROR_TRY_RETURN(lodepng_chunk_init(&chunk, out, amount, "tRNS")); /*add the alpha channel values from the palette*/ for(i = 0; i != amount; ++i) chunk[8 + i] = info->palette[4 * i + 3]; } @@ -5210,7 +5259,7 @@ static unsigned addChunk_IDAT(ucvector* out, const unsigned char* data, size_t d error = zlib_compress(&zlib, &zlibsize, data, datasize, zlibsettings); if(!error) { - error = lodepng_chunk_createv(out, (unsigned)zlibsize, "IDAT", zlib); + error = lodepng_chunk_createv(out, zlibsize, "IDAT", zlib); } lodepng_free(zlib); return error; @@ -5227,7 +5276,7 @@ static unsigned addChunk_tEXt(ucvector* out, const char* keyword, const char* te size_t keysize = lodepng_strlen(keyword), textsize = lodepng_strlen(textstring); size_t size = keysize + 1 + textsize; if(keysize < 1 || keysize > 79) return 89; /*error: invalid keyword size*/ - CERROR_TRY_RETURN(lodepng_chunk_init(&chunk, out, (unsigned)size, "tEXt")); + CERROR_TRY_RETURN(lodepng_chunk_init(&chunk, out, size, "tEXt")); lodepng_memcpy(chunk + 8, keyword, keysize); chunk[8 + keysize] = 0; /*null termination char*/ lodepng_memcpy(chunk + 9 + keysize, textstring, textsize); @@ -5249,7 +5298,7 @@ static unsigned addChunk_zTXt(ucvector* out, const char* keyword, const char* te (const unsigned char*)textstring, textsize, zlibsettings); if(!error) { size_t size = keysize + 2 + compressedsize; - error = lodepng_chunk_init(&chunk, out, (unsigned)size, "zTXt"); + error = lodepng_chunk_init(&chunk, out, size, "zTXt"); } if(!error) { lodepng_memcpy(chunk + 8, keyword, keysize); @@ -5280,7 +5329,7 @@ static unsigned addChunk_iTXt(ucvector* out, unsigned compress, const char* keyw } if(!error) { size_t size = keysize + 3 + langsize + 1 + transsize + 1 + (compress ? compressedsize : textsize); - error = lodepng_chunk_init(&chunk, out, (unsigned)size, "iTXt"); + error = lodepng_chunk_init(&chunk, out, size, "iTXt"); } if(!error) { size_t pos = 8; @@ -5393,7 +5442,7 @@ static unsigned addChunk_iCCP(ucvector* out, const LodePNGInfo* info, LodePNGCom info->iccp_profile, info->iccp_profile_size, zlibsettings); if(!error) { size_t size = keysize + 2 + compressedsize; - error = lodepng_chunk_init(&chunk, out, (unsigned)size, "iCCP"); + error = lodepng_chunk_init(&chunk, out, size, "iCCP"); } if(!error) { lodepng_memcpy(chunk + 8, info->iccp_name, keysize); @@ -5407,6 +5456,42 @@ static unsigned addChunk_iCCP(ucvector* out, const LodePNGInfo* info, LodePNGCom return error; } +static unsigned addChunk_sBIT(ucvector* out, const LodePNGInfo* info) { + unsigned bitdepth = (info->color.colortype == LCT_PALETTE) ? 8 : info->color.bitdepth; + unsigned char* chunk = 0; + if(info->color.colortype == LCT_GREY) { + if(info->sbit_r == 0 || info->sbit_r > bitdepth) return 115; + CERROR_TRY_RETURN(lodepng_chunk_init(&chunk, out, 1, "sBIT")); + chunk[8] = info->sbit_r; + } else if(info->color.colortype == LCT_RGB || info->color.colortype == LCT_PALETTE) { + if(info->sbit_r == 0 || info->sbit_g == 0 || info->sbit_b == 0) return 115; + if(info->sbit_r > bitdepth || info->sbit_g > bitdepth || info->sbit_b > bitdepth) return 115; + CERROR_TRY_RETURN(lodepng_chunk_init(&chunk, out, 3, "sBIT")); + chunk[8] = info->sbit_r; + chunk[9] = info->sbit_g; + chunk[10] = info->sbit_b; + } else if(info->color.colortype == LCT_GREY_ALPHA) { + if(info->sbit_r == 0 || info->sbit_a == 0) return 115; + if(info->sbit_r > bitdepth || info->sbit_a > bitdepth) return 115; + CERROR_TRY_RETURN(lodepng_chunk_init(&chunk, out, 2, "sBIT")); + chunk[8] = info->sbit_r; + chunk[9] = info->sbit_a; + } else if(info->color.colortype == LCT_RGBA) { + if(info->sbit_r == 0 || info->sbit_g == 0 || info->sbit_b == 0 || info->sbit_a == 0 || + info->sbit_r > bitdepth || info->sbit_g > bitdepth || + info->sbit_b > bitdepth || info->sbit_a > bitdepth) { + return 115; + } + CERROR_TRY_RETURN(lodepng_chunk_init(&chunk, out, 4, "sBIT")); + chunk[8] = info->sbit_r; + chunk[9] = info->sbit_g; + chunk[10] = info->sbit_b; + chunk[11] = info->sbit_a; + } + if(chunk) lodepng_chunk_generate_crc(chunk); + return 0; +} + #endif /*LODEPNG_COMPILE_ANCILLARY_CHUNKS*/ static void filterScanline(unsigned char* out, const unsigned char* scanline, const unsigned char* prevline, @@ -5852,8 +5937,10 @@ unsigned lodepng_encode(unsigned char** out, size_t* outsize, ucvector outv = ucvector_init(NULL, 0); LodePNGInfo info; const LodePNGInfo* info_png = &state->info_png; + LodePNGColorMode auto_color; lodepng_info_init(&info); + lodepng_color_mode_init(&auto_color); /*provide some proper output values if error will happen*/ *out = 0; @@ -5863,6 +5950,10 @@ unsigned lodepng_encode(unsigned char** out, size_t* outsize, /*check input values validity*/ if((info_png->color.colortype == LCT_PALETTE || state->encoder.force_palette) && (info_png->color.palettesize == 0 || info_png->color.palettesize > 256)) { + /*this error is returned even if auto_convert is enabled and thus encoder could + generate the palette by itself: while allowing this could be possible in theory, + it may complicate the code or edge cases, and always requiring to give a palette + when setting this color type is a simpler contract*/ state->error = 68; /*invalid palette size, it is only allowed to be 1-256*/ goto cleanup; } @@ -5883,6 +5974,7 @@ unsigned lodepng_encode(unsigned char** out, size_t* outsize, lodepng_info_copy(&info, &state->info_png); if(state->encoder.auto_convert) { LodePNGColorStats stats; + unsigned allow_convert = 1; lodepng_color_stats_init(&stats); #ifdef LODEPNG_COMPILE_ANCILLARY_CHUNKS if(info_png->iccp_defined && @@ -5904,23 +5996,85 @@ unsigned lodepng_encode(unsigned char** out, size_t* outsize, /*the background chunk's color must be taken into account as well*/ unsigned r = 0, g = 0, b = 0; LodePNGColorMode mode16 = lodepng_color_mode_make(LCT_RGB, 16); - lodepng_convert_rgb(&r, &g, &b, info_png->background_r, info_png->background_g, info_png->background_b, &mode16, &info_png->color); + lodepng_convert_rgb(&r, &g, &b, + info_png->background_r, info_png->background_g, info_png->background_b, &mode16, &info_png->color); state->error = lodepng_color_stats_add(&stats, r, g, b, 65535); if(state->error) goto cleanup; } #endif /* LODEPNG_COMPILE_ANCILLARY_CHUNKS */ - state->error = auto_choose_color(&info.color, &state->info_raw, &stats); + state->error = auto_choose_color(&auto_color, &state->info_raw, &stats); if(state->error) goto cleanup; #ifdef LODEPNG_COMPILE_ANCILLARY_CHUNKS - /*also convert the background chunk*/ - if(info_png->background_defined) { - if(lodepng_convert_rgb(&info.background_r, &info.background_g, &info.background_b, - info_png->background_r, info_png->background_g, info_png->background_b, &info.color, &info_png->color)) { - state->error = 104; - goto cleanup; + if(info_png->sbit_defined) { + /*if sbit is defined, due to strict requirements of which sbit values can be present for which color modes, + auto_convert can't be done in many cases. However, do support a few cases here. + TODO: more conversions may be possible, and it may also be possible to get a more appropriate color type out of + auto_choose_color if knowledge about sbit is used beforehand + */ + unsigned sbit_max = LODEPNG_MAX(LODEPNG_MAX(LODEPNG_MAX(info_png->sbit_r, info_png->sbit_g), + info_png->sbit_b), info_png->sbit_a); + unsigned equal = (!info_png->sbit_g || info_png->sbit_g == info_png->sbit_r) + && (!info_png->sbit_b || info_png->sbit_b == info_png->sbit_r) + && (!info_png->sbit_a || info_png->sbit_a == info_png->sbit_r); + allow_convert = 0; + if(info.color.colortype == LCT_PALETTE && + auto_color.colortype == LCT_PALETTE) { + /* input and output are palette, and in this case it may happen that palette data is + expected to be copied from info_raw into the info_png */ + allow_convert = 1; + } + /*going from 8-bit RGB to palette (or 16-bit as long as sbit_max <= 8) is possible + since both are 8-bit RGB for sBIT's purposes*/ + if(info.color.colortype == LCT_RGB && + auto_color.colortype == LCT_PALETTE && sbit_max <= 8) { + allow_convert = 1; + } + /*going from 8-bit RGBA to palette is also ok but only if sbit_a is exactly 8*/ + if(info.color.colortype == LCT_RGBA && auto_color.colortype == LCT_PALETTE && + info_png->sbit_a == 8 && sbit_max <= 8) { + allow_convert = 1; + } + /*going from 16-bit RGB(A) to 8-bit RGB(A) is ok if all sbit values are <= 8*/ + if((info.color.colortype == LCT_RGB || info.color.colortype == LCT_RGBA) && info.color.bitdepth == 16 && + auto_color.colortype == info.color.colortype && auto_color.bitdepth == 8 && + sbit_max <= 8) { + allow_convert = 1; + } + /*going to less channels is ok if all bit values are equal (all possible values in sbit, + as well as the chosen bitdepth of the result). Due to how auto_convert works, + we already know that auto_color.colortype has less than or equal amount of channels than + info.colortype. Palette is not used here. This conversion is not allowed if + info_png->sbit_r < auto_color.bitdepth, because specifically for alpha, non-presence of + an sbit value heavily implies that alpha's bit depth is equal to the PNG bit depth (rather + than the bit depths set in the r, g and b sbit values, by how the PNG specification describes + handling tRNS chunk case with sBIT), so be conservative here about ignoring user input.*/ + if(info.color.colortype != LCT_PALETTE && auto_color.colortype != LCT_PALETTE && + equal && info_png->sbit_r == auto_color.bitdepth) { + allow_convert = 1; } } +#endif + if(state->encoder.force_palette) { + if(info.color.colortype != LCT_GREY && info.color.colortype != LCT_GREY_ALPHA && + (auto_color.colortype == LCT_GREY || auto_color.colortype == LCT_GREY_ALPHA)) { + /*user speficially forced a PLTE palette, so cannot convert to grayscale types because + the PNG specification only allows writing a suggested palette in PLTE for truecolor types*/ + allow_convert = 0; + } + } + if(allow_convert) { + lodepng_color_mode_copy(&info.color, &auto_color); +#ifdef LODEPNG_COMPILE_ANCILLARY_CHUNKS + /*also convert the background chunk*/ + if(info_png->background_defined) { + if(lodepng_convert_rgb(&info.background_r, &info.background_g, &info.background_b, + info_png->background_r, info_png->background_g, info_png->background_b, &info.color, &info_png->color)) { + state->error = 104; + goto cleanup; + } + } #endif /* LODEPNG_COMPILE_ANCILLARY_CHUNKS */ + } } #ifdef LODEPNG_COMPILE_ANCILLARY_CHUNKS if(info_png->iccp_defined) { @@ -5991,6 +6145,10 @@ unsigned lodepng_encode(unsigned char** out, size_t* outsize, state->error = addChunk_cHRM(&outv, &info); if(state->error) goto cleanup; } + if(info_png->sbit_defined) { + state->error = addChunk_sBIT(&outv, &info); + if(state->error) goto cleanup; + } #endif /*LODEPNG_COMPILE_ANCILLARY_CHUNKS*/ /*PLTE*/ if(info.color.colortype == LCT_PALETTE) { @@ -6097,6 +6255,7 @@ unsigned lodepng_encode(unsigned char** out, size_t* outsize, cleanup: lodepng_info_cleanup(&info); lodepng_free(data); + lodepng_color_mode_cleanup(&auto_color); /*instead of cleaning the vector up, give it to the output*/ *out = outv.data; @@ -6291,6 +6450,8 @@ const char* lodepng_error_text(unsigned code) { /*max ICC size limit can be configured in LodePNGDecoderSettings. This error prevents unreasonable memory consumption when decoding due to impossibly large ICC profile*/ case 113: return "ICC profile unreasonably large"; + case 114: return "sBIT chunk has wrong size for the color type of the image"; + case 115: return "sBIT value out of range"; } return "unknown error code"; } @@ -6327,7 +6488,7 @@ unsigned decompress(std::vector& out, const unsigned char* in, si size_t buffersize = 0; unsigned error = zlib_decompress(&buffer, &buffersize, 0, in, insize, &settings); if(buffer) { - out.insert(out.end(), &buffer[0], &buffer[buffersize]); + out.insert(out.end(), buffer, &buffer[buffersize]); lodepng_free(buffer); } return error; @@ -6346,7 +6507,7 @@ unsigned compress(std::vector& out, const unsigned char* in, size size_t buffersize = 0; unsigned error = zlib_compress(&buffer, &buffersize, in, insize, &settings); if(buffer) { - out.insert(out.end(), &buffer[0], &buffer[buffersize]); + out.insert(out.end(), buffer, &buffer[buffersize]); lodepng_free(buffer); } return error; @@ -6391,7 +6552,7 @@ unsigned decode(std::vector& out, unsigned& w, unsigned& h, const state.info_raw.colortype = colortype; state.info_raw.bitdepth = bitdepth; size_t buffersize = lodepng_get_raw_size(w, h, &state.info_raw); - out.insert(out.end(), &buffer[0], &buffer[buffersize]); + out.insert(out.end(), buffer, &buffer[buffersize]); } lodepng_free(buffer); return error; @@ -6409,7 +6570,7 @@ unsigned decode(std::vector& out, unsigned& w, unsigned& h, unsigned error = lodepng_decode(&buffer, &w, &h, &state, in, insize); if(buffer && !error) { size_t buffersize = lodepng_get_raw_size(w, h, &state.info_raw); - out.insert(out.end(), &buffer[0], &buffer[buffersize]); + out.insert(out.end(), buffer, &buffer[buffersize]); } lodepng_free(buffer); return error; @@ -6441,7 +6602,7 @@ unsigned encode(std::vector& out, const unsigned char* in, unsign size_t buffersize; unsigned error = lodepng_encode_memory(&buffer, &buffersize, in, w, h, colortype, bitdepth); if(buffer) { - out.insert(out.end(), &buffer[0], &buffer[buffersize]); + out.insert(out.end(), buffer, &buffer[buffersize]); lodepng_free(buffer); } return error; @@ -6461,7 +6622,7 @@ unsigned encode(std::vector& out, size_t buffersize; unsigned error = lodepng_encode(&buffer, &buffersize, in, w, h, &state); if(buffer) { - out.insert(out.end(), &buffer[0], &buffer[buffersize]); + out.insert(out.end(), buffer, &buffer[buffersize]); lodepng_free(buffer); } return error; diff --git a/source/LODEPNG.H b/source/LODEPNG.H index 3e1da92..fdafc77 100644 --- a/source/LODEPNG.H +++ b/source/LODEPNG.H @@ -1,7 +1,7 @@ /* -LodePNG version 20210627 +LodePNG version 20220717 -Copyright (c) 2005-2021 Lode Vandevenne +Copyright (c) 2005-2022 Lode Vandevenne This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -35,43 +35,50 @@ The following #defines are used to create code sections. They can be disabled to disable code sections, which can give faster compile time and smaller binary. The "NO_COMPILE" defines are designed to be used to pass as defines to the compiler command to disable them without modifying this header, e.g. --DLODEPNG_NO_COMPILE_ZLIB for gcc. -In addition to those below, you can also define LODEPNG_NO_COMPILE_CRC to -allow implementing a custom lodepng_crc32. +-DLODEPNG_NO_COMPILE_ZLIB for gcc or clang. */ /*deflate & zlib. If disabled, you must specify alternative zlib functions in the custom_zlib field of the compress and decompress settings*/ #ifndef LODEPNG_NO_COMPILE_ZLIB +/*pass -DLODEPNG_NO_COMPILE_ZLIB to the compiler to disable this, or comment out LODEPNG_COMPILE_ZLIB below*/ #define LODEPNG_COMPILE_ZLIB #endif /*png encoder and png decoder*/ #ifndef LODEPNG_NO_COMPILE_PNG +/*pass -DLODEPNG_NO_COMPILE_PNG to the compiler to disable this, or comment out LODEPNG_COMPILE_PNG below*/ #define LODEPNG_COMPILE_PNG #endif /*deflate&zlib decoder and png decoder*/ #ifndef LODEPNG_NO_COMPILE_DECODER +/*pass -DLODEPNG_NO_COMPILE_DECODER to the compiler to disable this, or comment out LODEPNG_COMPILE_DECODER below*/ #define LODEPNG_COMPILE_DECODER #endif /*deflate&zlib encoder and png encoder*/ #ifndef LODEPNG_NO_COMPILE_ENCODER +/*pass -DLODEPNG_NO_COMPILE_ENCODER to the compiler to disable this, or comment out LODEPNG_COMPILE_ENCODER below*/ #define LODEPNG_COMPILE_ENCODER #endif /*the optional built in harddisk file loading and saving functions*/ #ifndef LODEPNG_NO_COMPILE_DISK +/*pass -DLODEPNG_NO_COMPILE_DISK to the compiler to disable this, or comment out LODEPNG_COMPILE_DISK below*/ #define LODEPNG_COMPILE_DISK #endif /*support for chunks other than IHDR, IDAT, PLTE, tRNS, IEND: ancillary and unknown chunks*/ #ifndef LODEPNG_NO_COMPILE_ANCILLARY_CHUNKS +/*pass -DLODEPNG_NO_COMPILE_ANCILLARY_CHUNKS to the compiler to disable this, +or comment out LODEPNG_COMPILE_ANCILLARY_CHUNKS below*/ #define LODEPNG_COMPILE_ANCILLARY_CHUNKS #endif /*ability to convert error numerical codes to English text string*/ #ifndef LODEPNG_NO_COMPILE_ERROR_TEXT +/*pass -DLODEPNG_NO_COMPILE_ERROR_TEXT to the compiler to disable this, +or comment out LODEPNG_COMPILE_ERROR_TEXT below*/ #define LODEPNG_COMPILE_ERROR_TEXT #endif @@ -79,12 +86,24 @@ the custom_zlib field of the compress and decompress settings*/ you can define the functions lodepng_free, lodepng_malloc and lodepng_realloc in your source files with custom allocators.*/ #ifndef LODEPNG_NO_COMPILE_ALLOCATORS +/*pass -DLODEPNG_NO_COMPILE_ALLOCATORS to the compiler to disable the built-in ones, +or comment out LODEPNG_COMPILE_ALLOCATORS below*/ #define LODEPNG_COMPILE_ALLOCATORS #endif +/*Disable built-in CRC function, in that case a custom implementation of +lodepng_crc32 must be defined externally so that it can be linked in.*/ +#ifndef LODEPNG_NO_COMPILE_CRC +/*pass -DLODEPNG_NO_COMPILE_CRC to the compiler to disable the built-in one, +or comment out LODEPNG_COMPILE_CRC below*/ +#define LODEPNG_COMPILE_CRC +#endif + /*compile the C++ version (you can disable the C++ wrapper here even when compiling for C++)*/ #ifdef __cplusplus #ifndef LODEPNG_NO_COMPILE_CPP +/*pass -DLODEPNG_NO_COMPILE_CPP to the compiler to disable C++ (not needed if a C-only compiler), +or comment out LODEPNG_COMPILE_CPP below*/ #define LODEPNG_COMPILE_CPP #endif #endif @@ -374,8 +393,10 @@ typedef struct LodePNGColorMode { The alpha channels must be set as well, set them to 255 for opaque images. - When decoding, by default you can ignore this palette, since LodePNG already - fills the palette colors in the pixels of the raw RGBA output. + When decoding, with the default settings you can ignore this palette, since + LodePNG already fills the palette colors in the pixels of the raw RGBA output, + but when decoding to the original PNG color mode it is needed to reconstruct + the colors. The palette is only supported for color type 3. */ @@ -465,10 +486,12 @@ typedef struct LodePNGInfo { with values truncated to the bit depth in the unsigned integer. For grayscale and palette PNGs, the value is stored in background_r. The values - in background_g and background_b are then unused. + in background_g and background_b are then unused. The decoder will set them + equal to background_r, the encoder ignores them in this case. - So when decoding, you may get these in a different color mode than the one you requested - for the raw pixels. + When decoding, you may get these in a different color mode than the one you requested + for the raw pixels: the colortype and bitdepth defined by info_png.color, that is the + ones defined in the header of the PNG image, are used. When encoding with auto_convert, you must use the color model defined in info_png.color for these values. The encoder normally ignores info_png.color when auto_convert is on, but will @@ -535,7 +558,7 @@ typedef struct LodePNGInfo { unsigned phys_unit; /*may be 0 (unknown unit) or 1 (metre)*/ /* - Color profile related chunks: gAMA, cHRM, sRGB, iCPP + Color profile related chunks: gAMA, cHRM, sRGB, iCPP, sBIT LodePNG does not apply any color conversions on pixels in the encoder or decoder and does not interpret these color profile values. It merely passes on the information. If you wish to use color profiles and convert colors, please @@ -598,6 +621,45 @@ typedef struct LodePNGInfo { unsigned char* iccp_profile; unsigned iccp_profile_size; /* The size of iccp_profile in bytes */ + /* + sBIT chunk: significant bits. Optional metadata, only set this if needed. + + If defined, these values give the bit depth of the original data. Since PNG only stores 1, 2, 4, 8 or 16-bit + per channel data, the significant bits value can be used to indicate the original encoded data has another + sample depth, such as 10 or 12. + + Encoders using this value, when storing the pixel data, should use the most significant bits + of the data to store the original bits, and use a good sample depth scaling method such as + "left bit replication" to fill in the least significant bits, rather than fill zeroes. + + Decoders using this value, if able to work with data that's e.g. 10-bit or 12-bit, should right + shift the data to go back to the original bit depth, but decoders are also allowed to ignore + sbit and work e.g. with the 8-bit or 16-bit data from the PNG directly, since thanks + to the encoder contract, the values encoded in PNG are in valid range for the PNG bit depth. + + For grayscale images, sbit_g and sbit_b are not used, and for images that don't use color + type RGBA or grayscale+alpha, sbit_a is not used (it's not used even for palette images with + translucent palette values, or images with color key). The values that are used must be + greater than zero and smaller than or equal to the PNG bit depth. + + The color type from the header in the PNG image defines these used and unused fields: if + decoding with a color mode conversion, such as always decoding to RGBA, this metadata still + only uses the color type of the original PNG, and may e.g. lack the alpha channel info + if the PNG was RGB. When encoding with auto_convert (as well as without), also always the + color model defined in info_png.color determines this. + + NOTE: enabling sbit can hurt compression, because the encoder can then not always use + auto_convert to choose a more optimal color mode for the data, because the PNG format has + strict requirements for the allowed sbit values in combination with color modes. + For example, setting these fields to 10-bit will force the encoder to keep using a 16-bit per channel + color mode, even if the pixel data would in fact fit in a more efficient 8-bit mode. + */ + unsigned sbit_defined; /*is significant bits given? if not, the values below are unused*/ + unsigned sbit_r; /*red or gray component of significant bits*/ + unsigned sbit_g; /*green component of significant bits*/ + unsigned sbit_b; /*blue component of significant bits*/ + unsigned sbit_a; /*alpha component of significant bits*/ + /* End of color profile related chunks */ @@ -770,7 +832,11 @@ typedef struct LodePNGEncoderSettings { const unsigned char* predefined_filters; /*force creating a PLTE chunk if colortype is 2 or 6 (= a suggested palette). - If colortype is 3, PLTE is _always_ created.*/ + If colortype is 3, PLTE is always created. If color type is explicitely set + to a grayscale type (1 or 4), this is not done and is ignored. If enabling this, + a palette must be present in the info_png. + NOTE: enabling this may worsen compression if auto_convert is used to choose + optimal color mode, because it cannot use grayscale color modes in this case*/ unsigned force_palette; #ifdef LODEPNG_COMPILE_ANCILLARY_CHUNKS /*add LodePNG identifier and version as a text chunk, for debugging*/ @@ -824,8 +890,8 @@ unsigned lodepng_inspect(unsigned* w, unsigned* h, #endif /*LODEPNG_COMPILE_DECODER*/ /* -Reads one metadata chunk (other than IHDR) of the PNG file and outputs what it -read in the state. Returns error code on failure. +Reads one metadata chunk (other than IHDR, which is handled by lodepng_inspect) +of the PNG file and outputs what it read in the state. Returns error code on failure. Use lodepng_inspect first with a new state, then e.g. lodepng_chunk_find_const to find the desired chunk type, and if non null use lodepng_inspect_chunk (with chunk_pointer - start_of_file as pos). @@ -1103,7 +1169,7 @@ TODO: [.] check compatibility with various compilers - done but needs to be redone for every newer version [X] converting color to 16-bit per channel types [X] support color profile chunk types (but never let them touch RGB values by default) -[ ] support all public PNG chunk types (almost done except sBIT, sPLT and hIST) +[ ] support all public PNG chunk types (almost done except sPLT and hIST) [ ] make sure encoder generates no chunks with size > (2^31)-1 [ ] partial decoding (stream processing) [X] let the "isFullyOpaque" function check color keys and transparent palettes too @@ -1230,18 +1296,16 @@ The following features are supported by the decoder: gAMA: RGB gamma correction iCCP: ICC color profile sRGB: rendering intent + sBIT: significant bits 1.2. features not supported --------------------------- -The following features are _not_ supported: +The following features are not (yet) supported: *) some features needed to make a conformant PNG-Editor might be still missing. *) partial loading/stream processing. All data must be available and is processed in one call. -*) The following public chunks are not (yet) supported but treated as unknown chunks by LodePNG: - sBIT - hIST - sPLT +*) The hIST and sPLT public chunks are not (yet) supported but treated as unknown chunks 2. C and C++ version @@ -1845,6 +1909,8 @@ symbol. Not all changes are listed here, the commit history in github lists more: https://github.com/lvandeve/lodepng +*) 13 jun 2022: added support for the sBIT chunk. +*) 09 jan 2022: minor decoder speed improvements. *) 27 jun 2021: added warnings that file reading/writing functions don't support wide-character filenames (support for this is not planned, opening files is not the core part of PNG decoding/decoding and is platform dependent). @@ -2015,5 +2081,5 @@ Domain: gmail dot com. Account: lode dot vandevenne. -Copyright (c) 2005-2021 Lode Vandevenne +Copyright (c) 2005-2022 Lode Vandevenne */ diff --git a/source/MOPS.C b/source/MOPS.C index 7198f7a..8bf460f 100644 --- a/source/MOPS.C +++ b/source/MOPS.C @@ -1161,8 +1161,11 @@ VOID ReadIO(BYTE *a, DWORD d, DWORD s, BOOL bUpdate) case 0x15: // RBR MSB if (bUpdate) { - Chipset.IORam[RCS] &= ~RBF; *a = Chipset.IORam[d]; // return RBR value + if (d==0x15) // reading RBR MSB + { + Chipset.IORam[RCS] &= ~RBF; // clear Receive Buffer Full flag + } UpdateUSRQ(); // update USRQ rbr_acc = TRUE; // search for new RBR value #if defined DEBUG_SERIAL @@ -1614,13 +1617,13 @@ VOID WriteIO(BYTE *a, DWORD d, DWORD s) // 0011A @ IR Control Register [IRI EIRU EIRI IRE] (bit 3 is read-only) // 0011A @ IR Input, Enable IR UART mode, Enable IR Interrupt, IR Event case 0x1A: - // COM port open and EIRU bit changed - if (bCommInit && ((c^Chipset.IORam[d]) & EIRU) != 0) + // EIRU bit changed + if (((c^Chipset.IORam[d]) & EIRU) != 0) { // save new value for COM open Chipset.IORam[d]=(Chipset.IORam[d]&8)|(c&7); // reopen COM port with new setting - bCommInit = CommOpen(szSerialWire,szSerialIr); + CommOpen(szSerialWire,szSerialIr); } Chipset.IORam[d]=(Chipset.IORam[d]&8)|(c&7); #if defined DEBUG_SERIAL diff --git a/source/MRU.C b/source/MRU.C index baf367c..a72e4a9 100644 --- a/source/MRU.C +++ b/source/MRU.C @@ -84,7 +84,7 @@ VOID MruCleanup(VOID) { for (i = 0; i < nEntry; ++i) // cleanup each entry { - if (ppszFiles[i] != NULL) + if (ppszFiles[i] != NULL) // valid entry free(ppszFiles[i]); // cleanup entry } @@ -111,7 +111,7 @@ VOID MruAdd(LPCTSTR lpszEntry) for (i = 0; i < nEntry; ++i) { // already in table -> quit - if ( ppszFiles[i] != NULL + if ( ppszFiles[i] != NULL // valid entry && lstrcmpi(ppszFiles[i],szFilename) == 0) { MruMoveTop(i); // move to top and update menu @@ -120,7 +120,7 @@ VOID MruAdd(LPCTSTR lpszEntry) } i = nEntry - 1; // last index - if (ppszFiles[i] != NULL) + if (ppszFiles[i] != NULL) // valid entry free(ppszFiles[i]); // free oldest entry for (; i > 0; --i) // move old entries 1 line down @@ -173,16 +173,43 @@ UINT MruEntries(VOID) return nEntry; } -LPCTSTR MruFilename(UINT nIndex) +UINT MruID(LPCTSTR lpszEntry) { - LPCTSTR lpszName = _T(""); + TCHAR szFilename[MAX_PATH]; + LPTSTR lpFilePart; + UINT i; + + if (ppszFiles != NULL) // MRU initialized + { + _ASSERT(nEntry > 0); // must have entries + + // get full path name + GetFullPathName(lpszEntry,ARRAYSIZEOF(szFilename),szFilename,&lpFilePart); + + // look if entry is already in table + for (i = 0; i < nEntry; ++i) + { + if ( ppszFiles[i] != NULL // valid entry + && lstrcmpi(ppszFiles[i],szFilename) == 0) + { + return i; // return ID + } + } + } + return (UINT) -1; // not found +} + +VOID MruFilename(UINT nIndex, LPTSTR szFilename, UINT nBuffersize) +{ + *szFilename = 0; // not found // MRU initialized and index inside valid range if (ppszFiles != NULL && nIndex < nEntry) { - lpszName = ppszFiles[nIndex]; + _ASSERT(ppszFiles[nIndex] != NULL); // valid entry + lstrcpyn(szFilename,ppszFiles[nIndex],nBuffersize); } - return lpszName; + return; } VOID MruUpdateMenu(HMENU hMenu) @@ -312,7 +339,7 @@ VOID MruWriteList(VOID) { _ASSERT(ppszFiles != NULL); // MRU not initialized wsprintf(szItemname,_T("File%d"),i+1); - if (ppszFiles[i] != NULL) + if (ppszFiles[i] != NULL) // valid entry { WriteSettingsString(_T("MRU"),szItemname,ppszFiles[i]); } @@ -338,7 +365,7 @@ VOID MruReadList(VOID) wsprintf(szItemname,_T("File%d"),i+1); ReadSettingsString(_T("MRU"),szItemname,_T(""),szFilename,ARRAYSIZEOF(szFilename)); - if (ppszFiles[i] != NULL) // already filled + if (ppszFiles[i] != NULL) // valid entry { free(ppszFiles[i]); // free entry ppszFiles[i] = NULL; // clear last line diff --git a/source/PCH.H b/source/PCH.H index 31cb02a..a905b1c 100644 --- a/source/PCH.H +++ b/source/PCH.H @@ -51,6 +51,7 @@ #endif #if _MSC_VER <= 1200 // missing type definition in the MSVC6.0 SDK and earlier +#define __unaligned #define SetWindowLongPtr SetWindowLong #define GetWindowLongPtr GetWindowLong #define SetClassLongPtr SetClassLong diff --git a/source/SERIAL.C b/source/SERIAL.C index ecdde4a..81f59a3 100644 --- a/source/SERIAL.C +++ b/source/SERIAL.C @@ -93,6 +93,11 @@ static DWORD WINAPI EventThread(LPVOID pParam) UNREFERENCED_PARAMETER(pParam); } +BOOL CommIsOpen(VOID) +{ + return hComm != NULL; // have COM port handle +} + BOOL CommOpen(LPTSTR strWirePort,LPTSTR strIrPort) { COMMTIMEOUTS CommTimeouts = { MAXDWORD, 0L, 0L, 0L, 0L }; @@ -353,7 +358,7 @@ VOID CommReceive(VOID) // reject reading if com port is closed and not whole operation if (hComm && dwBytesRead == 0L) // com port open and buffer empty { - if (ReadFile(hComm,&cBuffer,sizeof(cBuffer),&dwBytesRead,&os) == FALSE) + if (ReadFile(hComm,cBuffer,sizeof(cBuffer),&dwBytesRead,&os) == FALSE) dwBytesRead = 0L; else // bytes received nRp = 0; // reset read pointer diff --git a/source/gpl.txt b/source/gpl.txt new file mode 100644 index 0000000..45645b4 --- /dev/null +++ b/source/gpl.txt @@ -0,0 +1,340 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc. + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Library General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + , 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Library General +Public License instead of this License.