oasis2gbr web page logo

OASIS2GBR Revision History

This page contains the summary of OASIS to Gerber release dates, versions and changes/fixes made for that release.

Gerber Extract Library Version 1.03 11-22-2022

Increased path length

Execution path length was increased to 220 characters.

Version 1.32 09-09-2021

New Installer

Updated to a later version of Installshield.

Hasp Key Support

Added support to HASP USB keys for our OEM partners.

Updated Boolean Library

Updated the Boolean library to Artwork's latest version.

MS VS 2015 64 bit

Built using Microsoft's Visual Studio 2015 (previous versions built using VS 2008)

Version 1.31 Win64    3-30-2021

Enhanced Logging

Enhanced logging with full report of errors / warnings arising from Boolean operations on polygons. If polygons are dropped, error counts are reported in the log file and the program returns with the exit code 9.

-revalidate argument obsolete

No need to use -revalidate anymore. This command-line option has no effect and is obsolete.

built using MS VS2015

Build with Visual Studio 2015. Previous versions built with VS2008. This requires that the MS C++ Redistributibles 2015 are installed on Windows.

Version 1.30 Win64 and Linux    2-21-2019

Speed Improvement

In -mode:speed, the computation of the optimal nesting level for finding repeating patterns has been re-engineered resulting in better analysis and much improved performance in certain cases. Each nesting level is assigned an 'optimality score' (0.0 - 142.0) and the nesting level with the *LOWEST* score is selected. If the best available score > 50.0, the application switches to -mode:compact as the data hierarchy is assumed to be insufficient for generation of compact gerber. One can see the computed nesting level and it's score on stdout (if -silent is not used) or in the log file (if -log is used).

Speed Mode

In marginal cases (when the optimality score is just less then 50.0), one can force the application to work with the best available nesting level in speed mode instead of reverting to compact mode. To do this, use -mode:speed=[level] where [level] != 0 and [level] was presented as the best available nesting level. For flat files, the optimal nesting level is 0 with a score of 142.0 and -mode:compact is the only solution.

Version 1.29 Win64 and Linux    9-5-2017

GDSII to Gerber Circularize Issue

This version fixes an issue with the circularizing code.

Version 1.28 Win64   12-8-2016

GDSII to Gerber Issue

This version fixes some problems related to processing files that have units other than micron.

Version 1.27 Win64   November 30, 2016

Gerber Format Control

This version enables the user to override the defaults on the Gerber output format statement. For files in inches the default is 2.6; for files in mm the default is 3.5. We believe these to be the optimum settings for microelectronic work.

Some users may have reasons for needing different a different Gerber format. They are able to use the command line argument: -format:MN where M is the number of digits to the left of the decimal and N is the number to the right of the decimal point.


If a user wanted the Gerber to be 3.6 they would use -format:36 on the command line.

Note - that this does not really increase the precision of the output data by a factor of 10. Precision is determined first by the program's internal database and computations - only then by the format used to write out the Gerber data. The program does not check to validate that the data extents matches the Gerber format set by the user.

e.g -format:36 implies 3 places before decimal point and 6 places after for co-ordinate values.

Default (if not specified) is -format:35

Version 1.25 Win64   August 15,2015

Fix to hierarchy extractor

previous version encountered a file that it incorrectly determined the hierarchy of the layout.

Port 1.24 to Linux    August 15,2015

program ported to Linux (64) for end user. Plan is to use it on Amazon AWS multi-CPU virtual machines to speed up the conversion time.

Version 1.24 Windows    April 8,2015

Windows 64 updated after feedback from end user. There will be no more updates for the 32 bit version.

Version 1.21    February 1,2015

Self-intersecting polygons

This version further improves the quality of the output polygons after self intersecting polygons were found after a conversion.

Version 1.20    December 23,2014

Self-intersecting and thin polygons

This version further improves the quality of the output polygons by fixing some bugs in the overlap and circularize computations.

Version 1.18    December 7,2014

New command line option -revalidate

When present, Oasis2Gerber re-validates (post overlap) output polygons and fixes any polygon considered to be illegal. This will ensure that the output data is much more clean but will incur additional processing cost and therefore slower speed.
In absence of -revalidate, the behavior is same as v1.17

Version 1.17    November 23,2014

Self-intersecting and thin polygons

This version further improves the quality of the output polygons by fixing some bugs in the overlap and circularize computations.

Version 1.15    October 31, 2014

Self-intersecting and thin polygons

Fixed a bug in the circularization that resulted in self-intersecting and thin polygons.

Version 1.13    January 5, 2014

Two bug fixes

Fixed a bug which caused Oasis2Gerber to crash occasionally on low-spec machines.
Fixed an issue that caused Oasis2Gerber to run very slow on certain files on low-spec machines.

Version 1.12    December 23, 2013

Speed improvements

Multi-threaded circularization (converting arc/circle-like polygons to arcs and flashes) to significantly reduce processing times for certain files.

Version 1.11    December 4, 2013

New command-line option -circularize

