Fixed insert pattern script, fixed emulator putting CUP to 100% when listening to machine
This commit is contained in:
parent
963a26fcdd
commit
cedbe2644f
3 changed files with 11 additions and 9 deletions
|
|
@ -391,9 +391,10 @@ class PDDemulator():
|
|||
# never returns
|
||||
return
|
||||
|
||||
def handleRequest(self):
|
||||
if self.ser.inWaiting() == 0:
|
||||
return
|
||||
def handleRequest(self, blocking = True):
|
||||
if not blocking:
|
||||
if self.ser.inWaiting() == 0:
|
||||
return
|
||||
inc = self.readchar()
|
||||
if self.FDCmode:
|
||||
self.handleFDCmodeRequest(inc)
|
||||
|
|
@ -618,6 +619,7 @@ class PDDemulator():
|
|||
self.disk.writeSector(psn, lsn, indata)
|
||||
for l in self.listeners:
|
||||
l.dataReceived(self.disk.lastDatFilePath)
|
||||
print 'Saved data in dat file: ', self.disk.lastDatFilePath
|
||||
except:
|
||||
print 'Failed to write data for sector %d, quitting' % psn
|
||||
self.writebytes('80000000')
|
||||
|
|
|
|||
|
|
@ -82,9 +82,9 @@ class KnittingApp(Tkinter.Tk):
|
|||
|
||||
def emulatorLoop(self):
|
||||
if self.emu.started:
|
||||
self.emu.handleRequest()
|
||||
self.emu.handleRequest(False)
|
||||
# repeated call to after_idle() caused all window dialogs to hang out application, using after() each 10 milliseconds
|
||||
self.after(10,self.emulatorLoop)
|
||||
self.after(100,self.emulatorLoop)
|
||||
|
||||
def stopEmulator(self):
|
||||
if self.emu is not None:
|
||||
|
|
@ -164,7 +164,7 @@ class KnittingApp(Tkinter.Tk):
|
|||
|
||||
track0file.write(t0dat)
|
||||
track1file.write(t1dat)
|
||||
self.msg.showInfo('Stored file to tracks ' + trackFile1 + ' and ' + trackFile2 + ' in config.imgdir')
|
||||
self.msg.showInfo('Stored file to tracks ' + trackFile1 + ' and ' + trackFile2 + ' in ' + self.config.imgdir)
|
||||
except Exception as e:
|
||||
self.msg.showError(str(e))
|
||||
finally:
|
||||
|
|
|
|||
|
|
@ -23,7 +23,7 @@ import Image
|
|||
import array
|
||||
|
||||
# import convenience functions from brother module
|
||||
from brother import roundeven, roundfour, roundeight, nibblesPerRow, bytesPerPattern, bytesForMemo
|
||||
from brother import roundeven, roundfour, roundeight, nibblesPerRow, bytesPerPattern, bytesForMemo, methodWithPointers
|
||||
|
||||
TheImage = None
|
||||
|
||||
|
|
@ -103,9 +103,9 @@ class PatternInserter:
|
|||
for r in range(height):
|
||||
row = [] # we'll chunk in bits and then put em into nibbles
|
||||
for s in range(width):
|
||||
x = s if bf.machineFormat == 'FirstLady' else width-s-1
|
||||
x = s if methodWithPointers else width-s-1
|
||||
value = TheImage.getpixel((x,height-r-1))
|
||||
isBlack = (value == 0) if bf.machineFormat == 'FirstLady' else (value != 0)
|
||||
isBlack = (value == 0) if methodWithPointers else (value != 0)
|
||||
if (isBlack):
|
||||
row.append(1)
|
||||
else:
|
||||
|
|
|
|||
Loading…
Reference in a new issue