summaryrefslogtreecommitdiff
path: root/cad
AgeCommit message (Collapse)AuthorFilesLines
2001-06-11CPPFLAGS is now passed to MAKE_ENV and CONFIGURE_ENV by bsd.pkg.mk, sojlam5-11/+6
adapt by moving CPPFLAGS settings to top-level, and removing explicit inclusion of CPPFLAGS into MAKE_ENV and CONFIGURE_ENV.
2001-06-11The buildlink include and lib directories are added to CFLAGS, CPPFLAGS,jlam1-4/+1
CXXFLAGS, and LDFLAGS by the buildlink.mk files so remove the extra definitions to add them from the package Makefiles. As advised by the bsd.buildlink.mk file, also ensure that the buildlink.mk files are included prior to defining any package-specific CFLAGS/LDFLAGS to ensure that the buildlink directories are at the head of the compiler search paths.
2001-06-10Remove dependency on ${BUILDLINK_TARGETS} in pre-configure and pre-buildjlam1-4/+1
targets as the buildlink.mk files now add the dependency automatically. Remove any NO_CONFIGURE definitions as they seem to be useless.
2001-06-05updated to version 4.03e, old version no longer on server.dillo3-13/+13
2001-05-24Update to dinotrace-9.1ddmcmahill2-5/+5
Changes are: * Changes in Dinotrace 9.1d 5/24/2001 *** Fixed missing 0's in display of >64 bit numbers. [Amitvikram Rajkhowa] *** Fixed stripping of characters after bus prefix. [Steve Hoover] * Changes in Dinotrace 9.1c 2/13/2001 *** Fixed Verilog reading ignoring the hiearchy separator. [Dominik Strasser]
2001-05-24Standardize name of file to include for build-links to be "buildlink.mk".jlam1-5/+5
Use BUILDLINK_INCDIR, BUILDLINK_LIBDIR for locations of linked headers and libraries. Create a variable BUILDLINK_TARGETS whose value is the list of build-link targets to execute.
2001-05-22Don't ignore checksums for three ps files, and add checksums and sizeswiz2-12/+13
to distinfo.
2001-05-22(1) Honor CFLAGS passed in from environment during build.jlam3-20/+32
(2) Use devel/readline/Makefile.readline to get readline support, and note why GNU readline is required. (3) Make this package work with xpkgwedge...the app-defaults file was always being installed under ${X11BASE}.
2001-05-21update to verilog-current-20010520.dmcmahill5-23/+382
many changes since the last snapshot. Mostly they involve expanded VVP support. The VVP target now passes >200 of the tests from the test suite. While not as complete as the VVM target, VVP is getting closer and its _much_ _much_ faster.
2001-05-13Don't override XAW_TYPE (use =? instead of =).jtb1-2/+2
2001-05-03Add some defaults for EVAL_PREFIX.jtb3-38/+47
2001-04-30USE_X11BASE since felt installs an app-defaults file.jtb4-9/+20
2001-04-30Don't add app-defaults file to PLIST, these pkgs don't install in X11BASEjtb1-2/+1
yet install their defaults files there.
2001-04-29Change to SHA1 checksum. The distfile contains a fix without a correspondingjtb1-2/+3
increase in version number. From the XCircuit homepage: Note that the March 28, 2001 version corrects a bug due to dubious C syntax causing segmentation violations when xcircuit was compiled without the debug option. C Trivia question: What does "x[a] = x[--a]" do? Answer A: "x[a] = x[a - 1]; a--" Answer B: "a--; x[a] = x[a]" Answer C: either A or B, depending on your OS, compiler version, and/or debug or optimizer switch.
2001-04-28update missing distinfo file from update. Thanks to Thomas Klausnerdmcmahill1-3/+3
for catching this one.
2001-04-28update to verilog-current-20010422dmcmahill1-3/+3
Changes since the last packaged snapshot from the authors announcements: Icarus Verilog snapshot 20010422 -------------------------------- I've integrated a bunch of UDP patches from Stephan Boettcher. These go to the core of ivl, so if you use Icarus Verilog with UDPs, you might want to give this a test for us. Stephan has also added some ivl_target support for UDP devices. This is a prerequisite to vvp support for UDP devices. Some of you have been beating me over the head about disable, so the vvp target now supports disable. It only works in certain very constrained situations, but the idea is there and the more common cases are simply a matter of getting around to them. I actually could use more examples of the use of disable for the test suite. In the process, I have settled on the interaction of threads and scopes, and changed the %fork syntax to match. See the README.txt and opcodes.txt file for details. The implementation of %end and %join simplified in the process. The vvp-tgt code generator supports a few more gate types. New gate types are pretty easy to add, it's just boring grunt work. That's why they've been popping up slowly. I've also got certain behavioral shifts working. Only constant shifts, so far, but this covers a pretty large percentage of the real world uses of shift, I think. I fixed a few specify block parse problems, so it should ignore even more complex specify blocks now:-) One of these days I really will properly support specify blocks. PROGRESS I was hoping to get vvp up to a similar level as vvm by the end of April, but that doesn't look like it's going to happen. I'm up to 182 tests passed, compared to 318 of Icarus Verilog/vvm, so I have a ways to go yet. I see no real point to making a release until I get up to 300 or so tests passed. That is the goal for 0.5 release. But of course if vvp is enough for you, then it is soooo much faster then vvm. Icarus Verilog 20010415 Snapshot -------------------------------- As with all the most recent snapshots, this is almost entirely progress with the vvp code generator and simulation engine. I'm up to 159 tests passed in the test suite, so I'm getting there. But there's still plenty to go. I also fixed what appeared to be a minor problem with elaboration of ?: expressions in continuous assignments. The code was actually fine, it was a spurious assert. This fix affects vvm as well. Icarus Verilog/vvp now support <= statemements with internal delays. That is, "foo <= #10 bar;" should work properly, and there are tests in the suite that prove it. This is a pretty common syntax, so this should help a lot of folks. I also fixed a bug in the code generator that would cause it to put a constant bit as a destination for the bitwise boolean operators. This caused run-time asserts. The event or support in vvp has been extended to now support arbitrary width, so now you can for example wit for any changes in a 32bit reg. This handles most of the likely cases, so @ statements should now be pretty generally functional. The handling of run-time threads has been revamped in preparation for support of the disable statement. It also plugs a memory leak where fork/join and task/function calls are invoked. And this version should also clean up all those tiny initial foo=bar threads that all programs seem to have. Threads that are done are now freed, along with their memory, hopefully reducing the runtime memory footprint. That's pretty much it this time 'round. Working with threads took some time, so the progress isn't as flashy as it sometimes is. There is still lots to do with vvp before 0.5, but I would appreciate any feedback you can offer. It's complete enough already that I'm able to accept bug reports on it, even if it turns out to be a "not supported yet" type of thing. At this point, I'd be curious to know what hangups are preventing its regular use.
2001-04-28add and enable simian and simian-docsdmcmahill1-1/+3
2001-04-28Initial import of simian-docs-2.1dmcmahill4-0/+39
User's guide for SIMIAN (Surface Impedance Method for Interconnect Analysis). The guide is in PDF format.
2001-04-28initial import of simian-2.1dmcmahill8-0/+218
Surface Impedance Method for Interconnect Analysis. SIMIAN is a two dimensional frequency dependent series impedance extraction tool for inerconnects and transmission lines using conductors of rectangular or circular cross section. The use of the surface ribbon method (SRM) greatly enhances the speed of computation relative to the volume filament method (VFM).
2001-04-28Add missing "Velvet.ad" to PLIST.jtb1-1/+2
2001-04-26Update eagle to 4.01e. Notable changes include:rh3-43/+211
* Control Panel - The Control Panel now has a "Tree View" which provides an overview over all areas of EAGLE, like Libraries, User Language Programs, Projects etc. The Control Panel's tree view supports "Drag&Drop" to copy or move files and directories. - Objects in the tree view have a context menu that can be accessed by pressing the right mouse button. - The menu option "Save project as..." is no longer available. - New projects can now be created via the context menu in the "Projects" tree item, or by selecting "File/New/Project" from the Control Panel. - The path settings in "Options/Directories" can now use the special names "$HOME" and "$EAGLEDIR" to access the user's home directory or the EAGLE installation directory, respectively. - The new "Auto backup" feature will automatically save any modified drawing into a safety backup file after a certain time. * New Project Structure - The names of files that are under the current project directory are no longer written as absolute paths into the 'eagle.epf' file, but rather relative to the project directory. This allows for complete project directories to be easily copied or renamed. - A project is now held in a subdirectory that contains a file named 'eagle.epf' (which stores the location and settings of open windows). * User Interface - The textual command menu can now be configured to display aliased command buttons as well as submenus (see HELP MENU for details). - Changes made in the "Options/User interface" dialog now take effect immediately for open editor windows. - The cursor inside a layout or schematic editor window can now be set to a "large" crosshair cursor (see "Options/User interface"). - The "Delete" icon was changed from a pencil with an eraser to an 'X'. - The "Split" icon was changed to better indicate what will happen. * Keyboard and mouse control - Alt-0 no longer popups up the window list, but leads directly to the Control Panel. - Pressing the Ctrl key while moving the mouse now scrolls the draw window in any direction. - The mouse wheel now zooms in and out in editor windows (zoom factor can be adjusted in "Options/User interface/Mouse wheel zoom", a value of '0' disables this feature and the sign of this factor defines the direction of the zoom operation). * Screen display - The default for "minimum visible text size" has been changed to 3. - The display mode parameter FAST has been dropped. - By default the zoom factor in editor windows is limited so that the resulting virtual drawing area does not exceed the 16-bit coordinate range. This is necessary to avoid problems with graphics drivers that are not 32-bit proof. If the graphics driver on a particular system can handle coordinates that exceeed the 16-bit range, "Options/User interface/Limit zoom factor" can be switched off allow larger zoom factors. * Design Rules - EAGLE now supports a full set of Design Rules that are stored inside the board file (and can also be saved to disk files). Both the Design Rule Check and the Autorouter will use the same set of rules. - Newly created boards take their design rules from the file 'default.dru', which is searched for in the first directory listed in the "Options/Directories/Design rules" path. - Cream mask values are now measured "inwards" and thus have a positive sign. - The parameters AnnulusConduct and ThermalConduct are no longer available. There are now checkboxes in the Design Rules dialog's "Supply" tab that define whether a Thermal or Annulus symbol shall have a "Restring" or not. * Net Classes - Nets and Signals now have a new parameter called "Net Class". * Polygons - When calculating polygons, the minimum distances defined in the design rules and net classes will be taken into account. * Design Rule Check - The DRC now runs a lot faster. - Progress is now displayed in a progress bar. - Polygons from different signals with the same 'rank' are checked against each other. - The 'overlap' and 'minimum distance' check are no longer separate checks. - The DRC no longer checks an individual signal against everything else. The newly introduced "Net Classes" can be used to do this. - The rectangle for a selective DRC can now be defined with "click&drag" (just as in the WINDOW command). - Holes are no longer checked in the "Grid" check (only pads, vias, smds and wires in signal layers are checked). - Any objects in signal layers within a package are now checked against each other. * Long strings - All names, values and texts can now be of any length. - The User Language constants regarding name lengths still exist, but the program uses these constants only for formatted output as in the EXPORT command. They are still present for compatibility only. - There is no more limit to the number of members in a bus (bus index values are limited to 0..511). - Bus member names can now contain any characters, except ':', ',', '[', ']' and blanks. * Wire styles - Wires now have a new parameter 'Style', which can be set to one of the following values: Continuous _______________ (default) LongDash ___ ___ ___ ___ ShortDash _ _ _ _ _ _ _ _ DashDot ___ . ___ . ___ - The variable for setting the bend type of a wire has been renamed from Wires_Style to Wire_Bend to avoid confusing the two parameters. * Text fonts - Texts can now have three different fonts: 'Vector' the program's internal vector font (as used in previous versions) 'Proportional' a proportional pixel font (usually 'Helvetica') 'Fixed' a monospaced pixel font (usually 'Courier') - When updating drawings from older versions, all texts are converted to 'Proportional' font, except for those in layers Top...Bottom, tRestrict and bRestrict, since these texts probably need to be subtracted from signal polygons, which only works with the 'Vector' font. - The program makes great efforts to output texts with fonts other than 'Vector' as good as possible. However, since the actual font is drawn by the system's graphics interface, 'Proportional' and 'Fixed' fonts may be output with different sizes and/or lengths. * Pads and Vias - The diameter of pads and vias is now derived from the drill diameter using the Design Rules (the pad and via diameter '0' is now allowed and results in a diameter that is derived from the current design rules). If a pad is defined with a diameter that exceeds the one that would result from the current design rules, the larger diameter is taken. The default value for the diameter of newly created pads and vias is now '0' to allow the Design Rules to define the actual diameters. - Pads can have different shapes on Top and Bottom (they will always be 'round' on the inner layers). - The via shape now only applies to the outer layers (they will always be 'round' on the inner layers). - The diameter of pads with shape X/YLongOct now defines the smaller side of the pad (formerly the wider side). Existing files will be modified accordingly during the update. - By default vias no longer generate Thermal symbols in supply layers. * Round SMDs - SMDs have a new parameter "Roundness", which can range between 0 and 100 and defines the percentage by which the corners are "rounded". A value of 0 (default) results in a rectangle, while a value of 100 results in a circular shape (if the x and y dimension of the SMD are the same), which can be used for BGAs. - The SMD command accepts roundness values as numbers with a leading '-' (to be able to distinguish it from the SMD size values). The CHANGE command has a new option "Roundness". * New Library structure - What was called a "Device" in previous versions is now called a "Device Set". A "Device Set" consists of the gate definitions and several actual devices, implemented through "Package Variants" - The PACKAGE command can now assign several different package variants to a device (as in 7400N, 7400D,...). - The new command TECHNOLOGY can be used to define various "technology" variants for a device's package variants (as in 74LS00N, 74S00N,...). - The CHANGE command has the new options PACKAGE and TECHNOLOGY, which can be used to select from the packages and/or technologies a device set defines. This can be done from within the schematic or board. - The new command DESCRIPTION can be used to provide detailed textual information about a device, package or library. - The CONNECT dialog now allows copying pin/pad connections from an other package variant. Only those package variants are offered in the "Copy from" combo box that have the same pad names as the current package variant (only connected pads are checked). - The CONNECT dialog now asks the user if he want's to discard any changes before cancelling the dialog. - The CONNECT command can now handle gate names that contain periods. - The device editor now displays a list of package variants, a preview of the current package and the description of the device. * Automatic Library update - If a library has been modified after parts or packages from it have been added to a schematic or board, the new command UPDATE can be used to automatically update all used library objects with their latest version (see "Help Update"). - The UPDATE command can be selected from the "Library" pulldown menu in a board or schematic, or from the context menu of a library in the Control Panel. It is also possible to drag&drop a library from the Control Panel onto a schematic or board drawing and perform the update that way. * Bill Of Material - The User Language Program 'bom.ulp' to generate the "Bill Of Material" has been rewritten. It now has a dialog in which the user can interactively generate the BOM, pulling in additional data from a user defined database file. Use "RUN bom.ulp" and click on the "Help" button for more information. * Generating Outlines for milling prototypes - The User Language Program 'outlines.ulp' can be used to generate the data necessary to control a milling machine for generating a prototype board. * User Language - The User Language now supports user defined dialogs as well as standard file dialogs and message boxes. - The RUN command now accepts additional arguments that are available to the ULP as 'argc' and 'argv' parameters. - Data can now be read into a ULP. - The new lookup() function can be used to perform database lookups. - The new fileglob() function can be used to do a directory search. - The new fileerror() function can be used check for I/O errors. - The 'exit()' function can now have a string parameter which is sent to the editor window and executed as a command string. - ULPs can now include other ULP files with the new #include directive. * Script files - Script files can now call other scripts (as long as no recursive call is made). - Script files can now contain comments. Everything after (and uncluding) a '#' character will be ignored. - The 'eagle.scr' file is now first searched for in the current project directory (which is equal to the current working directory in case there is no project open) and then in the directories listed in the Control Panel's "Options/Directories/Scripts". * Autorouter - The Autorouter can now route "through" signal polygons (this can be controlled by the new cost factor 'cfPolygon'). - The Autorouter control parameters are now stored inside the board file. They can be saved to and loaded from external files via the Autorouter dialog. Existing control files will be automatically read and stored in the board file when updating files from previous versions. - The Autorouter and DRC now use the same set of Design Rules. - When saving Autorouter control parameters to disk, the minimum distance parameters are no longer part of that file. - There can now be any number of 'Optimize' passes. By default there are now 4 'Optimize' passes. - Each pass can be separately activated or deactivated. - The Autorouter can now route different wire widths and minimum distances simultaneously by using "Net Classes". - The minimum routing grid is now 0.02mm (about 0.8mil). - The default control parameters and the internal handling of cfChangeDir have been modified to avoid jagged tracks. * ADD command - The ADD command can now be used with wildcards ('*' or '?') to find a specific device. The ADD dialog offers a tree view of the matching devices, as well as a preview of the device and package variant. - To add directly form a specific library, the command syntax ADD devicename@libraryname can be used. 'devicename' may contain wildcards and 'libraryname' can be either a plain library name (like "ttl" or "ttl.lbr") or a full file name (like "/home/mydir/myproject/ttl.lbr" or "../lbr/ttl"). - If a device or package shall be added, and there is already such an object (with the same name from the same library) in the drawing, an automatic library update will be performed which replaces the existing object in the drawing with the current version from the library. - The new command UPDATE can be used to update all parts in a board or schematic with modified library versions (see "Help Update"). * CHANGE command - CHANGE LAYER for wires and polygons now works between any layers within packages and symbols. * CONNECT command - Pressing the SPACE key in the CONNECT dialog while a list element has the focus will now perform the 'connect' or 'disconnect' action, respectively. * DELETE command - If the last supply symbol of a given type is deleted from a net segment that has the same name as the deleted supply pin, that segment is now given a newly generated name (if there are no other supply symbols still attached to that segment) or the name of one of the remaining supply symbols. * DISPLAY command - The new parameters '?' and '??' can be used to control what happens if a layer that is given in a DISPLAY command does not exist in the current drawing. See "Help Display" for details. * GROUP command - If the selected group is empty, the GROUP command no longer displays a message box saying "Group is empty". It rather prompts that message in the status bar (with a beep) and stays active for a new group definition. * ERC command - The ERC now lists the package names when reporting parts/ elements with inconsistent packages. - The ERC now detects inconsistencies between the implicit power and supply pins in the schematic and the actual signal connections in the board. - The ERC now checks for missing junctions and overlapping wires and pins. * ERRORS command - The ERRORS dialog is no longer modal (it stays "on top" of the editor window) and can be kept open while resuming normal editing in the editor window. The various error types are now listed more detailed. * EXPORT command - The EXPORT can now export image files (BMP, PNG, etc.). See "Help/EXPORT" for details. * NET and BUS command - If a net wire is placed at a point where there is already another net or bus wire or a pin, the current net wire will be ended at that point (in previous versions the user had to click twice to end a net wire). * PASTE command - When pasting objects into a drawing that already contains earlier (different) versions of these objects, an automatic library update will be performed which replaces the existing objects in the drawing with the new versions from the paste buffer. * PRINT command - The PRINT dialog's "Page setup" now allows border values that are smaller than the initial values derived from the printer driver. To get back to the original default you can enter '0'. * REMOVE command - The REMOVE command can now handle device, symbol and package names with extension (for example REMOVE name.pac). * RENAME command - The RENAME command now allows '.' in names. - The RENAME command can now handle device, symbol and package names with extension (for example RENAME name1.pac name2[.pac] - note that the extension is optional in the second parameter). * REPLACE command - The REPLACE command can no longer be used with active forward- and backannotation. This is due to the now complete definition of a device set with all its package variants. Use the CHANGE PACKAGE command to select one of the defined package variants, or use the UPDATE command to update a package with a modified version from the same library. * SET command - The SET options for Thermal and Annulus parameters as well as the Solder Stop and Cream mask data have been removed. - The SET variables DRC_SHOW and DRC_COLOR are now obsolete (progress in the Design Rule Check is now displayed in a progress bar). - The SET variable MAX_ERROR_ZOOM is now obsolete. The ERRORS dialog is no longer modal (it stays "on top" of the editor window) and zooming can be done with the usual WINDOW commands or buttons. * SHOW command - Highlighted objects are now kept highlighted during subsequent window operations. - Pressing ESCape in the SHOW command now lowlights the currently highlighted object. * USE command - The USE command is now mainly for use in script files. * CAM Processor - The CAM Processor no longer supports matrix printers. Use the PRINT command to print to the system printer. - The CAM Processor no longer prints sheets. Use the PRINT command instead. * Parameter storage - User specific parameters are now stored in an "eaglerc" file. At program start, parameters are read (in the given sequence) from the files prgdir/eaglerc /etc/eaglerc $HOME/.eaglerc where prgdir means the directory that contains the EAGLE program file. * Command line options - The options '-A' and '-T' are now obsolete (thermal and annulus data is now defined in the Design Rules). - The options '-B' and '-M' are now obsolete (solder stop and cream mask data is now defined in the Design Rules). - The option '-C' is now obsolete, since the CAM Processor no longer supports matrix printers (all printing is done with the PRINT command). - The options '-Z' and '-Y' are now obsolete (drill symbols are configured in "Options/Set/Drill" and are stored in the user specific "eaglerc" file). * Miscellaneous - The DOS and OS/2 platforms are no longer supported. - Due to changes in the file data structure you will most likely be asked whether to run the ERC when loading a board/schematic pair created with an earlier version of EAGLE. - Files from earlier versions of EAGLE may contain library objects with the same names. This was caused by PASTE or ADD operations with modified devices or packages. Version 4 no longer allows this to happen, and therefore needs to make sure updated files do not contain multiple objects with the same name. In order to assure this, the update routine adds the '@' character and a number to the names of such library objects. - The library editor can now edit devices and symbols, even if the user's license does not contain the schematic module. - Avoiding multiple 'Save?' prompts for boards and schematics that are connected via f/b annotation. - When a file is modified while updating from a previous version the resulting update report is now presented in a separate text window.
2001-04-24add and enable mpacdmcmahill1-1/+2
2001-04-24Initial import of mpac-0.2.2dmcmahill4-0/+32
Microstrip Patch Antenna Calculator. MPAC analyzes various parameters including impedance and resonant frequency for a rectangular microstrip patch antenna.
2001-04-20Move to sha1 digests, and add distfile sizes.agc1-3/+5
2001-04-19Move to sha1 digests, and add distfile sizes.agc26-54/+81
2001-04-17+ move the distfile digest/checksum value from files/md5 to distinfoagc62-187/+137
+ move the patch digest/checksum values from files/patch-sum to distinfo
2001-04-14Change MAINTAINER section to packages@netbsd.orgjtb3-6/+6
2001-04-14update verilog-current to 20010407dmcmahill9-84/+16
changes since last snapshot are (from the authors email) verilog-20010407 -------------------- Still more progress on the new VVP simulation engine: As with last week, this snapshot includes a lot of work on the ivl_target API in support of code generation for vvp. Also, the vvp execution engine has progressed some. In fact, vvp has grown up to understand signed vectors and some signed expressions. The signed vectors are mostly for VPI use, the signed comparison instructions actually do signed work. Case comparisons are new, along with %and and %or instructions, and %nor/r for reduction. I also added a few new gate types to the .functor support. A bug in the propagation of values by %set instructions has been fixed. Specifically, the %set instruction not only sets the value of the .var that it references, but also executes the propagation events that result. This fixed some event ordering bugs. Some VPI support needed by system.vpi is added to vvp to allow it to properly handle signed signals, decimal values, and a few other details. $display should work much better then it did last week. Back in the vvp.tgt code generator, lots of new stuff is happening. Several of the bitwise binary operators have been added, as well as more comparison operators. This includes handling of signed expressions. This also implies that vvp.tgt generates the proper .net vs .net/s and .var vs .var/s statements. User defined functions and tasks are now working. In fact, the vvp target probably handles more functions (in behavioral code) then the vvm engine. I've received several bug reports about user defined functions with loops, that don't work under vvm. These should work with vvp. Non-blocking assignments now work, too. All forms of case/casex/casez are supported by the code generator, and use the proper compare instructions. Forever, Repeat and While loops also work now. A few bugs in event handling, and all the edge types (including behavioral triggers) should work with limitations. Event or is still in the works, and any-edge of large vectors (>4 bits) does not work. *Whew!* As you can see, a *lot* of stuff is happening. I'm up to passing 110+ tests in the regression test suite (Icarus Verilog/vvm passes 318 tests) so the changes are actually making things work. Test and be merry! verilog-20010331 -------------------- More and more progress on VVP. More and more snapshots. A lot of work has been done to the ivl_target loadable target API. This API is growing to support the also growing tgt-vvp target. I've added support for case statements, event triggers fork blocks. Of course this also means that the tgt-vvp code generator and the vvp simulator now support constructs including case, events, and parallel blocks. I've also fixed up the driver to properly report errors that tgt-vvp detect. This makes the test suite regression script work a lot better. I'm up to more then 70 tests in the test suite passing. I'm finding that writing the code generator for vvp assembly is a *lot* easier then writing a code generator for C++/vvm. Fortunately, the vvp assembler is pretty fast. At any rate, the vvp simulation engine is starting to show signs of being useful. It still does not cover nearly as much of Verilog as vvm, but what it does cover is so much faster that it may be worth your while to try it out. And more eyes looking at it can only be a good thing.
2001-04-11Use wildcards in CONFLICTS.wennmach2-4/+4
2001-04-07Decrease optimization.jtb2-4/+4
2001-03-31update to verilog-current-20010324. Changes since the last version fromdmcmahill10-18/+88
the authors announcement are: There are a few bugs in the main compiler that are fixed. There has also been an extension to the $fopen that adds support for opening files for reading. The $fgetc has been added to take advantage of this. This was done on the VPI side, although a slight extension to the mcd functions was created. The real news is the vvp simulation engine. I've added the tgt-vvp code generator source and the vvp assembler/simulator, and the combination actually produces the occasional working program. And it makes them very quickly. So far as I can tell now, I am going to be very pleased with the final outcome when this work is complete. However, it is not at all ready to use. This snapshot is mostly to give a preview of things to come to a wider audience. HOW VVP WORKS If you are accustomed to the existing vvm behavior, you remember that the vvm simulator works by generating C++ and feeding that to the g++ compiler. Many of you are painfully aware of that. VVP does *not* work like that. Instead of generating C++, the generator emits assembly language for an abstract simulator processor. The processor that the assembly targets doesn't really exist, but the vvp program, included in this Icarus Verilog snapshot, assembles the code to data structures in memory, then efficiently emulates the abstract processor. So the simulation of a program via vvp works by first compiling the Verilog to vvp assembly. The vvp.tgt modules generates the code, and is envoked when you use the ``-tvvp'' switch to iverilog. The vvp assembly file so created is then passed to the vvp program to be assembled and executed. There is a single vvp input file that is the design to simulate. The vvp assembler is designed to execute the design efficiently. HOW TO LEARN MORE The ivl_target.h header file describes the loadable target API that the vvp code generator uses to gain access to the design. Then the tgt-vvp directory contains the implementation of the vvp code generator. The vvp directory contains the implementation of the assembler/simulator that runs the compiled design. The README.txt file describes how the vvp program works in general, and points to other txt files. There are a variety of other .txt files in the vvp directory that describe how the major components of the vvp program work.
2001-03-27Change BUILD_DEPENDS semantics:hubertf3-8/+8
first component is now a package name+version/pattern, no more executable/patchname/whatnot. While there, introduce BUILD_USES_MSGFMT as shorthand to pull in devel/gettext unless /usr/bin/msgfmt exists (i.e. on post-1.5 -current). Patch by Alistair Crooks <agc@netbsd.org>
2001-03-26Add and enable qcad.jtb1-1/+2
2001-03-26New qcad package:jtb11-0/+771
QCad is a simple 2D CAD System. With QCad you can easily construct and modify drawings with ISO-texts, dimensions, hatches and many other features and save them as DXF-files. These DXF-files are the interface to many CAD-systems such as AutoCAD and many others.
2001-03-09update to dinotrace-9.1bdmcmahill5-1290/+10
While here, update MASTER_SITE. changes from last packaged version: * Changes in Dinotrace 9.1b 2/13/2001 **** Documentation updates. * Changes in Dinotrace 9.1a 1/22/2001 ** Added analog waveform format. [Dave Colson] Includes new Signal Waveform menu and signal_waveform command. * Changes in Dinotrace 9.0m 11/21/2000 **** Fixed a bug reading compressed tempest on Digital UNIX. [Steve Hoover]
2001-02-28whitespace fixeswiz1-2/+2
2001-02-16Not needed any more -- COMMENTs are in Makefiles now.wiz1-1/+0
2001-02-16Update to new COMMENT style: COMMENT var in Makefile instead of pkg/COMMENT.wiz1-30/+32
While I'm here, unify category Makefiles to more standard style. (If you have tools depending on the previous form, please fix them.)
2001-02-16Update to new COMMENT style: COMMENT var in Makefile instead of pkg/COMMENT.wiz58-58/+58
2001-02-10Fix problem from pkgsrc i386 bulk build.jtb1-3/+4
2001-02-09-include a ton of missing header files for 64 bit machines. there remaindmcmahill18-10/+216
some 64 bit related compiler warnings to fix. - while here, use libffm if on an alpha for faster math. In this case 20-30% faster.
2001-02-07make sure the -I search path has the correct order to avoid pickingdmcmahill5-1/+92
up a possibly out of date installed header from ${LOCALBASE}/include. Note that while we don't support installing a pkg when a previous version is installed, we should still be able to build it. Problem noted in private email from Lennart Augustsson.
2001-02-06Remove unnecessary message.wiz1-6/+0
2001-02-06Unify format of MESSAGEs, and include RCS Ids.wiz1-2/+3
2001-02-04update to verilog-0.4.dmcmahill8-105/+31
from the authors announcement: So many things have changed since version 0.3 that there is no point in listing them. There have been tons and tons of bug fixes and the language coverage is better, and so on and so forth. It's just so very much better then version 0.3:-) speaking as a user, some of my personal favorites are: - support for signed variables - iverilog now gives correct return codes (which makes 'make' much happier) for a more complete list, the commit messages for pkgsrc/cad/verilog-current/Makefile contain the changes for each development snapshot between verilog-0.3 and verilog-0.4
2001-01-19Updated xcircuit to version 2.2.0. The schematic capture code is nowjtb6-65/+77
considered stable. Xcircuit now has the ability to pass parameters to objects. For the moment, this only works with string parameters. Integral parameters will be added in upcoming versions.
2001-01-14update to verilog-current-20010113dmcmahill2-5/+5
bug fixes and signed support (yay!). detailed changes since last packaged snapshot from the authors announcements: Icarus Verilog snapshot 20010113 -------------------------------- We're getting close to release candidates. Maybe another snapshot, then I start with making 0.4 release candidates. So lets get this tested so that I can move forward! This snapshot largely fixes a whole bunch of bugs. I'm working feverishly to catch up to the reported bugs, but they are coming in about as fast as I can resolve them. (Not that I'm complaining, mind you. These PRs are really helping me make it better.) But that means I'm going to just concentrate on getting as many PRs done as I can before the release. The syntax of functions and tasks has been expanded to allow parameters. This is not a common thing to do, but someone puts parameters if functions The syntax of functions and tasks has been expanded to allow parameters. This is not a common thing to do, but someone puts parameters if functions so I had a PR to fix:-) Also I caught a problem with executing functions that take no input parameters. In fact, a bunch of function related bugs were fixed. I lost track of em all. Ports of tasks weren't elaborated properly. I fixed this and a few related problems so most legal l-values should work as task port expressions now. Memories within tasks should also work properly now. Speaking of ports, I now report errors when there is a port direction for module ports that don't exist. In fact, there are a whole bunch of cases where I've added required error messages. The %d format of display strings now displays signed negative values as negative values instead of the unsigned equivalent. This goes along with the other signed arithmetic features from the -2000 standard that are now supported. I fixed up the Makefiles (thanks to a contribution) to support build using the VPATH capabilities of the makefile. You should be able to compile for multiple targets now from a shared source directory. Icarus Verilog snapshot 20010106 -------------------------------- I'm just managing to barely keep up with the bug reports arriving in the bug tracking system. I'm pleased with the success of the ivl-bugs robot. These bug reports have allowed me to better manage and record progress. Keep those bug reports coming! I've added support for arrays of integer and time variables, as well as the Verilog 2000 initialization syntax for these types. I have also made some internal changes to integer support. Integers are now just a shorthand for ``reg signed [31:0]'' and signed variable support has made some internal changes to integer support. Integers are now just a shorthand for ``reg signed [31:0]'' and signed variable support has been generalized. This makes it easier on the code generators, as they do not need to know that a variable was a integer, a time, a foo or a bar. I few constant propagation errors have been fixed. Continuous assignments of constants to nets should behave correctly now. Many people noticed lack of expression support for parameters. In fact, the problem was a lack of support for a bunch of specific operators. I've added many operators. This has the side effect of improving constant propagation as well, in some cases finding more dead code to eliminate. This also affected expressions that were index expressions of memories and vector declarations. The / operator in continuous assignment expressions is fixed. There were a few size related issue here that are now fixed. I've added to the i3331364-notes.txt file a clarification of my position on parse of repeat statements. This position is compatible with XL behavior. Passing parameters to user defined functions in behavioral code was pretty darn broken. I managed to fix this. You can tell that not many people use user defined functions:-) (It doesn't help that Icarus Verilog is picky about them.) For vvm, I've put some effort into optimizing the compile time of programs by reducing the size of the output code. I've reduced redundancies some, and used loops to handle vectors where possible. A few bugs related to $dumpvars were cleaned up. Function scopes work.
2001-01-04The way that shared objects were handled in the PLISTs and bsd.pkg.mk wasagc2-2/+64
out of date - it was based on a.out OBJECT_FMT, and added entries in the generated PLISTs to reflect the symlinks that ELF packages uses. It also tried to be clever, and removed and recreated any symbolic links that were created, which has resulted in some fun, especially with packages which use dlopen(3) to load modules. Some recent changes to our ld.so to bring it more into line with other Operating Systems also exposed some cracks. + Modify bsd.pkg.mk and its shared object handling, so that PLISTs now contain the ELF symlinks. + Don't mess about with file system entries when handling shared objects in bsd.pkg.mk, since it's likely that libtool and the BSD *.mk processing will have got it right, and have a much better idea than we do. + Modify PLISTs to contain "ELF symlinks" + On a.out platforms, delete any "ELF symlinks" from the generated PLISTs + On ELF platforms, no extra processing needs to be done in bsd.pkg.mk + Modify print-PLIST target in bsd.pkg.mk to add dummy symlink entries on a.out platforms + Update the documentation in Packages.txt With many thanks to Thomas Klausner for keeping me honest with this.
2000-12-31make sure the include and library paths are set to correctly find readlinedmcmahill1-1/+5
headers and libraries. fixes recently noted compile problems seen by Huberts bulk i386 builds.
2000-12-28fix DISTNAME. somehow got lost in upgradedmcmahill1-2/+2