Descarga CADe_SIMU V4.2 para plasmar tus ideas y que tengan movimiento.
CADe_SIMU es un simulador de esquemas eléctricos, neumáticos, de control por programa y electrónicos.
En el enlace de arriba tienes todos los documentos para que CADe_SIMU funcione correctamente. Hay que descargarlos todos, guardarlos en una carpeta, descomprimirla y pulsar sobre el archivo con extensión .exe.
La clave es 4962.
AQUÍ RESPONDO A ALGUNAS DE LAS PREGUNTAS MÁS FRECUENTES
Sí, tan solo es necesario descargarse los archivos y ejecutar el que tiene extensión .exe.
No, por el momento no tiene.
Sí, es 4962. Si se utiliza el programa sin introducir la clave no se podrán guardar el trabajo realizado.
Lo primero que hay que hacer será abrir CADe_SIMU y una vez abierto, en archivo-abrir hay que buscar el documento que necesites abrir. ´
En caso de que no aparezca en la lista de archivos, elegir en el menú inferior “todos los archivos”. romlister
Envíanos tus preguntas a la dirección de correo electrónico hola@automatismosparatodos.com
Te dejo un par de vídeos para que vayas practicando
© 2023 Todos los derechos reservados.
args = parser.parse_args()
lister = RomLister(args.directory, recursive=args.recursive) lister.scan()
def export_txt(self, filepath, clean_names=False): with open(filepath, 'w', encoding='utf-8') as f: for item in self.get_list(clean_names): f.write(item + '\n')
def clean_name(self, name): """Remove common tags like (USA), [Rev A], etc.""" # Remove parentheses content name = re.sub(r'\([^)]*\)', '', name) # Remove brackets content name = re.sub(r'\[[^]]*\]', '', name) # Remove extra spaces and underscores name = re.sub(r'[_]+', ' ', name) name = re.sub(r'\s+', ' ', name).strip() return name
class RomLister: def (self, root_path, recursive=True): self.root_path = Path(root_path) self.recursive = recursive self.roms = []
def filter_by_name_pattern(self, pattern, case_sensitive=False): """Keep ROMs whose name matches regex pattern.""" flags = 0 if case_sensitive else re.IGNORECASE regex = re.compile(pattern, flags) self.roms = [r for r in self.roms if regex.search(r.name)] return self
if args.list_only or not args.output: for rom in lister.get_list(clean_names=args.clean_names): print(rom) else: if args.format == "txt": lister.export_txt(args.output, clean_names=args.clean_names) elif args.format == "csv": lister.export_csv(args.output, clean_names=args.clean_names) elif args.format == "json": lister.export_json(args.output, clean_names=args.clean_names) print(f"Exported to args.output") if == " main ": main() 🧪 Usage Examples # List all NES ROMs in folder python romlister.py ~/roms/nes -e nes -r List SNES ROMs larger than 1 MB, output as JSON python romlister.py ~/roms/snes -e sfc -r --min-size 1048576 -f json -o snes_large.json Find ROMs with "Mario" in name, clean tags, print to console python romlister.py ~/roms -r -p "Mario" --clean-names --list-only Export all .iso/.bin files recursively to CSV python romlister.py ~/roms/psx -e iso bin -r -f csv -o psx_roms.csv 🔧 Possible Extensions (if you want to expand) | Feature | Description | |--------|-------------| | ROM metadata | Read headers (e.g., iNES for NES) to show game title, mapper, etc. | | CRC/SHA verification | Compare against No-Intro/Redump DAT files | | Duplicate finder | Group by size/hash to find duplicates | | Web UI | Expose as a Flask app with live filtering | | Launch integration | Launch selected ROM with emulator | ✅ Sample Output Super Mario Bros Legend of Zelda Metroid Contra or as JSON:
self.roms = [p for p in iterator if p.is_file()] return self