;;;;
;;;(load "c:\\program files\\acl62\\music72.cl")
;;;
(load "c:\\program files\\acl62\\music71.cl")

;;;
;;; (キー 小節数) ex.(C 8)
;;;

(defun make-bars-1 (lst)
  (do ((key (first lst))
     (num (second lst))
     (w))
    ((< num 1) (list 'Key* key w))
   (push (list num
       (get-a-phrase-1-aux-pt-from-key key))
      w)
   (setf num (- num 1))))



(defun make-bars-2 (lst)
  (do ((key (first lst))
     (num (second lst))
     (w))
    ((< num 1) (list 'Key* key w))
   (push (list num
       (get-a-phrase-2-aux-pt-from-key key))
      w)
   (setf num (- num 1))))


(defun make-bars-3 (lst)
  (do ((key (first lst))
     (num (second lst))
    (w))
    ((< num 1) (list 'Key* key w))
   (push (list num
       (get-a-phrase-3-aux-pt-from-key key))
      w)
   (setf num (- num 1))))


(defun make-bars-4 (lst)
  (do ((key (first lst))
     (num (second lst))
     (w))
    ((< num 1) (list 'Key* key w))
   (push (list num
       (get-a-phrase-4-aux-pt-from-key key))
      w)
   (setf num (- num 1))))





;;;
;;; 対象のリスト((C 8) (F 8) (-A 6) (-D 6) (C 8))
;;;

(defun map-bars-1 (lst)
  (mapcar 'make-bars-1 lst))


(defun map-bars-2 (lst)
  (mapcar 'make-bars-2 lst))


(defun map-bars-3 (lst)
  (mapcar 'make-bars-3 lst))


(defun map-bars-4 (lst)
  (mapcar 'make-bars-4 lst))