Index: src_plugins/io_pads/io_pads.c =================================================================== --- src_plugins/io_pads/io_pads.c (revision 34634) +++ src_plugins/io_pads/io_pads.c (revision 34635) @@ -38,7 +38,7 @@ #include "read.h" #include "write.h" -static pcb_plug_io_t io_pads_2005; +static pcb_plug_io_t io_pads_9_4, io_pads_2005; static const char *pads_cookie = "PADS IO"; @@ -60,8 +60,8 @@ void pplg_uninit_io_pads(void) { - rnd_remove_actions_by_cookie(pads_cookie); RND_HOOK_UNREGISTER(pcb_plug_io_t, pcb_plug_io_chain, &io_pads_2005); + RND_HOOK_UNREGISTER(pcb_plug_io_t, pcb_plug_io_chain, &io_pads_9_4); } int pplg_init_io_pads(void) @@ -87,6 +87,12 @@ RND_HOOK_REGISTER(pcb_plug_io_t, pcb_plug_io_chain, &io_pads_2005); + io_pads_9_4 = io_pads_2005; + io_pads_9_4.description = "PADS ASCII board (V9.4)"; + io_pads_9_4.save_preference_prio = 63; + io_pads_9_4.write_pcb = io_pads_write_pcb_9_4; + RND_HOOK_REGISTER(pcb_plug_io_t, pcb_plug_io_chain, &io_pads_9_4); + return 0; } Index: src_plugins/io_pads/write.c =================================================================== --- src_plugins/io_pads/write.c (revision 34634) +++ src_plugins/io_pads/write.c (revision 34635) @@ -35,10 +35,10 @@ typedef struct { FILE *f; - int ver; + double ver; } write_ctx_t; -static int io_pads_write_pcb(pcb_plug_io_t *ctx, FILE *f, const char *old_filename, const char *new_filename, rnd_bool emergency, int ver) +static int io_pads_write_pcb(pcb_plug_io_t *ctx, FILE *f, const char *old_filename, const char *new_filename, rnd_bool emergency, double ver) { write_ctx_t wctx; @@ -52,3 +52,8 @@ return io_pads_write_pcb(ctx, f, old_filename, new_filename, emergency, 2005); } +int io_pads_write_pcb_9_4(pcb_plug_io_t *ctx, FILE *f, const char *old_filename, const char *new_filename, rnd_bool emergency) +{ + return io_pads_write_pcb(ctx, f, old_filename, new_filename, emergency, 9.4); +} + Index: src_plugins/io_pads/write.h =================================================================== --- src_plugins/io_pads/write.h (revision 34634) +++ src_plugins/io_pads/write.h (revision 34635) @@ -1 +1,2 @@ int io_pads_write_pcb_2005(pcb_plug_io_t *ctx, FILE *f, const char *old_filename, const char *new_filename, rnd_bool emergency); +int io_pads_write_pcb_9_4(pcb_plug_io_t *ctx, FILE *f, const char *old_filename, const char *new_filename, rnd_bool emergency);