diff --git a/COBOL/DOGEDEET b/COBOL/DOGEDEET index d6da55f..cf66781 100644 --- a/COBOL/DOGEDEET +++ b/COBOL/DOGEDEET @@ -11,14 +11,17 @@ * * 08/30/2020 * License GPL v3 - */////////////////////////////////////////////////////////////// + */////////////////////////////////////////////////////////////// + IDENTIFICATION DIVISION. PROGRAM-ID. DOGEDEET. AUTHOR. SOLDIER OF FORTRAN. INSTALLATION. DOGE BANK. DATE-WRITTEN. 08/30/20. SECURITY. CONFIDENTIAL. + ENVIRONMENT DIVISION. + DATA DIVISION. WORKING-STORAGE SECTION. * VSAM Record Layout @@ -77,9 +80,10 @@ * LINKAGE SECTION. 01 DFHCOMMAREA PIC X(10). + PROCEDURE DIVISION. DOGE-MAIN. - * + IF EIBCALEN > ZERO THEN MOVE DFHCOMMAREA TO DOGECOMMS-AREA. @@ -133,18 +137,19 @@ RETURN TRANSID('DEET') COMMAREA(DOGECOMMS-AREA) END-EXEC. - DOGE-EXIT. + + DOGE-EXIT. GOBACK. - * + DOGE-WTO. EXEC CICS WRITE OPERATOR TEXT(WTO-MESSAGE) END-EXEC. MOVE SPACES TO WTO-MESSAGE. - * Start by checking where we are or if we have a valid key - DOGE-START-BROWSE. + DOGE-START-BROWSE. + * Start by checking where we are or if we have a valid key EXEC CICS STARTBR FILE('DOGEVSAM') RIDFLD(RECORD-ID) @@ -209,6 +214,7 @@ MOVE SPACES TO WTO-MESSAGE. FILL-SCREEN-DATA. + MOVE TDATE TO KEYO. MOVE DDATE TO DATEO. IF TAMT-SIGN-NEGATIVE THEN @@ -231,10 +237,8 @@ MOVE TAMT-SIGN TO DSIGN. * CONVERT-DATE. - * * Converts Linux EPOCH to CICS Absolute Time * and places it in DISPLAY-TRAN:DDATE as MM/DD/YYYY - * MOVE NUM-DATE TO TEMP-DATE. MULTIPLY 1000 BY TEMP-DATE. ADD SINCE-EPOCH TO TEMP-DATE. @@ -255,8 +259,9 @@ INTO(DOGEDT1I) ASIS END-EXEC. + PARSE-KEY. - * Do we want to leave this screen? + * Do we want to leave this screen? IF OPTIONI EQUAL TO 'T' OR OPTIONI EQUAL TO 't' - OR OPTIONI EQUAL TO 'M' OR OPTIONI EQUAL TO 'm' MOVE 'Opening Transaction History' TO WTO-MESSAGE @@ -291,4 +296,3 @@ MOVE SPACES TO WTO-MESSAGE. * Shush compiler warnings MOVE SPACES TO WTO-MESSAGE. - diff --git a/COBOL/DOGEMAIN b/COBOL/DOGEMAIN index 2244e9e..32766ca 100644 --- a/COBOL/DOGEMAIN +++ b/COBOL/DOGEMAIN @@ -9,13 +9,16 @@ * 08/30/2020 * License GPL v3 */////////////////////////////////////////////////////////////// + IDENTIFICATION DIVISION. PROGRAM-ID. DOGECOIN. AUTHOR. SOLDIER OF FORTRAN. INSTALLATION. DOGE BANK. DATE-WRITTEN. 08/30/20. SECURITY. CONFIDENTIAL. + ENVIRONMENT DIVISION. + DATA DIVISION. WORKING-STORAGE SECTION. * To Create outgoing commands @@ -77,16 +80,16 @@ COPY DOGEMN. COPY DFHAID. COPY DFHBMSCA. + * LINKAGE SECTION. - * 01 DFHCOMMAREA PIC X(10). - * + PROCEDURE DIVISION. 00000-MAIN. - * + IF EIBCALEN > ZERO THEN MOVE DFHCOMMAREA TO DOGECOMMS-AREA. - * + IF EIBCALEN EQUAL TO ZERO OR SUCH-DOGE MOVE 'STARTING DOGE CICS.' TO WTO-MESSAGE @@ -121,9 +124,10 @@ RETURN TRANSID('DOGE') COMMAREA(DOGECOMMS-AREA) END-EXEC. + DOGE-EXIT. GOBACK. - * + RECEIVE-OPTION. * Get the option the user enters @@ -136,7 +140,7 @@ END-EXEC. PARSE-OPTION. - * Parse the user entry + * Parse the user entry IF OPTIONI EQUAL TO 'T' OR OPTIONI EQUAL TO 'M' MOVE 'Opening Transaction History' TO WTO-MESSAGE PERFORM DOGE-WTO @@ -167,18 +171,18 @@ MOVE SPACES TO WTO-MESSAGE. DOGE-MAIN-SCREEN. - * Show the main doge screen + * Show the main doge screen MOVE 'Sending Doge CICS Main Screen.' TO WTO-MESSAGE. PERFORM DOGE-WTO. EXEC CICS STARTBR FILE('DOGEVSAM') RIDFLD(START-RECORD-ID) END-EXEC. - * First is our dummy 'eyecatcher' records at the bottom + * First is our dummy 'eyecatcher' records at the bottom EXEC CICS READPREV FILE('DOGEVSAM') RIDFLD(START-RECORD-ID) INTO(TRANSACTION) END-EXEC. - * Next is our last record + * Next is our last record EXEC CICS READPREV FILE('DOGEVSAM') RIDFLD(START-RECORD-ID) INTO(TRANSACTION) @@ -188,7 +192,7 @@ PERFORM CONVERT-AMOUNT-TO-DISPLAY. MOVE RECENT-COLOR TO RECNT2C. MOVE DISPLAY-TRAN TO RECNT2O. - * Then our second to last record + * Then our second to last record EXEC CICS READPREV FILE('DOGEVSAM') RIDFLD(START-RECORD-ID) INTO(TRANSACTION) @@ -197,28 +201,28 @@ MOVE TLABEL TO DLABEL. PERFORM CONVERT-AMOUNT-TO-DISPLAY. MOVE RECENT-COLOR TO RECNT1C. - * If theres only one historical record move it up + * If theres only one historical record move it up IF TDATE = 0000000002 MOVE RECNT2O TO RECNT1O MOVE SPACES TO RECNT1O ELSE MOVE DISPLAY-TRAN TO RECNT1O. - * Now we get the current ammount - * First we get reset the browse + * Now we get the current ammount + * First we get reset the browse MOVE 0000000001 TO START-RECORD-ID. EXEC CICS RESETBR FILE('DOGEVSAM') RIDFLD(START-RECORD-ID) END-EXEC. - * Then read the record + * Then read the record EXEC CICS READNEXT FILE('DOGEVSAM') RIDFLD(START-RECORD-ID) INTO(TRANSACTION) END-EXEC. - * Convert it and put on the map + * Convert it and put on the map PERFORM CONVERT-AMOUNT-TO-DISPLAY. MOVE THE-AMOUNT TO AVAILABLE-AMOUNT. MOVE THE-AMOUNT TO AVAILO. - * Get the next record + * Get the next record EXEC CICS READNEXT FILE('DOGEVSAM') RIDFLD(START-RECORD-ID) INTO(TRANSACTION) @@ -227,7 +231,7 @@ MOVE THE-AMOUNT TO PENDNGO. ADD AVAILABLE-AMOUNT TO THE-AMOUNT. MOVE THE-AMOUNT TO TOTALO. - * Aaaaaand were done show the map now + * And were done show the map now EXEC CICS ENDBR FILE('DOGEVSAM') @@ -238,7 +242,7 @@ MAPSET('DOGEMN') ERASE END-EXEC. - * + CONVERT-AMOUNT-TO-DISPLAY. * Converts the number from VSAM to ##,###,###.######## MOVE DFHGREEN TO RECENT-COLOR. @@ -249,12 +253,10 @@ SUBTRACT THE-AMOUNT FROM ZERO GIVING THE-AMOUNT. MOVE THE-AMOUNT TO DAMOUNT. MOVE TAMT-SIGN TO DSIGN. - * + CONVERT-DATE. - * * Converts Linux EPOCH to CICS Absolute Time * and places it in DISPLAY-TRAN:DDATE as MM/DD/YYYY - * MOVE NUM-DATE TO TEMP-DATE. MULTIPLY 1000 BY TEMP-DATE. ADD SINCE-EPOCH TO TEMP-DATE. @@ -262,7 +264,7 @@ DATESEP('/') MMDDYYYY(DDATE) END-EXEC. - * + DOGE-WTO. EXEC CICS WRITE OPERATOR TEXT(WTO-MESSAGE) diff --git a/COBOL/DOGEQUIT b/COBOL/DOGEQUIT index f8fbae0..32b83c9 100644 --- a/COBOL/DOGEQUIT +++ b/COBOL/DOGEQUIT @@ -9,13 +9,16 @@ * 08/30/2020 * License GPL v3 */////////////////////////////////////////////////////////////// + IDENTIFICATION DIVISION. PROGRAM-ID. DOGEQUIT. AUTHOR. SOLDIER OF FORTRAN. INSTALLATION. DOGE BANK. DATE-WRITTEN. 08/30/20. SECURITY. CONFIDENTIAL. + ENVIRONMENT DIVISION. + DATA DIVISION. WORKING-STORAGE SECTION. 01 WTO-MESSAGE PIC X(38) VALUE SPACES. @@ -32,7 +35,7 @@ 10 FACE09 PIC X(5) VALUE '(*_*)'. 10 FACE10 PIC X(5) VALUE '(^-^)'. 05 FACE-ARRAY REDEFINES FACES-LIST OCCURS 10 PIC X(05). - * + 01 EXIT-MSG. 10 COMMAND PIC X VALUE X'F5'. 10 WRITE-CONTROL PIC X VALUE X'C3'. @@ -67,6 +70,7 @@ 01 ISEED PIC S9(8) COMP. 01 FACE PIC S9(8) COMP. 01 GARBAGE PIC S9(8) COMP. + PROCEDURE DIVISION. * Preseed the random number generator MOVE EIBTIME TO ISEED. @@ -81,9 +85,10 @@ END-EXEC. EXEC CICS RETURN END-EXEC. + RANDOM-NUMBER SECTION. - * simple LCG algorithm (lifted from Boillot fortran book) - * Source: KICKS Kookbook + * simple LCG algorithm (lifted from Boillot fortran book) + * Source: KICKS Kookbook MULTIPLY ISEED BY IA GIVING ISEED. IF ISEED < 0 COMPUTE ISEED = -1 * ISEED. ADD IC, ISEED GIVING ISEED. @@ -93,9 +98,10 @@ DIVIDE FSEED BY FIM GIVING FIM. COMPUTE FSEED = 1000.0 * FIM. MOVE FSEED TO IRNDM. + RANDOM-NUMBER-EXIT. EXIT. - * + DOGE-WTO. EXEC CICS WRITE OPERATOR TEXT(WTO-MESSAGE) diff --git a/COBOL/DOGESEND b/COBOL/DOGESEND index d91cf50..5902684 100644 --- a/COBOL/DOGESEND +++ b/COBOL/DOGESEND @@ -12,13 +12,16 @@ * 08/30/2020 * License GPL v3 */////////////////////////////////////////////////////////////// + IDENTIFICATION DIVISION. PROGRAM-ID. DOGESEND. AUTHOR. SOLDIER OF FORTRAN. INSTALLATION. DOGE BANK. DATE-WRITTEN. 08/30/20. SECURITY. CONFIDENTIAL. + ENVIRONMENT DIVISION. + DATA DIVISION. WORKING-STORAGE SECTION. 77 SYSOUT-TOKEN PIC X(8) VALUE SPACES. @@ -34,13 +37,14 @@ 05 TEXT-MESSAGE PIC X(7)B VALUE 'SENDING'. 05 TEXT-AMOUNT PIC X(17)B VALUE '00000000.00000000'. 05 TEXT-CURRENCY PIC X(4) VALUE 'DOGE'. + * COPY DOGESN. COPY DFHAID. COPY DFHBMSCA. + * LINKAGE SECTION. - * 01 DFHCOMMAREA PIC X(10). - * + PROCEDURE DIVISION. DOGE-MAIN. * Main procedure run @@ -74,19 +78,20 @@ TEXT(WTO-MESSAGE) END-EXEC. MOVE SPACES TO WTO-MESSAGE. + RECEIVE-INPUT. * Get the option the user enters - - * MOVE 'DSND - Getting Input from User.' TO WTO-MESSAGE. - * PERFORM DOGE-WTO. + * MOVE 'DSND - Getting Input from User.' TO WTO-MESSAGE. + * PERFORM DOGE-WTO. EXEC CICS RECEIVE MAP('DOGESN1') MAPSET('DOGESN') INTO(DOGESN1I) ASIS END-EXEC. + PARSE-INPUT. - * Do we want to leave this screen? + * Do we want to leave this screen? IF OPTIONI EQUAL TO 'T' OR OPTIONI EQUAL TO 't' - OR OPTIONI EQUAL TO 'M' OR OPTIONI EQUAL TO 'm' MOVE 'Opening Transaction History' TO WTO-MESSAGE @@ -110,19 +115,22 @@ ELSE PERFORM MOVE-SOME-DOGE. MOVE SPACES TO WTO-MESSAGE. + MOVE-SOME-DOGE. - * Ok, now to send some funds + * Ok, now to send some funds MOVE PAYTOI TO TO-ADDRESS. MOVE AMOUNTI TO SEND-AMOUNT. MOVE 'Sending to address' TO WTO-MESSAGE. PERFORM DOGE-WTO. MOVE TO-ADDRESS TO WTO-MESSAGE. PERFORM DOGE-WTO. - * MOVE 'Amount:' TO WTO-MESSAGE. - * PERFORM DOGE-WTO. - * MOVE SEND-AMOUNT TO WTO-MESSAGE. - * PERFORM DOGE-WTO. - * Just some simple check incase a person hits enter + + * MOVE 'Amount:' TO WTO-MESSAGE. + * PERFORM DOGE-WTO. + * MOVE SEND-AMOUNT TO WTO-MESSAGE. + * PERFORM DOGE-WTO. + * Just some simple check incase a person hits enter + IF TO-ADDRESS EQUAL TO 'Enter address here' MOVE DFHREVRS TO PAYTOH MOVE 'Invalid DOGE Coin address' TO SNDMSGO diff --git a/COBOL/DOGETRAN b/COBOL/DOGETRAN index dfdec3b..a083464 100644 --- a/COBOL/DOGETRAN +++ b/COBOL/DOGETRAN @@ -9,13 +9,16 @@ * 08/30/2020 * License GPL v3 */////////////////////////////////////////////////////////////// + IDENTIFICATION DIVISION. PROGRAM-ID. DOGETRAN. AUTHOR. SOLDIER OF FORTRAN. INSTALLATION. DOGE BANK. DATE-WRITTEN. 08/30/20. SECURITY. CONFIDENTIAL. + ENVIRONMENT DIVISION. + DATA DIVISION. WORKING-STORAGE SECTION. * VSAM Record Layout @@ -58,13 +61,13 @@ COPY DOGETR. COPY DFHAID. COPY DFHBMSCA. + * LINKAGE SECTION. - * 01 DFHCOMMAREA PIC X(10). - * + PROCEDURE DIVISION. DOGE-MAIN. - * + IF EIBCALEN > ZERO THEN MOVE DFHCOMMAREA TO DOGECOMMS-AREA. @@ -112,14 +115,15 @@ RETURN TRANSID('DTRN') COMMAREA(DOGECOMMS-AREA) END-EXEC. + DOGE-EXIT. GOBACK. - * + LET-ER-RIP. - * EXEC CICS STARTBR FILE('DOGEVSAM') RIDFLD(START-RECORD-ID) - END-EXEC. + END-EXEC. + BACK-IT-UP. * Yes, this is a hack but i was too stupid to use READPREV MOVE 'PF7 PREV -' TO PREVO @@ -129,20 +133,23 @@ INTO(TRANSACTION) END-EXEC ELSE - * MOVE 'BACK TO ONE' TO WTO-MESSAGE - * PERFORM DOGE-WTO + + * MOVE 'BACK TO ONE' TO WTO-MESSAGE + * PERFORM DOGE-WTO + MOVE SPACES TO PREVO. - * MOVE 'BACK THAT THANG UP' TO WTO-MESSAGE. - * PERFORM DOGE-WTO. - * This does nothing but the compiler complains ending on an IF + * MOVE 'BACK THAT THANG UP' TO WTO-MESSAGE. + * PERFORM DOGE-WTO. + * This does nothing but the compiler complains ending on an IF MOVE 0 TO RESPONSE-CODE. + DOGE-LIST-TRANSACTIONS. - * Skip the first record + * Skip the first record EXEC CICS READNEXT FILE('DOGEVSAM') RIDFLD(START-RECORD-ID) INTO(TRANSACTION) END-EXEC. - * Loop through and show 7 lines + * Loop through and show 7 lines PERFORM DISPLAY-TRANS VARYING LINE-NUMBER FROM 1 BY 1 UNTIL LINE-NUMBER IS EQUAL TO 8 OR DONE-RECORDS IS EQUAL TO 'DONE'. @@ -153,8 +160,9 @@ EXEC CICS ENDBR FILE('DOGEVSAM') END-EXEC. - * This does nothing but the compiler complains ending on an IF + * This does nothing but the compiler complains ending on an IF MOVE 0 TO RESPONSE-CODE. + CONVERT-AMOUNT-TO-DISPLAY. * Converts the number from VSAM to ##,###,###.######## MOVE DFHGREEN TO RECENT-COLOR. @@ -167,12 +175,10 @@ SUBTRACT THE-AMOUNT FROM ZERO GIVING THE-AMOUNT. MOVE THE-AMOUNT TO DAMOUNT. MOVE TAMT-SIGN TO DSIGN. - * + CONVERT-DATE. - * * Converts Linux EPOCH to CICS Absolute Time * and places it in DISPLAY-TRAN:DDATE as MM/DD/YYYY - * MOVE NUM-DATE TO TEMP-DATE. MULTIPLY 1000 BY TEMP-DATE. ADD SINCE-EPOCH TO TEMP-DATE. @@ -180,7 +186,7 @@ DATESEP('/') MMDDYYYY(DDATE) END-EXEC. - * + DOGE-WTO. EXEC CICS WRITE OPERATOR TEXT(WTO-MESSAGE) @@ -193,7 +199,7 @@ INTO(TRANSACTION) END-EXEC IF TDATE IS EQUAL TO '9999999999' - * We're done here + * We're done here MOVE 'DONE' TO DONE-RECORDS MOVE SPACES TO NEXTO MOVE 'PF7 PREV' TO PREVO @@ -202,7 +208,7 @@ PERFORM CONVERT-AMOUNT-TO-DISPLAY MOVE TLABEL TO DLABEL PERFORM FILL-ROWS-WITH-DATA. - * This does nothing but the compiler complains ending on an IF + * This does nothing but the compiler complains ending on an IF MOVE 0 TO RESPONSE-CODE. FILL-ROWS-WITH-DATA. @@ -275,12 +281,11 @@ MOVE RECENT-COLOR TO TRAN7SC MOVE DSIGN TO TRAN7SO MOVE THE-AMOUNT TO TRAN7AO. - * This does nothing but the compiler complains ending on an IF + * This does nothing but the compiler complains ending on an IF MOVE 0 TO RESPONSE-CODE. - * + RECEIVE-OPTION. * Get the option the user enters - MOVE 'DTRN - Getting Input from User.' TO WTO-MESSAGE. PERFORM DOGE-WTO. EXEC CICS @@ -290,7 +295,7 @@ END-EXEC. PARSE-OPTION. - * Parse the user entry + * Parse the user entry MOVE OPTIONI TO WTO-MESSAGE. PERFORM DOGE-WTO. IF OPTIONI EQUAL TO 'T' OR OPTIONI EQUAL TO 'M' diff --git a/PYTHON/dogedcams.py b/PYTHON/dogedcams.py index e43b7bc..3602a55 100755 --- a/PYTHON/dogedcams.py +++ b/PYTHON/dogedcams.py @@ -96,7 +96,6 @@ def generate_fake_records(number_of_records=100): def get_records(host='localhost', rpcUser=None, rpcPass=None, rpcPort=22555): ''' Gets DOGECOIN records from dogecoin RPC server ''' - try: with open(path.join(path.expanduser("~"), '.dogecoin', 'dogecoin.conf'), mode='r') as f: