Thanks for the responses (thanks Patrick), but something is still wrong. I tried out the GD PCT200 drivers (the original and the hacked too), but the memory card doesn't work. I set the trace property to 8 and write the output of the GetAnyCard.bat into two files (CPUDebug.txt, MemoryDebug.txt). I attached these files, maybe they can help. With the memory card the GetAnyCard.bat starts normally, but then somewhere it stops (hangs) and the reader's led lights in green color. I will search some technical information about the memory card. Regards Gábor
------------------------------------------------------------ Starting demo... ------------------------------------------------------------ start use case: get already inserted card or a new card [DEBUG ] opencard.core.service.SmartCard.getRegistryEntry --- message tag OpenCard.terminals = com.gieseckedevrient.opencard.terminal.GDCardTerminalFactory|ifd_1|PCT200|0 --- thread Thread[main,5,main] --- source class opencard.core.service.SmartCard [DEBUG ] opencard.core.terminal.CardTerminal.<init> --- message (ifd_1, PCT200, 0) --- thread Thread[main,5,main] --- source class opencard.core.terminal.CardTerminal [DEBUG ] opencard.core.event.EventGenerator.updateTerminals --- message new pollable Terminal = com.gieseckedevrient.opencard.terminal.PCT200CardTerminal@206aae + name ifd_1 + type PCT200 + addr 0 --- thread Thread[main,5,main] --- source class opencard.core.event.EventGenerator [DEBUG ] com.gieseckedevrient.opencard.terminal.PCT200CardTerminal.cardInserted --- message slotID 0, ) --- thread Thread[main,5,main] --- source com.gieseckedevrient.opencard.terminal.PCT200CardTerminal@206aae + name ifd_1 + type PCT200 + addr 0 [DEBUG ] opencard.core.event.EventGenerator.updateCards --- message card inserted slotID = 0 --- thread Thread[main,5,main] --- source class opencard.core.event.EventGenerator [DEBUG ] opencard.core.service.CardServiceRegistry.<init> --- message instantiating --- thread Thread[main,5,main] --- source class opencard.core.service.CardServiceRegistry [DEBUG ] opencard.core.service.SmartCard.getRegistryEntry --- message tag OpenCard.services = opencard.opt.util.PassThruCardServiceFactory --- thread Thread[main,5,main] --- source class opencard.core.service.SmartCard [DEBUG ] opencard.core.service.CardServiceFactory.<init> --- message instantiating --- thread Thread[main,5,main] --- source class opencard.core.service.CardServiceFactory [DEBUG ] opencard.opt.service.OCF11CardServiceFactory.<init> --- message instantiating --- thread Thread[main,5,main] --- source class opencard.opt.service.OCF11CardServiceFactory [DEBUG ] opencard.core.service.CardServiceRegistry.add --- message opencard.opt.util.PassThruCardServiceFactory@206f9c --- thread Thread[main,5,main] --- source opencard.core.service.CardServiceRegistry@206f7b [DEBUG ] opencard.core.service.SmartCard.<start> --- message finished --- thread Thread[main,5,main] --- source class opencard.core.service.SmartCard [DEBUG ] opencard.core.service.SmartCard.waitForCard --- message passing request opencard.core.service.CardRequest@207049 ANYCARD to CardServiceRegistry --- thread Thread[main,5,main] --- source class opencard.core.service.SmartCard [DEBUG ] opencard.core.service.CardWaiter.<init> --- message Request: opencard.core.service.CardRequest@207049 ANYCARD --- thread Thread[main,5,main] --- source class opencard.core.service.CardWaiter [DEBUG ] opencard.core.service.CardWaiter.cardInserted --- message CTEvent: opencard.core.event.CardTerminalEvent[source=com.gieseckedevrient.opencard.terminal.PCT200CardTerminal@206aae + name ifd_1 + type PCT200 + addr 0] ---source com.gieseckedevrient.opencard.terminal.PCT200CardTerminal@206aae + name ifd_1 + type PCT200 + addr 0 ---id 1 card inserted in slot 0 terminal com.gieseckedevrient.opencard.terminal.PCT200CardTerminal@206aae + name ifd_1 + type PCT200 + addr 0 --- thread Thread[main,5,main] --- source class opencard.core.service.CardWaiter [DEBUG ] opencard.core.service.CardServiceRegistry.getSmartCard --- message CTEvent opencard.core.event.CardTerminalEvent[source=com.gieseckedevrient.opencard.terminal.PCT200CardTerminal@206aae + name ifd_1 + type PCT200 + addr 0] ---source com.gieseckedevrient.opencard.terminal.PCT200CardTerminal@206aae + name ifd_1 + type PCT200 + addr 0 ---id 1 card inserted in slot 0 terminal com.gieseckedevrient.opencard.terminal.PCT200CardTerminal@206aae + name ifd_1 + type PCT200 + addr 0 --- thread Thread[main,5,main] --- source opencard.core.service.CardServiceRegistry@206f7b++ registered factory opencard.opt.util.PassThruCardServiceFactory@206f9c [DEBUG ] com.gieseckedevrient.opencard.terminal.PCT200CardTerminal.openSlotChannel --- message for slot #0 --- thread Thread[main,5,main] --- source com.gieseckedevrient.opencard.terminal.PCT200CardTerminal@206aae + name ifd_1 + type PCT200 + addr 0 [DEBUG ] com.gieseckedevrient.opencard.terminal.PCT200CardTerminal.openSlotChannel --- message new SlotChannel is opencard.core.terminal.SlotChannel@207353 + state open --- thread Thread[main,5,main] --- source com.gieseckedevrient.opencard.terminal.PCT200CardTerminal@206aae + name ifd_1 + type PCT200 + addr 0 [DEBUG ] opencard.core.service.CardServiceRegistry.allocateCardServiceScheduler --- message instantiating CardServiceScheduler --- thread Thread[main,5,main] --- source opencard.core.service.CardServiceRegistry@206f7b++ registered factory opencard.opt.util.PassThruCardServiceFactory@206f9c [DEBUG ] opencard.core.service.CardServiceScheduler.<init> --- message slotChannel opencard.core.terminal.SlotChannel@207353 + state open --- thread Thread[main,5,main] --- source class opencard.core.service.CardServiceScheduler [DEBUG ] opencard.core.service.CardChannel.<init> --- message (opencard.core.terminal.SlotChannel@207353 + state open) --- thread Thread[main,5,main] --- source class opencard.core.service.CardChannel [DEBUG ] opencard.core.service.CardServiceRegistry.getSmartCard --- message using CardServiceScheduler opencard.core.service.CardServiceScheduler@20739f, is alive --- thread Thread[main,5,main] --- source opencard.core.service.CardServiceRegistry@206f7b++ registered factory opencard.opt.util.PassThruCardServiceFactory@206f9c [DEBUG ] opencard.core.service.CardServiceScheduler.createSmartCard --- message creating SmartCard --- thread Thread[main,5,main] --- source opencard.core.service.CardServiceScheduler@20739f, is alive [DEBUG ] opencard.core.service.SmartCard.<init> --- message scheduler opencard.core.service.CardServiceScheduler@20739f, is alive, cid opencard.core.terminal.CardID@207322 ATR: 3B B7 11 00 81 31 90 43 A5 17 0C D4 17 24 10 8C --- thread Thread[main,5,main] --- source class opencard.core.service.SmartCard [DEBUG ] opencard.core.service.CardWaiter.waitForCard --- message SmartCard obtained: opencard.core.service.SmartCard@207461 --- thread Thread[main,5,main] --- source class opencard.core.service.CardWaiter got a SmartCard object! [DEBUG ] opencard.core.service.SmartCard.<shutdown> --- message shutdown OpenCard --- thread Thread[main,5,main] --- source class opencard.core.service.SmartCard [DEBUG ] opencard.core.service.SmartCard.close --- message SmartCard closing --- thread Thread[main,5,main] --- source opencard.core.service.SmartCard@207461 [DEBUG ] opencard.core.service.CardServiceScheduler.releaseSmartCard --- message releasing opencard.core.service.SmartCard@207461 --- thread Thread[main,5,main] --- source opencard.core.service.CardServiceScheduler@20739f, is alive [INFO ] opencard.core.service.CardServiceScheduler.releaseSmartCard --- message no more SmartCards, closing down --- thread Thread[main,5,main] --- source opencard.core.service.CardServiceScheduler@20739f, is alive [DEBUG ] opencard.core.service.CardServiceScheduler.closeDown --- message closing down scheduler --- thread Thread[main,5,main] --- source opencard.core.service.CardServiceScheduler@20739f, is alive [DEBUG ] opencard.core.service.CardChannel.closeFinal --- message closing for good --- thread Thread[main,5,main] --- source opencard.core.service.CardChannel@2073cf, not open, not jammed [DEBUG ] opencard.core.service.CardChannel.close --- message CardChannel closed --- thread Thread[main,5,main] --- source opencard.core.service.CardChannel@2073cf, not open, not jammed [DEBUG ] opencard.core.terminal.SlotChannel.close --- message closing channel --- thread Thread[main,5,main] --- source opencard.core.terminal.SlotChannel@207353 + state open [DEBUG ] opencard.core.service.SmartCard.close --- message SmartCard closing --- thread Thread[main,5,main] --- source opencard.core.service.SmartCard@207461 [DEBUG ] opencard.core.service.CardServiceScheduler.releaseSmartCard --- message releasing opencard.core.service.SmartCard@207461 --- thread Thread[main,5,main] --- source opencard.core.service.CardServiceScheduler@20739f, not alive [INFO ] opencard.core.service.CardServiceScheduler.releaseSmartCard --- message no more SmartCards, closing down --- thread Thread[main,5,main] --- source opencard.core.service.CardServiceScheduler@20739f, not alive [DEBUG ] opencard.core.service.CardServiceScheduler.closeDown --- message closing down scheduler --- thread Thread[main,5,main] --- source opencard.core.service.CardServiceScheduler@20739f, not alive [DEBUG ] opencard.core.terminal.CardTerminalRegistry.remove --- message closing com.gieseckedevrient.opencard.terminal.PCT200CardTerminal@206aae + name ifd_1 + type PCT200 + addr 0 --- thread Thread[main,5,main] --- source class opencard.core.terminal.CardTerminalRegistry [DEBUG ] opencard.core.event.EventGenerator.updateTerminals --- message remove pollable Terminal = com.gieseckedevrient.opencard.terminal.PCT200CardTerminal@206aae + name ifd_1 + type PCT200 + addr 0 --- thread Thread[main,5,main] --- source class opencard.core.event.EventGenerator [DEBUG ] opencard.core.terminal.CardTerminalRegistry.remove --- message removing com.gieseckedevrient.opencard.terminal.PCT200CardTerminal@206aae + name ifd_1 + type PCT200 + addr 0 --- thread Thread[main,5,main] --- source class opencard.core.terminal.CardTerminalRegistry [DEBUG ] opencard.core.terminal.CardTerminalRegistry.remove --- message status true --- thread Thread[main,5,main] --- source class opencard.core.terminal.CardTerminalRegistry [DEBUG ] opencard.core.service.CardServiceRegistry.remove --- message opencard.opt.util.PassThruCardServiceFactory@206f9c --- thread Thread[main,5,main] --- source opencard.core.service.CardServiceRegistry@206f7b++ registered factory opencard.opt.util.PassThruCardServiceFactory@206f9c
------------------------------------------------------------ Starting demo... ------------------------------------------------------------ start use case: get already inserted card or a new card [DEBUG ] opencard.core.service.SmartCard.getRegistryEntry --- message tag OpenCard.terminals = com.gieseckedevrient.opencard.terminal.GDCardTerminalFactory|ifd_1|PCT200|0 --- thread Thread[main,5,main] --- source class opencard.core.service.SmartCard [DEBUG ] opencard.core.terminal.CardTerminal.<init> --- message (ifd_1, PCT200, 0) --- thread Thread[main,5,main] --- source class opencard.core.terminal.CardTerminal [DEBUG ] opencard.core.event.EventGenerator.updateTerminals --- message new pollable Terminal = com.gieseckedevrient.opencard.terminal.PCT200CardTerminal@206aae + name ifd_1 + type PCT200 + addr 0 --- thread Thread[main,5,main] --- source class opencard.core.event.EventGenerator [DEBUG ] com.gieseckedevrient.opencard.terminal.PCT200CardTerminal.cardInserted --- message slotID 0, ) --- thread Thread[main,5,main] --- source com.gieseckedevrient.opencard.terminal.PCT200CardTerminal@206aae + name ifd_1 + type PCT200 + addr 0 [DEBUG ] opencard.core.event.EventGenerator.updateCards --- message card inserted slotID = 0 --- thread Thread[main,5,main] --- source class opencard.core.event.EventGenerator [DEBUG ] opencard.core.service.CardServiceRegistry.<init> --- message instantiating --- thread Thread[main,5,main] --- source class opencard.core.service.CardServiceRegistry [DEBUG ] opencard.core.service.SmartCard.getRegistryEntry --- message tag OpenCard.services = opencard.opt.util.PassThruCardServiceFactory --- thread Thread[main,5,main] --- source class opencard.core.service.SmartCard [DEBUG ] opencard.core.service.CardServiceFactory.<init> --- message instantiating --- thread Thread[main,5,main] --- source class opencard.core.service.CardServiceFactory [DEBUG ] opencard.opt.service.OCF11CardServiceFactory.<init> --- message instantiating --- thread Thread[main,5,main] --- source class opencard.opt.service.OCF11CardServiceFactory [DEBUG ] opencard.core.service.CardServiceRegistry.add --- message opencard.opt.util.PassThruCardServiceFactory@206f9d --- thread Thread[main,5,main] --- source opencard.core.service.CardServiceRegistry@206f7c [DEBUG ] opencard.core.service.SmartCard.<start> --- message finished --- thread Thread[main,5,main] --- source class opencard.core.service.SmartCard [DEBUG ] opencard.core.service.SmartCard.waitForCard --- message passing request opencard.core.service.CardRequest@207049 ANYCARD to CardServiceRegistry --- thread Thread[main,5,main] --- source class opencard.core.service.SmartCard [DEBUG ] opencard.core.service.CardWaiter.<init> --- message Request: opencard.core.service.CardRequest@207049 ANYCARD --- thread Thread[main,5,main] --- source class opencard.core.service.CardWaiter [DEBUG ] opencard.core.service.CardWaiter.cardInserted --- message CTEvent: opencard.core.event.CardTerminalEvent[source=com.gieseckedevrient.opencard.terminal.PCT200CardTerminal@206aae + name ifd_1 + type PCT200 + addr 0] ---source com.gieseckedevrient.opencard.terminal.PCT200CardTerminal@206aae + name ifd_1 + type PCT200 + addr 0 ---id 1 card inserted in slot 0 terminal com.gieseckedevrient.opencard.terminal.PCT200CardTerminal@206aae + name ifd_1 + type PCT200 + addr 0 --- thread Thread[main,5,main] --- source class opencard.core.service.CardWaiter [DEBUG ] opencard.core.service.CardServiceRegistry.getSmartCard --- message CTEvent opencard.core.event.CardTerminalEvent[source=com.gieseckedevrient.opencard.terminal.PCT200CardTerminal@206aae + name ifd_1 + type PCT200 + addr 0] ---source com.gieseckedevrient.opencard.terminal.PCT200CardTerminal@206aae + name ifd_1 + type PCT200 + addr 0 ---id 1 card inserted in slot 0 terminal com.gieseckedevrient.opencard.terminal.PCT200CardTerminal@206aae + name ifd_1 + type PCT200 + addr 0 --- thread Thread[main,5,main] --- source opencard.core.service.CardServiceRegistry@206f7c++ registered factory opencard.opt.util.PassThruCardServiceFactory@206f9d
