ZSoft PCX (.pcx)
ZSoft תקןמפת הסיביות ZSoft PC Paintbrush (PCX) היא פורמט הגרפיקה המוקדם והאגדי למחשבים אישיים שהפך לתקן תמונות הרסטר הראשון שאומץ רחב עבור MS-DOS, מחשבי IBM PC תואמים ומשחקי מחשב קלאסיים.
המר PCX ל-PNG
ממיר חינמי מ-PCX ל-PNG פועל בדפדפן. המר קבצים באופן מיידי במכשיר שלך.
בדיקה ומטא-דאטה
מערכות הפעלה ומנתחי קבצים מזהים קבצי PCX על ידי בדיקת רצף הבייטים הבינארי הראשוני:
חתימת כותרת ברמת הבייט (Magic Bytes)
מערכות הפעלה ומנתחי קבצים מזהים קבצי PCX על ידי בדיקת רצף הבייטים הבינארי הראשוני:
חתימת HEX (היסט 0):
0A 05 01ייצוג ASCII: ...
תקינה: ZSoft PC Paintbrush Technical Reference Manual
מפרט טכני
| ארכיטקטורת מעטפת | 128-byte fixed header followed by RLE-compressed scanlines and optional trailing 256-color palette |
| דחיסה | Byte-oriented run-length encoding (RLE) with 0xC0 count indicator bits |
| סדר בתים (Endianness) | Little-Endian (Intel x86) |
| מרחבי צבע | CGA 4-color, EGA 16-color, or VGA 256-color paletted RGB |
| ערוצים ומבנה | 1, 2, 4, or 8-bit paletted, or 24-bit RGB planar (3 planes of 8-bit data) |
| ממדים מרביים | 65,535 x 65,535 pixels (16-bit coordinates) |
| שקיפות | None (opaque legacy raster) |
| הזרמה ופרוגרסיביות | Sequential scanline-by-scanline playback |
מטריצת השוואה טכנית: PCX מול מתחרים
| תכונה טכנית | PCX (נוכחי) | BMP | GIF | PNG |
|---|---|---|---|---|
| עידן פעיל | 1985 - 1995 (תור הזהב של MS-DOS) | 1990 - היום (תקן Windows) | 1987 - היום (תקן רשת) | 1996 - היום (תקן רשת מודרני) |
| אלגוריתם דחיסה | דחיסת RLE מסוג Byte-run | ללא דחיסה / RLE | דחיסה ללא פטנט מסוג LZW | דחיסת Deflate LZ77 |
| ארכיטקטורת צבע | מישורי סיביות EGA/VGA ומבוסס פלטה | שורות סריקה DIB | 256 צבעים ממופתים (Indexed) | צבע אמיתי 24/48-bit + אלפא |
| מיקום הפלטה | מצורף בסוף הקובץ EOF (768 בתים) | בקרבת כותרת הקובץ | בקרבת כותרת הקובץ | מקטע PLTE משובץ |
מצבי שיחשות נפוצים ומדריך שחזור הקסדצימלי (Hex)
צבעי התמונה מוצגים הפוכים לחלוטין או מעוותים כמו תשליל פסיכדלי.
גורם שורש: בלוק פלטת VGA של 256 צבעים חסר או מקוצץ בסוף הקובץ.
התאוששות: החילו מחדש את פלטת ה-VGA ברירת המחדל או בצעו המרה ל-PNG באמצעות ממיר ה-PCX של File2File.
ניתוח אבטחה ווקטורי התקפה על מנתחים (Parsers)
מפענחי PCX מעבדים בתים דחוסים באורכי ריצה (Run-length) לשורות סריקה שבהן ספירות ריצה פגומות עלולות לגרום לגלישות חוצץ בזיכרון ה-Heap.
ווקטורי תקיפה ידועים
- ריצת בית RLE החורגת מרוחב שורת הסריקה וגורמת לכתיבת זיכרון מעבר לגבולות החוצץ.
- גלישת חוצץ בעת קריאת מישורים מעבר למספר המישורים המוצהר בכותרת.
- מניעת שירות (DoS) באמצעות חישובי היסט פלטה מושחתים.
השיטות המומלצות להגנה:
היסטוריה ואבני דרך
יתרונות מרכזיים
- חשיבות היסטורית עשירה: הפורמט הבסיסי של מהפכת המשחקים המוקדמת למחשבי IBM PC ותוכנות השיירוור.
- מבנה זיכרון שטוח המכוון לחומרה מאפשר העתקה ישירה לזיכרון כרטיס המסך EGA/VGA.
- דחיסת RLE קלת משקל מפחיתה את גודלי הקבצים של איורים ודיאגרמות בעלי מספר צבעים נמוך.
מגבלות טכניות וחסרונות
- התיישנות: כמעט כל זרימות העבודה המודרניות עברו ל-PNG ולפורמטי רסטר מודרניים.
- פלטת 256 הצבעים של VGA מצורפת ממש בסוף הקובץ, מה שמחייב קריאה מלאה של הקובץ כדי לפענח את הצבעים.
- דחיסה לא יעילה על גבי תצלומי צבע מורכבים.
עובדות טכניות מעניינות
- הבית הראשון בכל קובץ PCX הוא תמיד 0x0A (עשרוני 10), המייצג את מזהה היצרן הפנימי של ZSoft.
- כדי לבדוק אם לקובץ PCX בעל 8-bit יש פלטת 256 צבעים, ניגשים למיקום של 769 בתים מהסוף של הקובץ ובודקים האם הבית הוא 0x0C (עשרוני 12).
- משחקי מחשב קלאסיים הכוללים את Wolfenstein 3D, DOOM ו-Duke Nukem 3D אחסנו את צילומי המסך הפרסומיים ואמנות התפריטים שלהם בפורמט PCX.
שאלות טכניות נפוצות
איזו תוכנה יצרה קובצי .PCX?
ZSoft PC Paintbrush, תוכנת הגרפקה הפופולרית הראשונה עבור IBM PC בשנות ה-80, שלעיתים קרובות הגיעה כחבילה עם העכברים של מיקרוסופט.
האם אני יכול להמיר קובץ PCX ישן ל-PNG או ל-JPG?
כן. File2File.app יכול להמיר מרקמי משחקים היסטוריים ויצירות אמנות מסוג PCX לתמונות PNG או JPG מודרניות וחדות ישירות בדפדפן שלך.
מדוע לוח הצבעים (palette) נמצא בסוף קובץ PCX?
כאשר הוצג תקן ה-VGA בעל 256 הצבעים בשנת 1988, ZSoft צירפה את פלטת ה-RGB בגודל 768 בייט לסוף הקובץ כשהיא מלווה בסמן 0x0C כדי לשמור על תאימות לאחור עם מפענחי 16 צבעים ישנים יותר.