New command-line option -circularize:max_chord_error to be used to control the circularization process. Only those polygons whose chord-error is smaller than the specified max_chord_error will be circularized.
This new feature significantly reduces the output Gerber file size by converting circular polygons into arcs (G02, G03) and circles to pads/flashes (%AD, G54)

Version 1.10    October 31, 2013

Speed optimization

In compact mode, Oasis2Gerber took very long time to translate certain files because of some redundant computations. This has been fixed.

Version 1.09    October 24, 2013

New command-line option -overlap:

New command-line option -overlap:overlap_in_file_units to specify amount of overlap between butting polygons.

The overlap amount is in the input file units (e.g microns).

Default: there is no overlap between butting polygons (overlap = 0.0)

This overlap is applied even to the butting polygons present in the original data set (polygons that are not created as a result of compaction).


Improved compaction and reduction in number of SRs: In both speed and compact mode, all SRs with the same X,Y,I and J parameters are merged into a single SR

Improved logging and performance measurement

Version 1.08    September 4, 2013

Butting polygons

In compact mode, the program generates butting polygons instead of self-touching polygons.

Version 1.07    July 24, 2013

Enhancements and Bug fixes

  • In default mode (-mode:speed) we have an improved algorithm that minimizes the total number of SRs in the output Gerber files.
  • <

    li>Fixed a bug that caused the translator to run out of resource handles for certain input files because of improper cleanup in default mode (-mode:speed)

  • In default mode (-mode:speed) if any two placements of a cell differ only in the angle of rotation and/or scale; and the difference in the angle and/or scale is less than 0.1, these two placements will be treated as identical patterns (e.g D000833_PVIA1_9_1.gds).
  • The Win32 translator and QScan are now built using VC 2008. (previously VC 6.0).

  • Version 1.05    June 6, 2012

    New Algorithm for fast translation

    Oasis2Gerber v1.05 uses a new algorithm that takes advantage of GDSII/OASIS cell hierarchy to perform extremely fast translation.
    This algorithm only works when the input GDSII/OASIS file has sufficient hierarchy using cell references/placements.
    For flat files, Oasis2Gerber uses the older (v1.04) algorithm.

    Command line option -window is now obsolete

    Oasis2Gerber v1.05 does not support extracting a specific region of the input file anymore.

    New Command line option -mode:speed|compact

    -mode:speed (default) checks the input file for hierarchy. If sufficient hierarchy is found, it uses the new algorithm and emphasizes speed over compaction. If sufficient hierarchy is not found, it uses the old (v1.04) algorithm for superior compaction.
    -mode:compact uses the old algorithm (v1.04) and emphasizes compaction over speed.

    Version 1.04    May 15, 2012

    Post-Execution Cleanup

    Oasis2Gerber cleans up all working files when the execution is complete.

    New Command-Line -error:file_path

    Use the new command-line to specify the path of an 'error' file. If Oasis2Gerber fails, this 'error' file (created by Oasis2Gerber) with contain the information about the cause of failure. If Oasis2Gerber succeeds, no such file will be created.

    Improved Performance on multi-core machines

    If Oasis2Gerber finds the input data to be larger than a certain threshold, it partitions the data into bands/stripes to reduce overhead on memory and performance.

    Summary of benchmark results for customer file D000290_A_rdl_30.gds on a 8-CPU Intel Core-i7 machine running Windows Vista 64.
    case 1) v1.03.1
    Win32 : Fails because of insufficient system memory
    Win64 : Completes successfully in 0h 54m

    Case 2) v1.03.1 + Multi-CPU optimization
    Win32: Fails because of insufficient system memory
    Win64: Completes successfully in 0h 30m

    Case 3) v1.04
    Win32: Completes successfully in 0h 18m
    Win64: Completes successfully in 0h 33m

    Version 1.031    April 25, 2012

    Bug fixes

    Fixed a bug that caused Oasis2Gerber to return error for OASIS Files with 'space' in the path.
    Fixed gscan to support OASIS Files with 'space' in the name.
    Removed the G75 code from the Gerber output.
    Added LN and LP (%LPD*%) codes.

    Version 1.02    April 5, 2012

    New gscan utility

    This package contains a new EXE 'qscan64.exe'. qscan64.exe reads a GDSII/OASIS file and generates a parser-friendly text file.
    The command-line is
    qscan64.exe input_file output_file
    The output text file contains the following sections:

  • FILE : specified_input_file_path.
  • UNITS : units_in_meters M (units_abbreviation)
  • GRID : grid
  • LAYERS (count)
  • layer:datatype
  • ...
  • TOP CELLS (count)
  • top_cell
  • ...
  • CELLS (count)
  • unique_cell_name
  • comma_separated_list_of_immediate_children ... This is absent if the unique_cell_name has no children

  • Version 1.01    March 27, 2012

    USB Licensing

    Added support for USB licensing.

    Version 1.00    March 14, 2012

    First Release

    First release of OASIS to Gerber running on Windows 64 bit.