// JOB // ASM *LIST **************************************************** * WRITE THE LYRICS OF '99 BOTTLES OF BEER' ON * THE 1132 PRINTER. * * WRITTEN BY STEVE KETCHAM 17 SEP 2006 FOR * WWW.99-BOTTLES-OF-BEER.NET * * THE 1130 HAS ONE 16-BIT ACCUMULATOR, A 16-BIT * ACCUMULATOR EXTENSION, AND THREE INDEX REGISTERS. * THIS PROGRAM HAS BEEN TESTED WITH THE SIMH 1130 * EMULATOR, RUNNING DISK MANAGEMENT SYSTEM VERSION 2 * MOD 12. **************************************************** * SET THE NUMBER OF BOTTLES TO 99. * BOTTL DC 99 LOOP COUNTER * * THESE CONSTANTS ARE USED DURING THE COURSE OF * THE MAIN LOOP. THE 1130 INSTRUCTION SET * REQUIRED LOADS FROM MENORY, NOT FROM THE * INSTRUCTION ITSELF. * ONE DC 1 LOOP DECREMENT TWO DC 2 TEST VALUE **************************************************** * MAIN PROGRAM START * * PROGRAM OUTPUT IS TO THE IBM 1132 PRINTER, A * VERY SLOW DEVICE. IT HAS THE ADVANTAGE OF * ACTUALLY USING EBCDIC CODING FOR ITS OUTPUT. * OTHER DEVICES USED OTHER CHARACTER ENCODINGS, * AND WOULD REQUIRE EXPLICIT CONVERSION. * START EQU * PROGRAM START ADDRESS * * SKIP TO THE TOP OF THE NEXT PAGE ON THE PRINTER. * PRNT1 IS THE DMS PRINT SUBROUTINE. IT REQUIRES * 1 OR 3 ARGUMENTS, DEPENDING ON FUNCTION. * LIBF PRNT1 CALL PRINT FOR CONTROL DC /3100 SKIP TO CHANNEL 1 * * BSI - BRANCH AND STORE INSTRUCTION REGISTER - * IS A SUBROUTINE CALL. YOU HAVE TO TEST EACH * PRINT CALL FOR COMPLETION. * BSI L PRTST