+ gbz80_port.mem.code_name = Safe_strdup (buffer);
+ code->sname = gbz80_port.mem.code_name;
+ return 0;
+ }
+ else if( startsWith( sz, "portmode=" ) || startsWith( sz, "portmode " ))
+ { /*.p.t.20030716 - adding pragma to manipulate z80 i/o port addressing modes */
+ char bfr[128];
+
+ if (sz[8]=='=')
+ werror(W_DEPRECATED_PRAGMA, "portmode=");
+
+ strncpy( bfr, sz + 9, sizeof (bfr));
+ bfr[sizeof (bfr) - 1] = '\0';
+ chomp( bfr );
+
+ if ( !strcmp( bfr, "z80" )){ z80_opts.port_mode = 80; }
+ else if( !strcmp( bfr, "z180" )){ z80_opts.port_mode = 180; }
+ else if( !strcmp( bfr, "save" )){ z80_opts.port_back = z80_opts.port_mode; }
+ else if( !strcmp( bfr, "restore" )){ z80_opts.port_mode = z80_opts.port_back; }
+ else return( 1 );
+
+ return( 0 );
+ }
+