Ciao ragazzi
Primo baco da fixare. Apri un tap, esci subito dall'applicazione: ci sono 2500 bytes "0" accodati al file. Non ho fatto null'altro.
C'e' una ragione precisa dietro a questo fatto.
Se si sceglie di accodare un programma a un file TAP,generalmente VICE non riconosce il programma accodato;questo perchè un'header viene riconosciuta tale solo se preceduta da una sequenza sufficientemente lunga di short pulses (da cui il motivo per il quale vengono preliminarmente accodati bytes 0x30).
Questo comportamento dell'emulatore è normale,infatti questo preambolo è necessario per permettere al registratore di arrivare a velocità di regime prima di riconoscere una tape-header (a questo proposito,sarebbe interessante se qualcuno volesse provare a trasferire il file TAP su un nastro reale per vedere se il tutto funziona).
In ogni caso,grazie all'impostazione di un flag questa "normalizzazione" avviene una sola volta.
Non ho capito a cosa serva il pulsante "salva" se le scritture sono immediate.
Dopo la normalizzazione,il programma non apporta più modifiche al/i file TAP finchè non si preme il pulsante 'Salva',perchè durante ogni operazione di trasferimento lavora su array e non direttamente su file.
Se ti riferisci all'accodamento del preambolo,hai pienamente ragione:la normalizzazione la si può fare "al volo" quando si accoda un prg a un file TAP non "normalizzato".
Poi l'apertura della dir SEMPRE in documenti\ e' davvero fastidiosa, andrebbe memorizzato l'ultimo path visitato
Concordo,altro task in cima alla lista dei todo.
Comunque, sotto Linux e con Java 1.5.0 update 14 non riesco a trascinare (letteralmente! clicco su un programma, tengo cliccato, sposto il mouse e mi si sposta la selezione invece del programma).
Quando succede, ho una serie di messaggi nella console, simili a:
QUOTE
Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: gui/CustomPanel$Dummy
at gui.CustomPanel$CustomDragGestureListener.dragGestureRecognized(CustomPanel.java:121)
at java.awt.dnd.DragGestureRecognizer.fireDragGestureRecognized(DragGestureRecognizer.java:339)
at sun.awt.X11.XMouseDragGestureRecognizer.mouseDragged(XMouseDragGestureRecognizer.java:202)
at java.awt.AWTEventMulticaster.mouseDragged(AWTEventMulticaster.java:262)
at java.awt.AWTEventMulticaster.mouseDragged(AWTEventMulticaster.java:261)
at java.awt.Component.processMouseMotionEvent(Component.java:5565)
at javax.swing.JComponent.processMouseMotionEvent(JComponent.java:3153)
at java.awt.Component.processEvent(Component.java:5286)
at java.awt.Container.processEvent(Container.java:1966)
at java.awt.Component.dispatchEventImpl(Component.java:3984)
at java.awt.Container.dispatchEventImpl(Container.java:2024)
at java.awt.Component.dispatchEvent(Component.java:3819)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3909)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
at java.awt.Container.dispatchEventImpl(Container.java:2010)
at java.awt.Window.dispatchEventImpl(Window.java:1791)
at java.awt.Component.dispatchEvent(Component.java:3819)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
ripetuto n volte.
Ohhhh,finalmente un problema di portabilità;fortunatamente dispongo di una distro Linux installata sul PC e posso verificare facilmente :lol:
Modifiche tra oggi e domani,grazie a tutti dell'attenzione
Alberto